[Vm-dev] Making a Slower VM

Sean P. DeNigris sean at clipperadams.com
Sun Feb 9 04:37:46 UTC 2014


We often talk about making the VM faster. How about making it slower? In
1980, there were some optimizations that were needed for Smalltalk to be
even usable, but now:
- Moore's Law has theoretically given us 131072 more computing power
(2^((2014-1980)/2))
- Cog runs up to 3x slower than C [1]
- Ruby, which is widely accepted, seems to be much slower than Cog [2]

For example, inlined functions can be baffling for new users. I just ran
into this myself when writing an #ifNil:ifNotNil: that was not picked up by
the system [3], and Ungar and Smith describe several cases in the History of
Self (pg. 9-5).

How many of these are premature optimizations that can be eliminated, or at
least turned off by default until they're actually needed? I know Clement
mentioned in [3] that some make a big difference, but it would certainly
make the system more uniform and easy to understand.

[1]
http://lists.gforge.inria.fr/pipermail/pharo-project/2011-February/042489.html
[2]
http://benchmarksgame.alioth.debian.org/u32/benchmark.php?test=all&lang=yarv&lang2=gcc
[3] https://www.mail-archive.com/pharo-dev@lists.pharo.org/msg11694.html



-----
Cheers,
Sean
--
View this message in context: http://forum.world.st/Making-a-Slower-VM-tp4742391.html
Sent from the Squeak VM mailing list archive at Nabble.com.


More information about the Vm-dev mailing list