Integer micro-benchmarks [Smalltalk Multi-Precision Numerics vis-a-vis Highly Optimized Fixed Size Integer C++ Numerics]

Daniel Berlin dan at www.cgsoftware.com
Wed Apr 25 09:49:54 EDT 2001


>
> My guess is that most what you are seeing is synergistic
> interaction between function inlining and symbolic evalu-
> ation (a generalization of constant propagation).

Not likely, BTW.
You'd need invariant code motion to do what it did.
This is usually done in combination with PRE.

As for MS's compilers implementing it, I know they do.
I worked for MS for 3 years, starting when I was 17 (I'm 21 now).

In fact, this is what their global optimization is.
Inter-procedural constant propagation and inter-procedural PRE.


and just another note on PRE being well known.

I can find at least 40 papers on optimization that contain the exact
phrase "PRE is a well known technique for optimizing code".

I also still haven't found a compiler that *doesn't* implement it:Forte
C++ (SUn workshop), Intel's Compiler, MSVC, GCC, SGI's compilers, every
JIT i've ever seen (ORP, HotSpot, etc).  SML/NJ, Fujitsu's C compiler, at
etc

These are the "production" compilers. I'm not even bothering to list the
"research" compilers.





More information about the Python-list mailing list