Name: rmT116609 Date: 01/17/2001
java version 1.2.2
In Intel CPU land, we've got (right now)
three basically different microarchitectures
of the x86 instruction set floating around:
Pentium
PentiumPro, -II, -III
Pentium-IV
(and 386, 486, but I don't think it is worth
worrying about them)
What is interesting is that each of these families
has different suggested optimal assembly language
outputs for what would be logically the same high
level language constructs. This is _very_ apparant
with the floating point instructions for the Pentium-IV,
but seems to be true when comparing even integer
instructions between the different families.
It is difficult for statically compiled languages
(C, C++) to support all of these CPUs optimally.
A JIT, however, should be able to do so fairly easily
... on program boot, the JVM can check the CPU and then
load the appropriate JIT DLL based on which CPU is
detected.
This should result is better performance for Java applications
at the cost of more debugging for Sun (because there are
now three JIT backends to debug instead of one). Has
Sun considered doing this? Is it already happening and
the HotSpot whitepapers are just quite about it?
(Review ID: 115273)
======================================================================