Open the scratch scratch buffer, evaluate stuff below
and monitor xemacs virtual memory (committed, private) size.
My numbers are below.
Start, Mem. usage = 8M
(make-string 10000000 ?A) ->> 18M
; After ~1s, the string displayed in the minibuffer ->> 55M
(garbage-collect) ->> 55M
(make-string 10000000 ?B) ->> 80M
(garbage-collect) ->> 70M
(make-string 10000000 ?C) ->> 80M
(garbage-collect) ->> 70M ; Well, looks stable but...
(make-string 10000000 ?D) ->> 80M
(make-string 10000000 ?E) ->> 100M
(make-string 10000000 ?F) ->> 125M
(make-string 10000000 ?G) ->> 150M
(make-string 10000000 ?H) ->> 165M
(make-string 10000000 ?I) ->> 168M
(garbage-collect) ->> 151M
Bye bye 150 MB....
Looks like it has to do with minibuffer printing. I'll try
to build xemacs with native NT allocator, run it from temacs
(it won't be dumpable) and see if there is any difference.
Please test this under different platforms.
Big K