Experiences with an SMP Implementation for X10 based on the Java Concurrency Utilities

Authors:  Rajkishore Barik, Vincent Cave, Christopher Donawa, Allan Kielstra, Igor Peshansky, and Vivek Sarkar

Conference:  Workshop on Programming Models for Ubiquitous Parallelism (PMUP 2006), held in conjunction with PACT 2006, Seattle, Washington, September 16, 2006

Abstract:  It is now well established that future computer systems are rapidly moving from uniprocessor to multi-core configurations, and using parallelism instead of frequency scaling as the foundation for increased compute capacity. Unlike previous generations of hardware evolution, this shift towards ubiquitous parallelism will have a major impact on software. Modern OO languages, such as Java™ and C#, together with their runtime environments, libraries, frameworks and tools, have made concurrent programming accessible to mainstream application developers, rather than just system programmers. However, the facilities for concurrent programming in these languages have also revealed several drawbacks of parallel programming at the level of unstructured threads with lock-based synchronization.
X10 is an experimental new language currently under development at IBM in collaboration with academic partners. The goal of the X10 project is to build a full language system -- including a new language, compiler, optimizer, runtime system, and programming environment -- that provides a 10 improvement in development productivity for parallel applications. As part of this agenda, we have developed an SMP implementation for X10 built on the Java Concurrency Utilities, also known as java.util.concurrent or the JUC. This paper summarizes our experiences to date with the SMP implementation based on the JUC, and outlines directions for future work.

Download:  postscript file (1495K), PDF file (212K)

BibTeX Entry: 
  Author      = {Rajkishore Barik and Vincent Cave and Christopher Donawa
                 and Allan Kielstra and Igor Peshansky and Vivek Sarkar},
  Title       = "Experiences with an {SMP} Implementation for {X10} based
                 on the {J}ava {C}oncurrency {U}tilities",
  Booktitle   = "Workshop on Programming Models for Ubiquitous Parallelism
                 (PMUP 2006)",
  Year        = "2006",
  Month       = "September",
  Day         = "16",
  Location    = "Seattle, Washington",

Last modified on
Igor Peshansky