Visit additional Tabor Communication Publications
November 04, 2008
As far as technology maturity goes, GPGPU (general-purpose computing on graphics processing units) is just a baby. But there's already an effort underway to produce an industry standard for this new programming model: OpenCL. With people still kicking the tires on NVIDIA's CUDA and AMD's Brook+ GPU programming languages, the effort to come up with a vendor-independent way to access GPUs for computing might seem premature. It isn't.
For one thing, OpenCL's ultimate purpose is broader than just GPGPU. It's real goal is to define a standard low-level API for a whole range of parallel architectures, including GPUs, multicore CPUs, the Cell processor, Larrabee, and DSPs. In fact, OpenCL stands for Open Computing Language, which is about as broad as it gets. The standard will impose some requirements on the hardware, such as the presence of floating-point support (which leaves out integer-only DSPs) and dynamic control flow (which leaves out pure SIMD processors, like ClearSpeed*). But the fact that the OpenCL working group includes the biggest players in chip making -- Intel, AMD, NVIDIA, IBM, Motorola, Texas Instruments, and others -- suggests that the standard will enjoy broad industry support.
Apple Computer initiated the work in an effort to find a way to extract computing performance out of GPUs and multicore CPUs in an architecture-independent way. In June 2008, the company turned over the project to the Khronos Group, an industry consortium that develops and maintains open standard, royalty-free APIs, primarily at the level of the hardware-software interface. Up until now, the consortium has been mostly focused in the graphics and media realms. OpenGL is perhaps the most well-known API in this regard. With OpenCL, Khronos has taken on a much more general-purpose standard.
"From the get-go OpenCL is intended to address both high-end systems, mobile and embedded devices," explains Khronos President Neil Trevett, whose day job is VP for the embedded mobile group at NVIDIA. OpenCL could certainly be welcome news for HPC developers considering a long term strategy with GPUs and other accelerators but wary about getting locked into proprietary hardware or software stacks. Trevett also sees a great deal of opportunity for OpenCL-enabled devices in the handheld space, where the next generation of GPUs and DSP can be used for mobile supercomputing.
Compute-intensive applications such as image processing, augmented reality, and location recognition are already on the drawing boards of a number of cell phone makers. The missing piece is tapping into the GPU and DSP processors for general-purpose computing. An API standard seems especially important to this market since the hardware moves very rapidly in the consumer handheld space. By establishing a foundational layer, OpenCL will help preserve software investments and enable platform independent applications and libraries to be developed.
But if OpenCL succeeds, what will become of proprietary solutions like CUDA and Brook+? Wearing his NVIDIA hat, Trevett says his company is fully supportive of the OpenCL effort and they're going to be careful not to set up CUDA as an OpenCL competitor. He says the two platforms offer essentially the same level of interface, and as far as they're concerned, the more ways the programming community is able to get to parallel processing goodness, the better it will be for all the players. AMD, likewise, was an early OpenCL advocate and is committed to supporting an implementation on its "stream computing" processors.
The presence of IBM and Intel in the OpenCL working group suggests that implementations for Cell and Larrabee, respectively, are in the works. Another OpenCL member, RapidMind, is looking forward to being able to use a common API for its parallel programming platform, which essentially offers a high-level programming environment that can be layered on top of OpenCL. According to RapidMind Chief Scientist Michael McCool, one of the nice side effects of the upcoming standard will be to establish a minimum set of requirements for processors, such that new hardware will be designed with the OpenCL specs in mind.
Version 1.0 of OpenCL is currently scheduled to be released in early December at SIGGRAPH Asia 2008 in Singapore. If they succeed, that's got to be some kind of industry spec development record -- basically from prototype to final in 6 months. I think the IEEE study group that was working on the 40/100 Gbps Ethernet standards took that long just to decide on the seating arrangement. Kidding aside, I suspect the rapid gestation of OpenCL has something to do with the members' motivation to get these standards in place and with the running start the project got from Apple.
Although the spec won't be ready in time for SC08, the Khronos groupies are presenting an OpenCL technical briefing and reception at the event on Monday, November 17, to bring people up to speed. If you're interested, check out http://www.khronos.org/news/events/detail/opencl_sc08/. Appetizers and cold beer will be provided!
*ClearSpeed reports that they do, in fact, support dynamic flow control, saying they "have multiple mechanisms that enable either pure dynamic flow control or predicated execution of instructions." The company believes that their are no significant barriers to supporting OpenCL on ClearSpeed hardware and it is possible that the recently announced CSPX API could be contributed to the OpenCL working group as a potentially very useful layer for users who wish to scale their applications to use multiple accelerators in a single system. Although ClearSpeed is not currently a member of the OpenCL working group, they are "in the process of engaging with the Khronos Group and the OpenCL activity," adding: "We have always endorsed the position that what the users and suppliers of heterogeneous acceleration need is an open standard as opposed to a proliferation of proprietary or third party solutions."
Posted by Michael Feldman - November 03, 2008 @ 9:00 PM, Pacific Standard Time
Michael Feldman is the editor of HPCwire.
No Recent Blog Comments
In quieter times, sounding the bell of funding big science with big systems tends to resonate further than when ears are already burning with sour economic and national security news. For exascale's future, however, the time could be ripe to instill some sense of urgency....
In a recent solicitation, the NSF laid out needs for furthering its scientific and engineering infrastructure with new tools to go beyond top performance, Having already delivered systems like Stampede and Blue Waters, they're turning an eye to solving data-intensive challenges. We spoke with the agency's Irene Qualters and Barry Schneider about..
Large-scale, worldwide scientific initiatives rely on some cloud-based system to both coordinate efforts and manage computational efforts at peak times that cannot be contained within the combined in-house HPC resources. Last week at Google I/O, Brookhaven National Lab’s Sergey Panitkin discussed the role of the Google Compute Engine in providing computational support to ATLAS, a detector of high-energy particles at the Large Hadron Collider (LHC).
May 23, 2013 |
The study of climate change is one of those scientific problems where it is almost essential to model the entire Earth to attain accurate results and make worthwhile predictions. In an attempt to make climate science more accessible to smaller research facilities, NASA introduced what they call ‘Climate in a Box,’ a system they note acts as a desktop supercomputer.
May 22, 2013 |
At some point in the not-too-distant future, building powerful, miniature computing systems will be considered a hobby for high schoolers, just as robotics or even Lego-building are today. That could be made possible through recent advancements made with the Raspberry Pi computers.
May 16, 2013 |
When it comes to cloud, long distances mean unacceptably high latencies. Researchers from the University of Bonn in Germany examined those latency issues of doing CFD modeling in the cloud by utilizing a common CFD and its utilization in HPC instance types including both CPU and GPU cores of Amazon EC2.
May 15, 2013 |
Supercomputers at the Department of Energy’s National Energy Research Scientific Computing Center (NERSC) have worked on important computational problems such as collapse of the atomic state, the optimization of chemical catalysts, and now modeling popping bubbles.
05/10/2013 | Cleversafe, Cray, DDN, NetApp, & Panasas | From Wall Street to Hollywood, drug discovery to homeland security, companies and organizations of all sizes and stripes are coming face to face with the challenges – and opportunities – afforded by Big Data. Before anyone can utilize these extraordinary data repositories, however, they must first harness and manage their data stores, and do so utilizing technologies that underscore affordability, security, and scalability.
04/15/2013 | Bull | “50% of HPC users say their largest jobs scale to 120 cores or less.” How about yours? Are your codes ready to take advantage of today’s and tomorrow’s ultra-parallel HPC systems? Download this White Paper by Analysts Intersect360 Research to see what Bull and Intel’s Center for Excellence in Parallel Programming can do for your codes.
In this demonstration of SGI DMF ZeroWatt disk solution, Dr. Eng Lim Goh, SGI CTO, discusses a function of SGI DMF software to reduce costs and power consumption in an exascale (Big Data) storage datacenter.
The Cray CS300-AC cluster supercomputer offers energy efficient, air-cooled design based on modular, industry-standard platforms featuring the latest processor and network technologies and a wide range of datacenter cooling requirements.