News

In part 2 of "Java 6 threading optimizations" article series, author Jeroen Borgers examines various threading optimizations and JVM arguments to manage them. He also talks about factors like On Stack Replacement (OSR), Heap Management and Lock object data size which could significantly affect the performance of multi-threaded java applications.

Microsoft's The Parallel Computing Platform team will be presenting on Concurrent, Multi-core Programming for Windows and .NET during the PDC pre-conference Sessions. These sessions are day-long, in-depth presentations on specific topics. Held the Sunday before the main conference, a separate registration is required.

Research on the topic of Multiple VM (MVM) Ruby will be conducted at the University of Tokyo together with Sun's JRuby team. The work will investigate issues such as communication between VMs and a common API across all Ruby implementations, with solutions provided initially for Ruby and JRuby.

Rubinius adds a new feature called "Multi-VM", which allows to run multiple Ruby VMs inside an OS process. We talked with Evan Phoenix of the Rubinius project about the benefits and implementation of this feature.

Multi-core processors offer new performance opportunities. Shekhar Borkar from Intel highlighted, however, that software development practices have to be retooled to leverage this potential. In this vein, Prof. Jorge L. Ortega-Arjona from the National Autonomous University of Mexico has recently introduced a new architectural pattern for parallel programming: Parallel Hierarchies pattern.

Fibers were recently in the Ruby 1.9 branch. The Coroutine-like concept has many uses, such as implementing lightweight concurrency and others. We look at the concept and influences of Fibers in Ruby 1.9, as well as code samples.

With multi-core CPUs finding their way into server farms and the desktop not far behind, new techniques to take advantage of them are desperately needed. Microsoft is seeking to address these with Parallel LINQ, a research project to add automatic multithreading to LINQ queries.

Two recent items on the internet have looked at the topic of multi-core processors and Java. A recent article by Randall Scarberry of JavaWorld.com looks at using the Java concurrency API to write multi-threaded algorithms. Billy Newport of IBM also recently written a blog post detailing how Java may not be well suited for multi-core processors.

With dual and quad-core CPUs finding their way onto personal computers and 32-core processors predicted in the next 3 to 5 years, concurrency is becoming a major concern for developers. Joe Duffy, author of Professional .NET Framework 2.0 and the upcoming Concurrent Programming on Windows presents his opinions and recommendations for creating reusable, concurrent libraries in .NET.

The CLR can be hosted in a wide variety of environments. Out of the box these include Internet Explorer, IIS, and SQL Server 2005, and developers are free to create their own. Unfortunately, one thing they don't support is fibers.