Kirk's Blog
Java Performance
Services, Training, Seminars, Mentoring

JavaONE so far

posted Thursday, 8 May 2008

Though JavaONE maybe half over but for me it's just about to start. I signed up for a way too many sessions and in the end had to ditch a number of them in favor of more time for lab preparation and last minute meetings with various people.

The big item this year was seeing Neil Young drop in to talk about how Blue-Ray technology enabled him to buid a compulation of all his work in a format that was both flexibile enough and of sufficent quality. He had the best quote of the conference so far, "my demo's fake, but it works!" The comment must have been in response to the number of JavaFX demos that failed.

 

 

 

 JavaFX was suppose to be the other big deai of this conference. However, the technology is still very much in the oven. JavaFX was so much so in the oven that there is a rumor going around that anyone attending the JavaFX labs would be required to sign a confidentiality agreement. Quite bizzare if true.

Of the sessions attended, the best by far had to be Brian Goetz's talk on concurrency. We both developed the same sort of talk independently. However both of our talks used to just cover the trends and the problems. While I was just about to retire that talk in favor of one that showed much more about some of the tools that we could be using today to increase concurrency, Brian not only has, he delivered it in grand style. The most interesting aspect was his use of merge sort to demonstrate work stealing using a dequeue. The premise of the technique is to take a chunk of work and put it onto the head of the dequeue. Take chunk of work of head, split it in two and put both halfs back onto the head of the dequeue and repeat the process again. When the chunk size is small enough that is no longer makes sense to split it, just process it and then move onto the next chunk. When your dequeue is empty, start stealing chunks from the tail of another queue.

Interesting observations, the larger chunks are on the contended end of the dequeue leaving worker threads not wanting to return so often. This reduced the lock temperature on the tail. The head is never contended so the worker thread should be able to spin on it. There is a degenerative case when the head becomes the tail however.

Next point is changes in the language. At the end of my talk I ask the open question, would closures help with the expression of concurrency. Brian answers it with an implementation using BGGA. Clearly the answer is yes.

Though it now seems difficult to imagine how I'm going to write a different talk now that my thoughts have been tainted by Brians, I do have some other ideas that I'm working on. The bad news, good news :-) is.. Brian has really up'ed the bar (as he typically always does).

The most dissapointing session to date was hacking the OpenJDK. The presentors didn't really show much in the way of hacking. Instead what we got was a few slides on how to build OpenJDK. I'd equate the entire experience to the equivilent to that of golf, I'd much rather be playing than watching. In other words, this should have been a two hour hands on lab. Oh well, maybe next year.

The last session to comment on was the Java Champions BOF. Few questions in and it turned into a what's wrong with Sun session. That said, there were a number of interesting questions. For my part, I asked about why I wasn't able to get my lab released under a license such as Creative Commons rather then Sun Copyright. Didn't get an answer but then, I didn't expect one. However I did seem to plant a bug. Now to keep bugging them.

Today I see another set of sessions that hold promise. I've got meetings with a number of people including lunch with JetBrains, something I'm looking forward to. And of course the highlight will be finally getting to present my lab. And with that, I'm off to find my lab partners so that we can do a last minute dry run.

 

 




1. Paul Lewin left...
Thursday, 15 May 2008 11:18 am :: http://www.lewin-planet.net/oranews

Sounds like you had a load of good ideas thrown in your direction - but how did your presentation go?


Course Schedule

Java Performance Training, Oslo Norway, October 8-11


Java Performance Tuning
Chania Crete, October 14-17

Speaking @

JavaZone, September 17-18

JAOO Aarhus, September 28 - Oct 3.

Calendar

««Jul 2008»»
SMTWTFS
   12345
6789101112
13141516171819
20212223242526
2728293031

Performance Anti-Patterns

My Top Tags

                                       

Mailing List

My RSS Feeds