[squeak-dev] 100 Million objects
Herbert König
herbertkoenig at gmx.net
Thu Feb 28 21:18:00 UTC 2008
Hi,
out of curiosity (forgot the reason) in a Workspace I did
a:= Array new: 100000000 withAll: 1.0
Which gave me an 80% cpu usage.
To verify I browsed a MessageTally and found that incremental GC used
88%. One Smalltalk garbageCollect brought things back to normal.
As far as I remember my swiki readings this is because everything
surviving a GC is moved to old space which is ignored by incremental
GC.
Another interesting observation:
Doing the allocation with immediate GC is quite fast while doing
a:= nil with immediate GC takes *much* longer.
BTW, if you don't have the latest CPU 10 million objects will do.
Win 3.10.6 VM, 3.8.2, 3.9 final and latest 3.10 images.
Do I have to learn from this, that when creating lots of objects I
intend to keep for a while, it's good to force a GC instead of waiting
that time will move my objects to old space?
Cheers
Herbert mailto:herbertkoenig at gmx.net
More information about the Squeak-dev
mailing list
|