[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Yes, they are special, but...



    Date: Sat, 10 Jun 89  03:25:17 CDT
    From: Gyro@Reasoning.COM

       Date: Fri, 9 Jun 89 09:16 CDT
       From: ai.gooch@MCC.COM (William D. Gooch)
       Subject: Yes, they are special, but...
   
	   ...."highly specialized hardware"....
   
       I've heard this idea bandied about enough that I suppose I should
       understand it by now, but - sorry if I'm being dense - I still don't
       know what it means.  The term "specialized," usually stated as in
       opposition to "general-purpose," implies that there are things one
       cannot do on a Symbolics machine which other hardware does support.
       If you don't mind my asking, what are those things?  
   
    You can't run Un*x.

    Don't get the wrong idea.  I detest Un*x.  Despite (or perhaps on
    account of?) having written a C compiler, I detest C.  But for better or
    worse, a lot more generally useful applications and tools are being
    written in C for Unix than for LispMs.  It also provides multi-user
    capability with some semblance of security, which is valuable in many
    environments.  Thirdly and perhaps most importantly, lots of people out
    there already know Un*x or something similar -- it is fairly solidly in
    the computing mainstream -- and the user interface and programming
    philosophy of the LispM, while arguably much superior on many counts, is
    anything but mainstream.  I think this justifies calling it
    "specialized", though in a different sense of that word than the one you
    define.

This is an accurate characterization of the present workstation market.

    You won't be able to run Mach on LispMs either.  I dare to hope Mach
    will be something worth running.

    More nitty-gritty: you can't run multiple processes in separate address
    spaces on the LispM.  I think this is actually a fairly serious
    limitation for some applications.  (Besides the fact that it means the
    CPU can do little more than twiddle its thumbs during page faults.)  It
    certainly keeps the machine from being effective in multi-user
    applications.  (Again, don't get me wrong.  I don't fundamentally
    disagree with the "one user, one CPU" philosophy.  I just think of it as
    a first approximation, not a rigid rule.)

"Multiple processes in a single address space" is a function of Genera,
not the Lisp machine hardware.  "Multiple processes in a single address
space" does not imply that "the CPU can do little more than twiddle its
thumbs during page faults".  In fact, we have machines here which have
software which allows other processes to run during a page fault.
However, metering the performance effects of that change is very
difficult.  We believe that, under many common conditions, scheduling
across page faults improves performance, but there are other conditions
under which it degrades performance.

    It's a lot harder than it should be to develop software for delivery on
    other hardware platforms.  There are things Symbolics could do to make
    this easier even for Common Lisp, like checking type declarations for
    consistency.  Window systems used to be a major problem here, but of
    course recently, with the advent of X, that's getting better.  Running
    other languages than Lisp on Lisp Machines brings its own set of
    problems; many of these can rightly be blamed on the brain-damage of the
    other language in question, but unfortunately it doesn't matter whose
    fault they are: they still get in the way.

    Seems to me that if Symbolics machines were price and performance
    competitive with Suns etc., or were even just 20% to 30% more expensive,
    these failings might be more readily overlooked in the marketplace.  But
    the one-two whammy of incompatibility and price seems to have been
    fatal.  Symbolics is addressing these issues, of course, but I am afraid
    they missed their chance by failing to do so in 1983.

Every time I have read a Sun price-list, I have wondered why people buy
Suns instead of Symbolics machines.  In truth, a Sun-3 which is
configured to have performance competitive with a Symbolics 3620 for
developing Lisp systems appears to be more expensive than the 3620.
Sun's heavy discounting probably tilts the scales in their favor.