The Leading Source for Global News and Information Covering the Ecosystem of High Productivity Computing
From the Editor | Main Blog Index
May 11, 2007
The dance between computer hardware and software has been going on for fifty years. In times past though, the relationship was kept at arm's length. The hardware engineers just cranked out the chips and threw them over the fence to the programmers. With the coming of multicore processors, the hardware/software connection has become more intimate. Chipmakers realize that multicore architectures are going to fundamentally change the software model. So if they want to move product, they have to narrow the gap between the hardware and the applications.
And this is happening. To one degree or another, Intel, IBM, AMD, NVIDIA are all partnering with ISVs and research organizations, providing early access to hardware, software support and training. The chipmakers have introduced software support, in the form of compilers and processor interface libraries, to help tool developers bring up code on their hardware. IBM offers an SDK and other tools for the Cell processor; AMD has introduced its "Close to Metal" program for GPU programming; and NVIDIA has its CUDA platform for their GPUs. Although I'm not going to talk much about multicore x86 software support in this article, Intel has a wide range of commercial products, software tools, and educational initiatives to help developers wrap their minds around multicoredness.
In high performance computing, the strategy is beginning to pay off. The most recent example of this is how rapidly development environments appeared for the relatively new IBM Cell BE and general-purpose GPU processors. The chips from the fab were barely cool before PeakStream and RapidMind delivered application development platforms for the new accelerator devices. If these products are successful, they will help create an important synergy between the chip vendors and the software developers.
Using GPUs and Cell processors as stream processing accelerators is creating a good deal of excitement in the HPC crowd. Hardly a week goes by when there's not at least one announcement of someone using these processors to speed up their application. Target workloads include 3D visualization, broadcast encoding, medical imaging, multimedia content generation, image and signal processing, financial analysis, seismic analysis, large-scale database transactions and enterprise search. This corresponds to almost any data-intensive application that requires lots of computational muscle. The broad applicability of these multicore accelerators for HPC has attracted the attention of software developers who would love to exploit this relatively cheap source of hardware.
In announcing their platform this week, RapidMind claimed support for the IBM Cell processor and the latest NVIDIA and AMD/ATI GPUs for high performance computing applications. The company says multicore x86 support is not far behind. Our feature article this week talks about how the RapidMind platform is targeting the hardware-agnostic application developer for these emerging architectures.
Academicians are also taking a hard look at the newer multicore accelerators. At the University of Tennessee (UT), Jack Dongarra and the team at the Innovative Computing Laboratory have been working with the IBM Cell processor. At their lab, a PlayStation3 (PS3) cluster of four systems is being used as a research platform for scientific computing. For the price of around $2400, they have built a system that offers 600 gigaflops (single-precision floating point) of peak performance. Although the PS3 was never designed to be a cluster node for a high performance computing system, its price and ubiquity have attracted HPC folks looking for cheap FLOPS. The UT team is evaluating programming models for the PS3 cluster and is looking at some of the limitations of the architecture for high performance computing.
In the process, the UT researchers have produced a technical report on using the PlayStation 3 as an HPC platform called "A Rough Guide to Scientific Computing On the PlayStation 3" (http://www.netlib.org/utk/people/JackDongarra/PAPERS/scop3.pdf). Less glib than an "IBM Cell Programming For Dummies" but more accessible than your average technical report, the guide should be required reading for developers who are new to technical computing on the Cell processor.
The guide outlines the Cell chip and PS3 hardware capabilities, the system software support available, and how to set up a lab-sized PS3 cluster. It also delves into programming techniques and offers some real-world examples. One of the more useful aspects of the guide is that it discusses a number of commercial and academic software platforms for the Cell architecture. Not meant to be the last word on Cell/PS3 software development, the report manages to give a balanced overview of the technologies currently available. Here's a clip from the introduction:
"As exciting as it may sound, using the PS3 for scientific computing is a bumpy ride. Parallel programming models for multi-core processors are in their infancy, and standardized APIs are not even on the horizon. As a result, presently, only hand-written code fully exploits the hardware capabilities of the CELL processor. [Editor's note: RapidMind would certainly dispute this.] Ultimately, the suitability of the PS3 platform for scientific computing is most heavily impaired by the devastating disproportion between the processing power of the processor and the crippling slowness of the interconnect, explained in detail in section 9.1. Nevertheless, the CELL processor is a revolutionary chip, delivering ground-breaking performance and now available in an affordable package. We hope that this rough guide will make the ride slightly less bumpy."
The report contains a good discussion of the limitations of the PS3 for scientific computing including the memory bandwidth and capacity, the network interconnect speed, and shortcomings of the floating point implementation. These issues are discussed in more technical detail in a companion report: Limitations of the PlayStation 3 for High Performance Cluster Computing (http://www.netlib.org/utk/people/JackDongarra/PAPERS/ps3-summa-2007.pdf).
Some of the floating point weaknesses that limit the Cell's use in scientific computing are going to be addressed in future generations of the processor. According to the UT report, IBM is planning to pump up the double-precision performance from 14 to 102 gigaflops in the next implementation -- no word if IEEE 754 floating point support issues will be addressed as well.
GPUs have similar floating point limitations. If NVIDIA and AMD want to penetrate the technical computing market with GPUs, they're going to have to make some decisions about floating point capabilities on these devices. Neither vendor offers any double precision hardware today, and IEEE 754 compliance is still a work in progress. However, NVIDIA's newest G80 device has included some support for rounding modes, overflow and NaN. (For a good discussion of floating point precision issues, read Michael Wolfe's article in this week's Feature section.)
The question here is how far will NVIDIA and AMD evolve their GPU architectures away from their graphics roots in order to support scientific floating point capabilities. The GPU engineers will also have to consider memory error correction and lower power consumption to offer a more robust HPC solution.
The market should be able to figure out how to balance this tension between application requirements and hardware capabilities. Although I've expressed my doubts about the capitalistic approach to cutting-edge supercomputing, that's not the case for commercial HPC. If GPUs and Cell processors were not applicable to industrial HPC applications, companies like PeakStream and RapidMind wouldn't exist, and researchers like Jack Dongarra would probably be working on something else. If the HPC software community figures out how to leverage the current generation of multicore hardware and starts to build a user base, the chipmakers will dance a little closer to the software.
-----
As always, comments about HPCwire are welcomed and encouraged. Write to me, Michael Feldman, at editor@hpcwire.com.
Posted by Michael Feldman - May 11 @ 12:00AM
Michael Feldman is the editor of HPCwire.
And don't forget HP... by JohnWest
Niche CPUs by voqk
kilowatts per hour? by markhahn
multicore programming paradigms by voqk
Re: It's the End of the World as We Know It? by mikeb
The missing link by icehawk
Actually, they're both right by JohnWest
Education and HPC by $user.username
Dinosaur HPC by $user.username
Re: Anticipating the Fall: Application Performance Has Chased Multicore's Speed Right Over a Cliff by tuccillo
Re: Anticipating the Fall: Application Performance Has Chased Multicore's Speed Right Over a Cliff by $user.username
Re: Anticipating the Fall: Application Performance Has Chased Multicore's Speed Right Over a Cliff by $user.username
Innovation and $ by $user.username
Innovation vs innovation by $user.username
Innovation by $user.username
changes in the HPC market by $user.username
Even though the cost of servers still dominates the datacenter budget, storage is actually on a steeper growth curve. HPC storage, in particular, is being singled out as high-growth opportunity. Vendors are scrambling to keep up.
Read More...
Google datacenters most energy efficient; Cluster Resources to demo Moab Hybrid Cluster; Red Hat Linux releases HPC distro. John West recaps those stories and more in our weekly wrap-up.
Read More...
Last week, IBM and King Abdullah University of Science and Technology announced a collaboration to build "Shaheen," a 222 teraflop Blue Gene/P supercomputer. When deployed in 2009, it will represent the most powerful computer in the Middle East and one of the top systems in the world.
Read More...
Oct 06 | The Register | Does the HP Oracle Database Machine represent InfiniBand's big chance to break out its HPC niche? Read more...
Oct 06 | BusinessWeek | A body scan can save a lot of time in the fitting room, and fields from medicine to architecture are adopting 3D computing applications. Read more...
Oct 03 | UCSD News | Despite the evolution of computer science over the past 30 years, structural engineering -- hindered by a reluctance to adapt to digital innovations -- has remained relatively unchanged as a discipline. Read more...
Oct 02 | New York Times | Silcon Valley is starting to feel the effects of the credit crunch. Read more...
Oct 01 | Data Center Knowledge | Google today disclosed details of its data center energy usage, confirming that it operates some of the most efficient facilities in the world. Read more...
Sep 04 | | Disk drives are approximately 250 times denser today than a decade ago. This is good news for users who are creating, manipulating and storing more data than ever before. It gives them an opportunity to derive more value from their stored data and lowers the capital acquisition and operating expense associated with that data.
BlueArc's Titan architecture represents an evolutionary step in file servers by creating a hardware-based file system that can scale bandwidth, IOPS, and overall data capacity well beyond conventional software-based devices. With its ability to virtualize a massive storage pool of up to four usable petabytes of tiered storage, Titan can scale with growing data requirements, offering a competitive advantage for businesses, researchers, or other enterprises seeking to better manage data growth while still ensuring optimal performance.