The 41st IPP Symposium

IBM STM API and X10 Extensions

Maged Michael and Vijay Saraswat, IBM

In this talk we present the main components of the API for the IBM STM runtime system. The common IBM STM runtime is written in C and runs on a variety of platforms as well as architectural models, and supports Java and C/C++ compilers as well as direct programmer instrumentation. The X10 programming language and common patterns in high performance computing present opportunities for STM optimization. We present STM API extensions that enable these optimizations. The IBM STM runtime is available as an open source, released through the IBM Concurrency Building Blocks project. Binaries of the IBM XL C/C++ Compiler for Transactional Memory for AIX and select versions of the STM runtime libraries were released through IBM AlphaWorks.

Bios: Maged Michael is a research staff member at the IBM Thomas J. Watson Research Center. He received the Ph.D. degree in computer science from the University of Rochester. His research interests are primarily in concurrent programming. He is the designer of well-known concurrent algorithms for non-blocking data structures and multithreaded memory management. Several of his algorithms are used in commercial products.

Vijay Saraswat joined IBM Research in 2003, after a year as a Professor at Penn State, a couple of years at startups and 13 years at Xerox PARC and AT&T Research. His main interests are in programming languages, constraints, logic and concurrency. At IBM, he leads the work on the design of X10, a modern object-oriented programming language intended for scalable concurrent computing.

Talk slides