Date: Thu, 21 Mar 2002 17:07:52 -0700 From: Nate Williams <nate@yogotech.com> To: Bill Huey <billh@gnuppy.monkey.org> Cc: Nate Williams <nate@yogotech.com>, Greg Lewis <glewis@eyesbeyond.com>, java@FreeBSD.ORG Subject: Re: Mozilla core... & HotSpot update Message-ID: <15514.30168.252188.732486@caddis.yogotech.com> In-Reply-To: <20020322000416.GA1670@gnuppy.monkey.org> References: <20020320201858.GA3125@gnuppy.monkey.org> <15512.61557.26582.852492@caddis.yogotech.com> <20020320233301.GA4011@gnuppy.monkey.org> <15513.7648.287464.414451@caddis.yogotech.com> <20020321000145.GA4319@gnuppy.monkey.org> <20020321142512.A65790@misty.eyesbeyond.com> <20020321063724.GA6657@gnuppy.monkey.org> <15514.3199.968025.626479@caddis.yogotech.com> <20020321234309.GA1607@gnuppy.monkey.org> <15514.28841.407418.877991@caddis.yogotech.com> <20020322000416.GA1670@gnuppy.monkey.org>
next in thread | previous in thread | raw e-mail | index | archive | help
> > They allow multiple JIT compile threads? That seems like a problem > > waiting for a solution. Are you *sure*? > > On an enterprise machine with 10,000+ threads and 64 CPUs, it doesn't > make sense to serialize the JIT process into one thread. Actually, it still does. > It almost certainly is so that the compilation process can proceed in > parallel across multipule CPUs and in what ever executing thread at > the time. The overhead of compilation is why HotSpot does a better job than Standard JITs. It only compiles a small portion of the program at a time, and can even decompile parts of the program if they fall out of use. (Resources et. al.) > > Actually, it wouldn't, since a JIT like HotSpot JITS on-the-fly as code > > is found to be useful in compiling. Traditional JITs compile > > *everything* at the beginning, so there aren't as many races and such, > > since no-code is executed until the compilation is complete. > > That's only if you have one thread doing the compilation and this isn't > a traditional JIT in any way what so ever. You're almost certainly > dealing with a JIT that can allow anything to compile code and shove > into a data structure. Even a traditional JIT would benefit from > parallel compilation since it's a more known operation and can > concretely schedule threads to the work. See above. We can agree to disagree here. The last talk I heard on HotSpot implied that they are using a single thread for compilation, which is similar to the pseudo-single threaded garbage collector. (The GC process can involve more than one thread, but only a single thread can be active at a time). The complexity/overhead of multiple GC's and compilation *far* outweighs the benefits. Nate To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-java" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?15514.30168.252188.732486>