About the benchmarks you know what I mean I guess. That they don't prove anything, no matter how hard other people want to prove the inverse. Concrete figures will be in incoming research papers I am working right now. So just don't start right now with saying give us figures :-)
Thanks, Kirill 2009/4/5 Kirill Kononenko <kirill.konone...@gmail.com>: > > > After many considerations, I want to let everyone know about a release > of my work done in a package: > > > > 0.1.2.5 + / 0.1.2 1/2 version release (code name: "libJIT-ON-TESTOSTERONE") > > * main branch + libJIT-linear-scan-register-allocator > * Add optimization levels for IA-32 from 0 to 4 > * Add a new specialized ABI called INTERNAL > * Add brand new optimized object code generator (level 1, 2, 3, 4 of > optimization) > * Various low-level machine dependent optimizations and tricks > * Aggressive optimization of division by integer constants as > by Torbjorn Granlund and Peter L. Montgomery in "Division By > Invariant Integers using Multiplication" > * Add primitive code generators for MMX/Streaming SIMD > Extensions/SSE/SSE2/SSE3 and others > * Use SIMD SSE/SSE2/SSE3 for floating point values and operations > (level 1, 2, 3, 4 of optimization) > * Data-flow and control-flow based analysis (level 1, 2, 3, 4 of > optimization) > * Fast liveness analysis (level 2 of optimization) > * Dead-code elimination (level 4 of optimization) > * Full liveness analysis (level 3, 4 of optimization) > * Linear scan register allocator algorithm (level 2) > * Bin packing register allocator algorithm (level 3, 4) > * Tested on DotGNU Portable.NET Common Language Runtime > / a Microsoft Common Intermediate Language Virtual Machine > > (a special "unofficial" research release version > <http://code.google.com/p/libjit-linear-scan-register-allocator> > > Download is at: > > http://libjit-linear-scan-register-allocator.googlecode.com/files/libjit-0.1.2.5%2B.tar.gz > > > > This work gives a lot of improvement and beats Mono in all benchmarks. > > I want to also let know that this is a research project and there is > no target to compete with Novell, or Apple. Simply because it is not > possible. But I am rather looking for cooperation for benefits of all > sides. I will be honored if this work can be a base for a cooperation > with Mono for example. > > > Thanks, > Kirill > > > 2009/4/3 Diego Novillo <dnovi...@google.com>: >> On Fri, Apr 3, 2009 at 10:54, Kirill Kononenko >> <kirill.konone...@gmail.com> wrote: >> >>> What I want to identify is how both a VM engine(ILDJIT, >>> .NET for example, Mono, Portable.NET), gcc and libJIT could be >>> extended with minimal changes to both, for best user experience for >>> example, is it speed performance, benchmark, code size, or power >>> consumption. >> >> You still need to do the steps Ian outlined in his message. For GCC >> maintainers to accept changes (minimal as they may be), you have to >> justify those changes, propose a patch and submit for review. >> >> Whether the patch is approved or not will depend on whether you >> convinced the GCC maintainers that the feature is useful and that it >> complies with http://gcc.gnu.org/contribute.html. >> >> It seems like you are still early in your design cycle. You still >> need to complete steps 1-3 in Ian's list. >> >> >> Diego. >> >