mario.wolczko at sun.com
Sat Jul 3 21:08:09 UTC 2004
> Is the HotSpot VM faster than Self?
I sure hope so. There has been at least 10x, and maybe as much as
50x, applied man-years to HotSpot as to Self, and they started with
the Self VM. I personally had as many as a dozen guys standing on my
shoulders at one time ;-)
Off the top of my head, these are the salient differences:
- HotSpot uses native threads, and so can take advantage of multiple
- HotSpot has a sophisticated interpreter in place of Self's NIC.
- The HotSpot client compiler is roughly comparable in sophistication
to the Self SIC, except that it does not inline quite as
aggresively, nor have so many optimization levels.
- The HotSpot server compiler is a big, complicated, SSA-based
compiler that has a level of sophistication approaching that of a
good optimizing C/C++/Fortran compiler.
- HotSpot has several garbage collectors, most of which are either
concurrent (run alongside the mutator) and/or parallel (use multiple
That said, the Self VM
- better supports programming changes (HotSpot allows method
redefinition, but not structural class changes)
- has an expandable, segmented heap, with the heap expansion policy
in Self (I am crowing about this because I wrote it, and just
helped Dave debug and improve it!)
- has a much faster bytecode verifier ;-)
I'm sure there are some differences I've forgotten.
More information about the Self-interest