[Date Prev][Date Next][Thread Prev][Thread Next][Author Index][Date Index][Thread Index]
- To: <xtech>
- Subject: Initializer speedup
- From: Eric Dean Tribble <tribble>
- Date: Mon, 10 Dec 90 14:17:40 PST
I sped up the Smalltalk version of Initializer by a great deal. If
you're doing many tests you might want to file in dean-n.cha.
Everything you do with Initializerrs now takes 4 seconds or so
(Initializer initialize; doLinkTime; doInitTime).
I changed the initialize routine so that it doesn't examine any
subclasses of a class with inherited initializers because inheriting
an initializer by itself requires a run-time visit.
I also removed the allocation tracking stuff from Heaper. It required
a linkTimeInherited in Heaper, so every Heaper subclass had to be
visited during link and init phases. The number of classes to be
initialized has dropped from 780 to 50 or so....
We should definitely try to avoid inherited initializers, especially
high up in the class hierarchy.