What's new in shared memory?
- By Jack Vaughan
[Programmers Report/March 25, 2003] - [UPDATE] While a lot of attention for IBM system developers has centered in recent years on so-called Grid technology, there is other important parallel computing activity underway at Big Blue. Some of this technology is new; some is a clever update, or port, of familiar approaches.
The ways of shared-memory architecture are better known to developers and scientists in academic, scientific and similar computing operations. But others can get a peek into this world via several free utilities and libraries downloadable from IBM's alphaWorks site. TurboMP, which consists of two libraries -- TurboSHMEM and TurboMPI -- is key among them.
TurboSHMEM is a fairly complete implementation of the SHMEM API popularized by the vaunted Cray Research for its T3D/E systems. TurboMPI is a library of collective functions from the Message Passing Interface (MPI) optimized to run on shared memory nodes.
These solutions work where nodes are physically close, said David Klepacki, senior staff member and manager for the Advanced Computing Technology Center at IBM's Watson Research Center in Yorktown Heights, N.Y.
A node can usually have ''more
than one CPU,'' said Klepacki. Typically, he added, systems with eight or more CPUs in a node can benefit the most from the shared-memory techniques used by TurboSHMEM and TurboMPI.
Klepacki indicated that TurboSHMEM/TurboMPI would not be suitable for Grid-based applications. TurboMP uses high-speed memory buses in nodes rather than slower network pathways. At the same time, of course, TurboMP lets Unix systems use shared-memory segments. It uses IBM's low-level API (LAPI) to exploit IBM hardware. Platforms supported are AIX, Power4, Power5 and Pseries.
IBM took issue with some elements of "What's new in shared memory?," a story that ran in the March 25 edition of Programmers Report. The story included an interview with David Klepacki, senior staff member and manager for the Advanced Computing Technology Center at IBM's Watson Research Center in Yorktown Heights, N.Y.
Klepacki did not say a node is defined as eight or more CPUs, but rather that a node can have more than one CPU and, typically, systems with eight or more CPUs in a node can benefit the most from the shared-memory techniques used by TurboSHMEM and TurboMPI.
In addition, rather than saying shared-memory architectures were not a natural choice for people using Grids, Klepacki indicated that TurboSHMEM and TurboMPI would not be suitable for Grid-based applications.
For more on TurboMP on IBM's alphaWorks Web site: http://www.alphaworks.ibm.com/tech/turbomp
For more on Grid (and innovation) from ADT, please go to http://www.adtmag.com/article.asp?id=7021
For other Programmers Report articles, please go to http://www.adtmag.com/article.asp?id=6265
Jack Vaughan is former Editor-at-Large at Application Development Trends magazine.