Cliff Click,

Azul Systems


Nonblocking (NB) algorithms are something of a Holy Grail of concurrent programming–typically very fast, even under heavy load, and they come with hard guarantees about forward progress. The downside is that they are very hard to get right. I have been working on writing some nonblocking utilities over the last year (open sourced on SourceForge in the
high-scale-lib project) and have made some progress toward a coding style that can be used to build a variety of NB data structures: hash tables, sets, work queues, and bit vectors. These data structures scale much better than even the concurrent JDK software utilities while providing the same correctness guarantees. They usually have similar overheads at the low end while scaling incredibly well on high-end hardware.

The coding style is still very immature but shows clear promise. It stems from a handful of basic premises: You don’t hide payload during updates; any thread can complete (or ignore) any in-progress update; use flat arrays for quick access and broadest-possible striping; and use parallel, concurrent, incremental array copy. At the core is a simple state-machine description of the update logic.

With more than twenty-five years experience developing compilers, Cliff serves as Azul Systems Chief JVM Architect. Cliff joined Azul in 2002 from Sun Microsystems where he was the architect and lead developer of the HotSpot Server Compiler, a technology that has delivered dramatic improvements in Java performance since its inception.

Previously he was with Motorola where he helped deliver industry leading SpecInt2000 scores on PowerPC chips, and before that he researched compiler technology at HP Labs. Cliff has been writing optimizing compilers and JITs for over 20 years. He is invited to speak regularly at industry and academic conferences including JavaOne, JVM, ECOOP and VEE; serves on the Program Committee of many conferences (including PLDI and OOPSLA); and has published many papers about HotSpot technology. Cliff holds a PhD in Computer Science from Rice University.


Date: 2010-May-31     Time: 16:00:00     Room: Anfiteatro do Complexo Interdisciplinar (IST)

For more information: