[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [DotGNU]Will unrolling an instruction slow down execution ?
From: |
Gopal V |
Subject: |
Re: [DotGNU]Will unrolling an instruction slow down execution ? |
Date: |
Wed, 14 May 2003 14:19:23 +0530 |
User-agent: |
Mutt/1.2.5i |
If memory serves me right, Rhys Weatherley wrote:
> The biggest source of slowdown in the engine right now is the overhead of
> method calls, which involve several non-unrolled instructions (call/callvirt,
> set_num_args, ckheight, and cknull). I've experimented with unrolling these,
> but not enough is gained to make it worth it.
>
> We will have to move to a real JIT coder to reduce the overhead further.
> i.e. completely change the representation of stack frames.
Rhys I've been looking at the object code generated in the cvm.o native
code ?. Just to obtain a view of what we need to do generate for object
instructions. Would it be fair to assume that generating that chunk or a
very similar chunk of code in the unroll section would work ?.
The assumption being that we will be able to call the necessary functions
from assembly ?.
Anyway I think that should make the choice of instructions by the JIT
designed a lot easier , even if the code is not directly usable ...
> That's step 3 in the "generic unroller, dual coders, real JIT" plan.
Okie dokie.
Gopal
--
The difference between insanity and genius is measured by success