Day 3 at JavaONE was the best session day so far. It started with a great talk from Neal Ford on testing that sucks less. Big surprises, private doesn’t mean anything and using Groovy can help you test private methods because it doesn’t respect private. Well, refection doesn’t respect private. Download the slides ‘cos there are just way too many tools to mention here.
Next up was Tony Printezis and Charlie Hunt on GC Tuning. Awesome session that deep dived into the importance of tuning the young generational space. Tony also covered GCHisto, a tool that he’s been working on to view garbage collection logs.
In perhaps what was one of the best talks I’ve been in a while was Brian Goetz and Cliff Click talking about modern CPU architecture. About the only complaint was there wasn’t enough information about how we could use this information to help our coding style. First let me say where I’m coming from.
When I was working with Cray systems I wrote a lot of code that was adapted to the CPU architecture of the machine. For example, it was much better to run through a loop with no branch instructions and do useless work that you’d throw away then it was to use a branch instruction to avoid the useless work. This is because the if statement would cause the vector pipeline to be flushed and that was much more expensive than just keeping it going. It seems as thought they still maybe opportunities to make slight alternations in our coding style that could help us make more effective use of the CPU.
Another interesting point was the change in cost of different activities over the years. In the past performance was dominated by page loads. Now, performance is dominated by cache misses. Best demo was a translation of some Java code into activities in a two core CPU. Awesome stuff that is really helpful for understand how to write better concurrent code.
After that I paneled in the Java Champions, Java User Group and NetBean’s Dream teams BOF. My questions revolved around why we still don’t have a JSR for the JDK 7.0. I was very disappointed how Sun tried to rewrite history during the session. I don’t want to get into all of the politics right here an now as I’m also currently watching Tor Norbye demoing the FX authoring tool but, it’s a mess of the JCP that we are in this situation.
Kirk! Thanks for talking in the java.net Community Corner this year.
JavaOne was just as busy as last years, if not busier. Also thanks for
Speaking at the BOF (3904) as well.. pictures of you and the other Java
Champions here: https://java-champions.dev.java.net -- Aaron Houston -
Community Programs Coordinator Sun Microsystems, Inc.