Java and Multiple Cores: A Brief History


To get traffic flowing faster on roads, planners don't raise the speed limit, they build more lanes. That's what chip manufacturers have been doing for some time now as traffic per core has become too hot to handle.

And, all the way back since 1998 with the introduction of the E10K with 64 parallel processors, that's what the HotSpot JVM has been doing: parallelizing the work of the JVM so that garbage collection, classloading and other supporting tasks happen concurrently. Which is exactly how to get the traffic flowing faster on the multi-core superhighway.

Great for scaling Java web application performance on multiple cores, because they are inherently multithreaded (and you got your own thread to load this page). But for computing intensive apps like large monte carlo simulations, or processing massive data sets, more traffic management is needed at the application level to juice the system.

With the addition of the Java Concurrency framework back in Java SE 5.0, developers with a big gnarly task to give to a multi-core processor have an API to break it down into multiple parallel threads using, for example, task scheduling and sychronization policies. Helping them use all the lanes on the computing freeway instead of just one.

And there's more good news in the works: a new, fully concurrent garbage collector and more concurrency utilities for developers in JDK 7; and perhaps direct support for concurrency in Java EE too.
Comments:

ddd

Posted by guest on October 31, 2008 at 01:44 AM PDT #

Interesting, may be can you write more about java and multiple cores or inform some interesting links? Not saying about superficial stuffs, but also about JVM and how JIT optimize the code (if it does). Thank you!

Posted by Felipe Albrecht on November 30, 2008 at 01:43 PM PST #

By dividing the living rooms into equal squares, it turns out that for most games, many of the squares contain unused toys that can be safely put away.http://www.watchgy.com/
http://www.watchgy.com/tag-heuer-c-24.html

Posted by rolex submariner on December 27, 2009 at 06:19 PM PST #

Post a Comment:
  • HTML Syntax: NOT allowed
About

A blog all about Java in all its flavors on all client platforms from smartcards to desktops and everything inbetween.

Search

Categories
Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today
Feeds