Java Programming in a Multicore World
Java Programming in a Multithread World
With the increasing availability and use of multicore processors Java
developers need to have a proper understanding of the Java memory model.
Multithread applications that work nicely on a single-core processor might
exhibit "inexplicable" deficiencies when running on a multicore processor
platform. Often this is due to the substantially more aggressive
caching techniques used on the processor level in combination with misconceptions
regarding the Java Memory Model on the programmer's side. At the same time
the expectations regarding scalability are growing. On a multi-cpu platform
users expect that an application should scale, that is, its performance
should increase with the number of available cpus. This does not
occur automatically, but has to be built into the application.
In order to put things into perspective and to illustrate the ever increasing
demands imposed on Java developers the tutorial discusses the use of concurrency
in Java - its techniques and its tools - in past, present, and future.
We observe a trend towards an increasing amount of asynchronous processing
and substantial efforts for elimination of lock-based synchronisation.
Which role does the memory model play in this context? How do we
achieve the required scalability? What is locked-free programming?
What are future trends? |
|
PREREQUISITES
|
|
Level:
|
intermediate |
Duration:
|
90 min |
Prerequisites:
|
Attendants should be familiar with Java and the core concepts
of concurrent programming in Java. |
Presented at:
|
ACCU 2008
,
Oxford, UK, April 2-5, 2008
JAX 2008
, Wiesbaden, Germany,
April 21-25, 2008
Java Forum Stuttgart 2008
,
Stuttgart, Germany, July 3, 2008
W-JAX 2008
, München,
Germany, November 3-7, 2008
JSF Days 2009
, Vienna,
Austria, April 1-3, 2009
J-Spring 2009
, Bussum,
Netherlands, April 15, 2009
Scandinavian Developer Conference
2010
, Göteborg, Sweden, March 16-17, 2010
Java Developer Conference
2010
, Krakow, Poland, October 7-8, 2010 |
If you are interested to hear more about this
and related topics you might want to check out the following seminar or
skim through some further reading:
|
|
Seminars
|
Articles
|
|