Newsgroups: comp.lang.smalltalk
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!howland.reston.ans.net!news.sprintlink.net!EU.net!Germany.EU.net!donald!hmm
From: hmm@heeg.de (Hans-Martin Mosner)
Subject: Re: Self (Was: Re: Smalltalk in CS 1)
Message-ID: <CyMvrH.L42@heeg.de>
Organization: Georg Heeg Objektorientierte Systeme, Dortmund, FRG
References: <mmkCyD4xF.Ktx@netcom.com> <patrick_d_logan.160.000F8CCF@ccm.jf.intel.com> <1994Nov1.191010.26637@xilinx.com>
Date: Wed, 2 Nov 1994 09:30:53 GMT
Lines: 23

In article <1994Nov1.191010.26637@xilinx.com> bretts@fred.xilinx.com (Brett Stutz) writes:
>I'd also like a relatively unbiased account of why Self is (perceived
>as) faster than Smalltalk.

I haven't looked into the Self world much lately, but from what I've read
and seen, the speed of their compilation technology is mainly bought
with main memory.  Their compiler generates potentially many machine-code
versions of each method, each optimized for a certain set of classes of
the receiver and arguments.  Talk about tens of megabytes just for the
compiled code cache...  This means that the performance of Self on a
16-meg workstation is almost non-existent, because it's eaten up by paging.
Dynamic compilation as of the ParcPlace or Self flavor is a space/time
tradeof thing.  I have the feeling that for a certain quotient of main
memory and application (working set) size, a well-optimized pseudocode
interpreter would do better than a dynamic compiler because it could
have better paging and cache hit performance.

Hans-Martin
-- 
+--- Hans-Martin Mosner ---------------- <hmm@heeg.de> ---+
| These opinions are entirely ficticious.  Any similarity |
| to real opinions is purely coincidental and unintended. |
+---------------------------------------------------------+
