[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [DotGNU]CVM to machine code
From: |
Gopal V |
Subject: |
Re: [DotGNU]CVM to machine code |
Date: |
Sat, 26 Jul 2003 21:39:43 +0530 |
User-agent: |
Mutt/1.2.5i |
If memory serves me right, Paolo Molaro wrote:
> > the CVM/unroller wins out . I have some code that mono takes 3 minutes
> > to execute that pnet does in under 250 msec ... So real life apps will
>
> Care to post the code? Your claims will be stronger if you post the
> evidence. While what you claim could happen (with an old
> release of mono), I doubt it's a JIT issue, if it really happens it's
> more likely a library or runtime issue.
I got the code from Tony Garnock-Jones (and have lost it too) and it
was not I who got 3 minutes on mono ... it was a single 170k method ,
obviously leaning towards favouring interpreters .. so you really have
no reason to complain :-) ... but there are compilers that pump out
such programs running around.
Jun 25 03:42:30 <t3rmin4t0r> hmm...
Jun 25 03:46:36 <tum> mono: 3:18:45
Jun 25 03:46:42 <t3rmin4t0r> 3 minutes ?
with mono .24 ( or maybe it was CVS , anyway current then, I see that
you've released 0.25 which might mean it's not an issue now)... tests
with mono here didn't run that code and my pnet gave 220 msec (PIII 450,
64M). And pnet proved to be even faster than MS .NET on this test case
too ..
looking at mono archives this was reported there as well, and you have
commented on that too ?... last month ?
http://lists.ximian.com/archives/public/mono-list/2003-June/014259.html
And I'm surprised that you should take offence, because that "conversion
time" comment was a general JIT thing... ie tree building , nlg(n) ...
the code being an accidental example of how to fool a JIT :) .
But all that's out of context ....
> > Allows tough opcodes to be implemented in C and the easy/common ones
> > are unrolled ... lets people develop a JIT incrementally from the
>
> All the CLR JITs I know of (the mono one based on the code and the MS
> ones based on their published slides) can easily (and do) use helper
> functions to implement some opcode.
No what I meant was like , I could write an unroller with only the
Arithmetic instructions unrolled ..and avoid needing call instruction
support ie just the arithmetic stuff ...
> The mono JIT is from 3 to 10 or more times faster than ilrun on all the
> benchmarks I tryed. Other JITs are even faster. Feel free to try
> scimark, linpack, the benchmarks in the mono cvs, and even pnetmark.
Requote :
"But find me a benchmark that's not a tight loop ;-)"
Also the pnetmark suite (and other benchmarks inside that module)
measures time inside the run, not total execution time .. ie does
not include "conversion" time or loading time. And there are about
5 flavours of ilrun builds , your perfomance might vary.
Anyway, always glad to know you're around.
Gopal
--
The difference between insanity and genius is measured by success
Re: [DotGNU]CVM to machine code, Gopal V, 2003/07/26