[fpc-devel] x86_64 Optimizer Overhaul
Jonas Maebe
jonas at freepascal.org
Sat Dec 15 21:27:45 CET 2018
On 15/12/18 21:04, Ben Grasset wrote:
> On Sat, Dec 15, 2018 at 2:43 PM Jonas Maebe <jonas at freepascal.org
> <mailto:jonas at freepascal.org>> wrote:
>
> That is incorrect.
>
> I didn't mean that it doesn't *care* about being fast, but more that it
> will not necessarily use more memory in all cases that it might result
> in a speed gain, and generally is more concerned with a "balanced"
> approach, which is what I've always heard to be the case. Is that really
> not true at all?
It makes use of thread-local heaps and pooling for small allocation
sizes, both of which are aimed at increasing speed. For blocks that are
too large for the pools, there are no particular trade-offs afaik (it's
just a linked list of free blocks per thread that can be reused). It's
probably true that it will have a smaller memory footprint than
something like jemalloc, at least as long as memory fragmentation (which
jemalloc is very good at avoiding) doesn't take the upper hand.
Jonas
More information about the fpc-devel
mailing list