You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@harmony.apache.org by Xiao-Feng Li <xi...@gmail.com> on 2006/10/10 11:05:35 UTC

[DRLVM][VM] design of bootstrapping process

Hi, when I debug DRLVM, I have a question about the bootstrapping
process: why is Jitrino initialized only when a method is compiled?
Shouldn't it be initialized right away in or before vm_init() before
any method need compiling, just as gc_init() is initialized before any
object is allocated?

This is related to the thread initialization issue in my another
message. In current Harmony GC (gcv4.1), because of the thread
initialization issue, the gc has to initialize main thread's thread
local gc info inside the first gc_alloc() !

This kind of design makes the runtime phase behavior unclear and
bug-prone. How do you guys think?

Thanks,
xiaofeng

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: [DRLVM][VM] design of bootstrapping process

Posted by Xiao-Feng Li <xi...@gmail.com>.
Thanks, this is helpful.  -xiaofeng

On 10/10/06, Mikhail Fursov <mi...@gmail.com> wrote:
> On 10/10/06, Xiao-Feng Li <xi...@gmail.com> wrote:
> >
> > Hi, when I debug DRLVM, I have a question about the bootstrapping
> > process: why is Jitrino initialized only when a method is compiled?
> > Shouldn't it be initialized right away in or before vm_init() before
> > any method need compiling, just as gc_init() is initialized before any
> > object is allocated?
>
>
> Xiao Feng,
> JITs are always initialized  at the same  time  when EM is initialized.
> EM reads the active configuration and decides which JIT instances and which
> profile collectors to use.
> EM is initialized by the component manager. AFAIK component manager
> initializes all of it's components before any compilation is started.
>
> --
> Mikhail Fursov
>
>

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: [DRLVM][VM] design of bootstrapping process

Posted by Mikhail Fursov <mi...@gmail.com>.
On 10/10/06, Xiao-Feng Li <xi...@gmail.com> wrote:
>
> Hi, when I debug DRLVM, I have a question about the bootstrapping
> process: why is Jitrino initialized only when a method is compiled?
> Shouldn't it be initialized right away in or before vm_init() before
> any method need compiling, just as gc_init() is initialized before any
> object is allocated?


Xiao Feng,
JITs are always initialized  at the same  time  when EM is initialized.
EM reads the active configuration and decides which JIT instances and which
profile collectors to use.
EM is initialized by the component manager. AFAIK component manager
initializes all of it's components before any compilation is started.

-- 
Mikhail Fursov

Re: [DRLVM][VM] design of bootstrapping process

Posted by Xiao-Feng Li <xi...@gmail.com>.
Hi, Evgueni, yes, I just had a check, now the initialization issue is
gone!  GCv5 in SVN can work directly without any work around. Cool!

Thanks,
xiaofeng

On 10/10/06, Evgueni Brevnov <ev...@gmail.com> wrote:
> Hi,
>
> As I understand you are talking about initialization process before
> HARMONY-1582 was submitted. Although it was not intention of
> HARMONY-1582  to refactor initialization it fixes some problems in
> initalzation. Namely I believe the problem with main thread
> initialization is fixed. Please take a look at fresh sources and let
> us know if something still impacts you.
>
> Thanks
> Evgueni
>
> On 10/10/06, Xiao-Feng Li <xi...@gmail.com> wrote:
> > Hi, when I debug DRLVM, I have a question about the bootstrapping
> > process: why is Jitrino initialized only when a method is compiled?
> > Shouldn't it be initialized right away in or before vm_init() before
> > any method need compiling, just as gc_init() is initialized before any
> > object is allocated?
> >
> > This is related to the thread initialization issue in my another
> > message. In current Harmony GC (gcv4.1), because of the thread
> > initialization issue, the gc has to initialize main thread's thread
> > local gc info inside the first gc_alloc() !
> >
> > This kind of design makes the runtime phase behavior unclear and
> > bug-prone. How do you guys think?
> >
> > Thanks,
> > xiaofeng
> >
> > ---------------------------------------------------------------------
> > Terms of use : http://incubator.apache.org/harmony/mailing.html
> > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> > For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> >
> >
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
>
>

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: [DRLVM][VM] design of bootstrapping process

Posted by Xiao-Feng Li <xi...@gmail.com>.
Thanks, but I am confused. I updated my working copy this morning with
revision 454392. Let me check H1582 and will let you know if that
solved the issue I met. Thanks,

-xiaofeng

On 10/10/06, Evgueni Brevnov <ev...@gmail.com> wrote:
> Hi,
>
> As I understand you are talking about initialization process before
> HARMONY-1582 was submitted. Although it was not intention of
> HARMONY-1582  to refactor initialization it fixes some problems in
> initalzation. Namely I believe the problem with main thread
> initialization is fixed. Please take a look at fresh sources and let
> us know if something still impacts you.
>
> Thanks
> Evgueni
>
> On 10/10/06, Xiao-Feng Li <xi...@gmail.com> wrote:
> > Hi, when I debug DRLVM, I have a question about the bootstrapping
> > process: why is Jitrino initialized only when a method is compiled?
> > Shouldn't it be initialized right away in or before vm_init() before
> > any method need compiling, just as gc_init() is initialized before any
> > object is allocated?
> >
> > This is related to the thread initialization issue in my another
> > message. In current Harmony GC (gcv4.1), because of the thread
> > initialization issue, the gc has to initialize main thread's thread
> > local gc info inside the first gc_alloc() !
> >
> > This kind of design makes the runtime phase behavior unclear and
> > bug-prone. How do you guys think?
> >
> > Thanks,
> > xiaofeng
> >
> > ---------------------------------------------------------------------
> > Terms of use : http://incubator.apache.org/harmony/mailing.html
> > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> > For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> >
> >
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
>
>

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: [DRLVM][VM] design of bootstrapping process

Posted by Evgueni Brevnov <ev...@gmail.com>.
Hi,

As I understand you are talking about initialization process before
HARMONY-1582 was submitted. Although it was not intention of
HARMONY-1582  to refactor initialization it fixes some problems in
initalzation. Namely I believe the problem with main thread
initialization is fixed. Please take a look at fresh sources and let
us know if something still impacts you.

Thanks
Evgueni

On 10/10/06, Xiao-Feng Li <xi...@gmail.com> wrote:
> Hi, when I debug DRLVM, I have a question about the bootstrapping
> process: why is Jitrino initialized only when a method is compiled?
> Shouldn't it be initialized right away in or before vm_init() before
> any method need compiling, just as gc_init() is initialized before any
> object is allocated?
>
> This is related to the thread initialization issue in my another
> message. In current Harmony GC (gcv4.1), because of the thread
> initialization issue, the gc has to initialize main thread's thread
> local gc info inside the first gc_alloc() !
>
> This kind of design makes the runtime phase behavior unclear and
> bug-prone. How do you guys think?
>
> Thanks,
> xiaofeng
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
>
>

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org