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

Minutes of Meeting, SLUG & Symbolics, 15 December 89



    SLUG was told that there were no plans for further development or later
    releases of Genera beyond 8.0., essentially because 8.0 would be
    complete and robust on its own. (This implied that enhancements of
    functionality in Genera would come to an end with 8.0.) Cannon made a
    comment to the effect that 8.0 is the finished thing they have been
    targetting Genera to be. 

So does anyone know what has happened to "the new compiler" I've heard
about several times over the past couple of years?  I was told that "the
new compiler" would incorporate support for declarations which would
allow non-consing rational, complex and double-precision arithmetic.  I
do not see any indication of these enhancements in the Genera 8.0 beta
release notes.

The issue of nocons arithmetic looms large for people wishing to do fast
and accurate numeric processing.  In the G machines, the addition of the
onboard double-precision FPA chips does effectively nothing to speed up
double precision math unless one goes to the trouble of using system
internal math functions and avoids consing a little structure ("boxing")
for every result of any operation.  With entirely unboxed numbers (which
are possible to implement, though the resulting code is grotesque and
totally non-portable), one can obtain approximately a 10x speedup by
having the FPA chips.

Even disregarding the use of floating point hardware, the heavy consing
that results from frequent use of boxed numbers (and the attendant GC
overhead) is a real performance problem that can be hard to work around.
Compiler support for the declarations that would allow unboxed math (as
described to me by a Symbolics person working on "the new compiler")
could be a tremendous boon to developers, and I hope it is not getting
lost in the shuffle.  I should mention that the basics for such support
have existed as a hack for a long time now, and that adding the requisite
optimizers to the current compiler should be a very viable option.