AMD had a tough slot towards the end of day two, by this point people have been standing in a lot of lines to take in lots of technical information so it was no surprise that the General Session hall here was about one third full. The first part of this brief session was really just AMD enthusing about their love for Java technology and Java developers but started to get more interesting when Dr Leendert van Doorn, Senior AMD Fellow, took the stage.
To start, van Doorn threw a couple more compliments out there: “Software developers don’t create performance improvements, they liberate them. AMD needs your software to show off the features they create on the chip”. And, my personal favourite:
“Without software, silicon just conducts energy”. Darn right :)
He then followed that up with some facts and figures (including “Sun’s JVM has seen as 220% performance increase on AMD processors over the last three years”) and told us about some of the optimisations that Sun have made to Java and Netbeans to take advantage of special features and instructions on AMD chips.
was next up for a mention, an open source plug-in for Eclipse that provides
exposure to performance counters embedded in AMD chips and allows developers to
equate hardware events to the software they wrote, enabling higher degrees of
performance tuning. You can download
CodeSleuth from Sourceforge: http://codesleuth.sourceforge.net
Two features were given the spotlight to show how “Java is moving closer to the bare metal as it evolves”. By that AMD means the JVM will be using an increasing number of instruction sets and features for tuning purposes going forward and we could ultimately see the JVM being run directly on a hypervisor, sans operating system. The features are:
- Light-weight profiling (LWP): Designed to improve software parallelism through new hardware features in future versions of AMD processors. It will allow technologies like Java to more easily benefit from the multi-core processors that are now being designed and deployed.
- Advanced Synchronization Facility (ASF): Created to increase concurrency performance and introduces hardware read barriers to help with Garbage Collection.
By far the
best part of the keynote was a chat with James Gosling, who was asked to give
his thoughts on how other layers of computing platforms (operating systems and
processors) change as Java evolves.
Gosling said that the bond or ‘deadly embrace’ between the between
software and the instruction set needs to be broken, that means ditching static
compilers that can only compile code and optimize it using cross-platform
optimizations. He went on to point out
the fact that the Java HotSpot VM takes advantage of the fact it knows what
optimisations it can apply to code at runtime given a particular processor, for
example it knows that AMD have excellent memory bus bandwidth and makes the
most of it. He said HotSpot will be able
to reJIT code on the fly, based on processor feedback from lightweight
profiling information it receives. It
doesn’t need to guess how the application might behave at compile time but
actually optimise the code near runtime.
That was it for AMD, Intel will follow up with their keynote on Thursday morning.