I am not a Java expert, so some of what I say here might be wrong/outdated. I don't think JIT can make Java as fast as C/C++. There are still things Java does in ways that cannot be fast. For instance, you can't construct objects on the stack, so you need to use the heap for everything. Also, passing everything by pointer (as I think Java does under the hood) requires many dereferences that can end up being expensive. Then you have the garbage collector, which will run at poorly specified times, making your program slower perhaps when you most need speed.
In general, there is more abstraction from the way the hardware works, and that almost inevitably costs you in performance. C++ manages to abstract many things while staying fast, but then you pay the cost in complexity. C keeps you quite close to the machine, but it's so simple that common tasks (like string manipulation) are really hard to implement. It's all a matter of balance. My personal preference at this point is C++ without going overboard with the more difficult aspects of the language, like template meta-programming. But I can understand why people make other choices. Álvaro. On 6/15/07, Joshua Shriver <[EMAIL PROTECTED]> wrote:
I'm not a java advocate, but I thought the whole java speed war ended when JIT came out? Granted there is some overhead during the initial start, but once it's running it would be the same speed since, in essence it IS running native code at that point. -Josh On 6/15/07, steve uurtamo <[EMAIL PROTECTED]> wrote: > > hey, you guys are right, java really is as fast as C now. > > s. > > > ----- Original Message ---- > From: terry mcintyre <[EMAIL PROTECTED]> > To: computer-go <computer-go@computer-go.org> > Sent: Friday, June 15, 2007 1:17:11 PM > Subject: Re: [computer-go] Java hounds salivate over this: > > The Vega chip is custom-designed to run a Java Virtual Machine. Not at all > useful to the rest of > us who prefer other languages. IIRC, the machine has a single memory image. > Of course, 600+ > gigabytes of RAM is not cheap, but if we can get an oil sheikh to sponsor a > project, who knows? > The systems appear to be very energy efficient also. They run at slower > memory speeds, depending > more upon the massive parallelism of 48 cores per chip than raw clock speed. > Terry McIntyre <[EMAIL PROTECTED]> > They mean to govern well; but they mean to govern. They promise to be kind > masters; but they mean to be masters. -- Daniel Webster > > > ----- Original Message ---- > From: Joshua Shriver <[EMAIL PROTECTED]> > To: computer-go <computer-go@computer-go.org> > Sent: Friday, June 15, 2007 10:03:46 AM > Subject: Re: [computer-go] Java hounds salivate over this: > > Interesting machine, but something about it seems odd. First it says > it's tuned for Java. Does that mean you can't use non-java on it? Run > Linux? Or is it a glorified cluster of chips like the old hardware > chips Sun made a decade ago for their defunct Java Station? > > What are the specs of the actual cores? Shared memory or does each > core have it's own? > > There are more things to take into consideration than just cores. I've > seen several posts like this in the past, and it makes me wonder if > cores is the new mhz craze. > > But for people using Java, this might be a killer system, so *shrug* > to each their own :) > > -Josh > > On 6/15/07, terry mcintyre <[EMAIL PROTECTED]> wrote: > > > > Azul Systems has released a "compute appliance" with 768 cores and 768 > > gigabytes of RAM, > > happily driving your Java applications faster than ever before: > > > > http://www.azulsystems.com/products/compute_appliance.htm > > Terry McIntyre <[EMAIL PROTECTED]> > > They mean to govern well; but they mean to govern. They promise to be kind > > masters; but they mean to be masters. -- Daniel Webster
_______________________________________________ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/