X10(ID:8172/)
IBM high productivity HPC language
- Country: us
- Began: 2004
- Type:HPF
IBM high productivity HPC language
One of the DARPA hpcs languages
References:
Ebcioglu, Kemal; Saraswat, Vijay and Sarkar, Vivek; "X10: Programming for Hierarchical Parallelism and Non-Uniform Data Access" "Impact of Next Generation Processor Architectures On Virtual Machine Technologies", colocated with the ACM OOPSLA 2004 conference, Vancouver, October 2004 preprint view details
Abstract: The challenges faced by current and future-generation largescale systems include: 1) Frequency wall: inability to follow past frequency scaling trends, 2) Memory wall: inability to support a coherent uniform-memory access model with reasonable performance, and 3) Scalability wall: inability to utilize all levels of available parallelism in the system. These challenges manifest themselves as both performance and productivity issues in the use of large-scale systems. X10 is an experimental modern object-oriented programming language being developed to help address the second and third of these three challenges. It is intended for highperformance, high-productivity programming of large-scale computer systems with non-uniformities in data access and coherence, as well as multiple heterogeneous levels of parallelism. This paper provides a summary of the X10 language and programming model, and discusses its applicability to future processor architectures and runtime systems.
Sarkar, Vivek; Ebcioglu, Kemal and Saraswat, Vijay "X10: A Programming Model for Hierarchical Heterogeneous Parallelism"
view details
Abstract: X10 is a new programming model extending state-of-the-art object-programming languages to support high-end, high-performance, high-productivity computing. This paper provides a summary of the X10 language, it's programming model, and discuss its applicability to next generation processor architectures. X10 supports its design goals by introducing a few core constructs organized around the central notion of a place. A place is an abstraction of a data-coherent multi-processor. A computation, consisting of millions of activities may run over hundreds of thousands of places. Large arrays may be distributed across multiple places. X10 allows an activity to dynamically create activities at multiple places, and allows an activity to return a future to the invoking activity. An activity may update local data-objects using atomic sections. Multiple activities at multiple places may be phased through the use of clocks, which allow the repeated detection of stable properties of networks of activities.
External link: Online copy
pdf
in LaR 2004 Language Runtimes '04 "Impact of Next Generation Processor Architectures On Virtual Machines" (part of OOPSLA 2004) view details
|