tensor

Stephen Weeks sweeks@wasabi.epr.com
Mon, 18 Oct 1999 10:09:48 -0700 (PDT)


> I'm running the benchmarks on my home machine (a 400Mhz Celeron) with
> 256 MB memory.  Do you know why tensor has almost no unknown calls
> after SXML?  I thought it was a heavy-duty higher-order program.
> Running MLton with instrumentation, I get 
> 
>   SXMLKnown = 2780795601
>   SXMLUnknown = 121
> 
>   CPSKnown = 0  
>   CPSUnKnown = 0  
> 
> If it's not identification of procedures, why does Mlton kick-butt
> over NJ so badly on this benchmark?

The Sxml instrumentation comes after polyvariance, right?  I suspect
that the combination of tensor being small and the higher order
functions being small means that polyvariance gets everything.

I'm confused about CpsKnown and CpsUnknown.  What do they count?
Where are they incremented?  I looked through the source and couldn't
find them.  The instrumentation for following variables is in
cps/loop-count.fun: CpsLoop, CpsCall, CpsDispatch, CpsCoerce.  Do you
have any examples where CpsKnown or CpsUnknown is nonzero?