[fpc-devel] Compiler bottlenecks]

Florian Klaempfl florian at freepascal.org
Thu Jul 15 09:30:32 CEST 2010


Michael Van Canneyt schrieb:
> 
> 
> On Thu, 15 Jul 2010, Florian Klaempfl wrote:
> 
>> Jonas Maebe schrieb:
>>> Unless you are doing a cold compile, the main bottlenecks in the
>>> compiler are the memory manager (mostly the allocation of memory,
>>> freeing is faster), zero-filling new class instances (and partially
>>> resetting the register allocator) and tobject.initinstance.
>>
>> I wonder if zeroing memory blocks (so when allocating them we know
>> already that they contain zeros) and preparing new register allocators
>> in a helper thread could improve this.
> 
> But if a memory block is freed and put back on the heap, you need to
> zero it again, so where is the gain in that ?

While it's in the freelist, the helper task zeros it so when it is
allocated again, it needs no zeroing again.



More information about the fpc-devel mailing list