[plt-scheme] JIT and flonums

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Fri Jan 4 09:27:24 EST 2008

The JIT flonum problems have been fixed, and the JIT's flonum support
is re-enabled in SVN.

There's a good chance that your plots will work, now. The JIT bug was
leaving the FP stack in a bad state, which mostly affected FP code
*not* generated by the JIT (e.g., the FP code in the plot library).

Matthew

At Thu, 3 Jan 2008 20:46:39 -0700, Matthew Flatt wrote:
> We've discovered today some problems with the JIT's new flonum handling.
> That may be the problem with the plots.
> 
> It's not quite fixed, yet, so I've disabled the JIT's flonum code for
> now in SVN.
> 
> Matthew
> 
> At Thu, 3 Jan 2008 17:33:34 -0700, "Doug Williams" wrote:
> > The problem does seem to be in PLoT.  When I run demo-1.ss (in C:\Program
> > Files\PLT-FULL-3.99.0.8\collects\plot\demos on my machine), it generally has
> > an empty plot.  Occasionally it will show the plot - maybe 1 time in 10 or
> > so, the other times it is just the axes and labels.  [Don't be confused by
> > the image in the source file, which also prints out when evaluated.  I just
> > comment it out or delete it.  Then just hit the run button repeatedly.
> > Also, it has to be run in the Pretty Big language because of build-list.]
> > 
> > I also checked it with some of the science collections tests (for example,
> > uniform-int-histogram-int-example.ss in the example subdirectory of the
> > science collection, which doesn't have the subcollection reference
> > problem).  It exhibits the same behavior.
> > 
> > For the PLaneT subcollection problem, the exact error message I get is:
> > bernoulli-example.ss:1:9: planet: bad module path in: (planet "bernoulli.ss"
> > ("williams" "science.plt") "random-distributions").  But, (require (planet "
> > science.ss" ("williams" "science.plt"))) works fine.
> > 
> > But there is a noticeable speedup in the overall test execution.
> > 
> > On Jan 3, 2008 3:25 PM, Doug Williams <m.douglas.williams at gmail.com> wrote:
> > 
> > > I tried running the science collection examples in 3.99.  Most of the
> > > plots were just empty, so I need to see if it's a problem with the PLoT
> > > package or with my code.  [They didn't error, just gave empty plots.]  For
> > > the ones that did run and which are computationally intensive (with 
> flonums)
> > > - like Chebyshev evaluation and (especially) the ordinary differential
> > > equation solvers - they 'seemed' much faster.  But, it's anecdotal - I just
> > > eyeballed it.  I have to track down my uses of set-cdr!, etc in the
> > > simulation collection before I try any of my larger examples there.
> > >
> > > One interesting problem came up.  Has the use of subcollections in PLaneT
> > > changed with 3.99?  For example, (require (planet "bernoulli.ss"
> > > ("williams" "science.plt") "random-distributions")) says it can't find the
> > > file, but it works fine in V372 (and before).
> > >
> > > Doug
> > >
> > >
> > >
> > > On Dec 28, 2007 3:55 PM, Noel Welsh <noelwelsh at gmail.com> wrote:
> > >
> > > > Joyous day!  Should my code run in 3.99 I'll do some benchmarking.
> > > >
> > > > N.
> > > >
> > > > On Dec 28, 2007 10:52 PM, Matthew Flatt < mflatt at cs.utah.edu> wrote:
> > > > > The latest in SVN (v3.99.0.7) includes new JIT support on x86 for
> > > > > inlining flonum (i.e., inexact real) arithmetic. I expect to fill in
> > > > > x86_64 and PPC support next week.
> > > > >
> > > > > This change makes inexact-heavy microbenchmarks run 2-3 times as fast.
> > > > > It might be useful for real programs, too, but I don't seem to have
> > > > any
> > > > > interesting floating-point applications to try out.
> > > > >
> > > > > Matthew
> > > > _________________________________________________
> > > >  For list-related administrative tasks:
> > > >  http://list.cs.brown.edu/mailman/listinfo/plt-scheme
> > > >
> > >
> > >
> _________________________________________________
>   For list-related administrative tasks:
>   http://list.cs.brown.edu/mailman/listinfo/plt-scheme


Posted on the users mailing list.