Begin forwarded message:
Date: Tue, 6 Oct 2009 13:00:28 +1100 From: Lex Trotman elextr@gmail.com To: nick.treleaven@btinternet.com Subject: Geany Size Data
Hi Nick,
I saw your question on the scintilla list and thought I'd drop you some data for Geany.
On my x86-64 system I get a total of 1.6M code hardly worth making smaller compared to the 11M of shared libraries and 9 M of data giving a total resident set size of 21M for an empty Geany (and even with all of Geany's src directory open it only has a resident set of 47M).
What is interesting is another 120M of swapped virtual address space. I guess most of this is Gnome and X, but otherwise what it is I'm not sure. Still if its not part of Geany's resident set it doesn't matter IMHO, and certainly we can't do much about it.
On a 32 bit machine I get 1.4M code and 9M shared and 8M data for a total resident set of 17M for an empty Geany and 32M with all Geany src.
Interestingly only 10M of extra virtual memory is used on this system (which is XFCE not Gnome).
I'll only talk further about the 32 bit numbers because the 64 bit ones are minimal compared to the likely available memory on a 64 bit system.
You can't do much with the shared libraries, so the biggest footprint is the 8-9M of data used by an empty Geany. Thats probably a more profitable target than the code of the Lexers. Of course if a significant part of the memory is data for the Lexers then maybe its worth not loading them :-) but I am not sure how to tell other than patching Geany/Scintilla to not initialise some lexers and see what changes.
My prime suspect though would be Scintilla itself and the resources it uses, which isn't in Geany's control.
Still, I'm not convinced that its worth worrying about any of it when loading the whole of Geany source is possible on a 400Mhz Celeron machine with 192M memory!!!
I'd have said that it is more important to support loadable lexers and filetypes so that new languages don't have to be upstreamed to scintilla and then coded into Geany. They can then just be in a contrib directory on the Geany website. Sure that means that there are two different systems, one for Scintilla supported languages and one for the others, but that may have to be lived with :-(
Cheers Lex
Regards, Nick
On Tue, 6 Oct 2009 12:39:28 +0100 Nick Treleaven nick.treleaven@btinternet.com wrote:
I saw your question on the scintilla list and thought I'd drop you some data for Geany.
For reference: http://groups.google.com/group/scintilla-interest/browse_thread/thread/f6d40...
Regards, Nick