Our paper Java Performance Evaluation through Rigorous Replay Compilation (PDF, 1.9MB) has been accepted for publication at OOPSLA'08. This is joint work with Andy Georges and Lieven Eeckhout that I worked on before I got my PhD and left the university to start Acquia.
Good news because OOPSLA, which is short for ACM conference on object-oriented programming, systems, languages, and applications has incubated many state-of-the-art technologies, including design patterns, refactoring, aspect-oriented software development, dynamic compilation and optimization, the Unified Modeling Language, and more.
A managed runtime environment, such as the Java virtual machine, is non-trivial to benchmark. Java performance is affected in various complex ways by the application and its input, as well as by the virtual machine (JIT optimizer, garbage collector, thread scheduler, etc.). In addition, non-determinism due to timer-based sampling for JIT optimization, thread scheduling, and various system effects further complicate the Java performance benchmarking process.
Replay compilation is a recently introduced Java performance analysis methodology that aims at controlling non-determinism to improve experimental repeatability. The key idea of replay compilation is to control the compilation load during experimentation by inducing a pre-recorded compilation plan at replay time. Replay compilation also enables teasing apart performance effects of the application versus the virtual machine.
This paper argues that in contrast to current practice which uses a single compilation plan at replay time, multiple compilation plans add statistical rigor to the replay compilation methodology. By doing so, replay compilation better accounts for the variability observed in compilation load across compilation plans. In addition, we propose matched-pair comparison for statistical data analysis. Matched-pair comparison considers the performance measurements per compilation plan before and after an innovation of interest as a pair, which enables limiting the number of compilation plans needed for accurate performance analysis compared to statistical analysis assuming unpaired measurements.
DaliCMS in an Open Source Web 2.0 content management system based on Glassfish, Sun's Open Source application server written in Java. DaliCMS is developed by LodgON and ships with Mollom support out of the box. Instructions on how to configure Mollom are available on this DaliCMS project page. Thanks LodgON!
During my keynote presentation at DrupalCon Szeged this week, I announced that Angela "webchick" Byron will be my Drupal 7 co-maintainer. For the duration of one release cycle, she will help me coordinate Drupal 7 development.
The main reasons for electing webchick is her interest in usability, test-driven development and custom content types. Plus, she knows how to bring people on board and how to set them up for success. She is a massive asset for Drupal, and a role model of what a Drupal community member can be.
Sun Microsystems recently launched another cool Drupal site: Sun Learning Exchange. The site enables Sun employees to easily publish rich media training content such as videos, podcasts, and documents to be accessed by all Sun employees and customers. Media can be rated, sorted, and tagged by site members and is automatically transcoded and hosted on LimeWire. The site was built with the help of our friends at Chapter Three. Sweet!