On 15/08/2011 09:43, Ludo Brands wrote:
The attached patch creates a shared imagelist

Please test and see what is the gain

PS: this is a quick patch just for test. more cleanup can be done

Luiz

Thanks, I'll test this later. As mentioned in my previous message, the
memory used by the gutter symbols seems not to be growing in different
unload/load cycles. My guess is that this will save 3M in the extreme test
case we are using. The small chuncks are scattered over the heap which could
make it difficult for the memory manager to release the memory to the OS.
The impact could be bigger.


Yep, that should pretty much be the case (should...)

The problem in Lazarus (at least SynEdit, but probably others too) is a lot of memory constantly freed and released. also SynEdit allocates tenthousands of small bits (e.g a string per line).

It's a dream of mine to optimize that. eg. to have synedit allocate a bigger chunk, and have synedit use it knowlege about lifetime of data, to organize it better. But there is just to much other important work...


--
_______________________________________________
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to