FPGAs face the music
For years, Field Programmable Gate Arrays have been touted
as way of enhancing supercomputers systems. FPGA add-on cards could be plugged into the mainboards to provide a lot of extra computational power for comparatively little money and power.
Although a few military and Energy Department facilities have put
reconfigurable computing to work, they remain rare in the federal government intense computing environments.
The engineering tradeoff (and there always is a tradeoff with any new technology) is that in order to use FPGAs you have to rewrite your program to run on them.
And rewriting to FPGA is not as simple as recompiling your program to a new platform. You had to learn not only a new language, but a new type of language. In essence, you are designing circuits. From scratch, it can take months to learn how to program FPGAs, enough to offset any potential gains in efficiency (especially if you change your programs often).
Last week, movers and shakers of the FPGA market admitted as much, during various forums at the SC06 supercomputer conference, which was held in Tampa, Fl.
The learning curve 'must be much more shallow and much less steep for people to come in and be effective innovators,' admitted Eric Stahlberg from OpenFPGA
, during a SC06 forum.
Mitrionics Inc., of Lund, Sweden, is one of a handful of companies that have attempted to bridge the divide between electrical engineering and computer science. The company's Mitrionic C resembles the C programming language, at least on the surface.
But even the smartest C programmer still has a steep learning curve, admitted Mitrionics CEO Anders Dellson. Mitrionic C is actually closer to a variant of C modified for parallel programming environments.
'There is no easy way around that,' Dellson told me. 'If somebody tells you can run your ANSI C code on a FPGA, they are lying.'
Dellson is hoping to foster a community around Mitrionics, figuring there is strength in numbers. To this end the company released a software development kit
. The company hopes this free download
will kickstart more FPGA development.
The program is written with this SDK are can be compiled through Mitrionics compiler (also provided). The Mitrion Virtual Processor, a runtime element that acts as a go-between between the operating system and the FPGA card, intercepts commands earmarked for the FPGA.
Another big boost for the FPGA community is the recently announced Torrenza platform from chip-maker Advanced Micro Devices Inc., of Sunnyvale, Calif. This platform will allow system builders to use co-processors such as FPGAs, graphical processing units and other potential acceleration chips
. 'We begin to have their leverage to drive these standards for interoperability,' Stahlberg said.
Still, in the right environment, FPGAs can offer a powerful performance boost.
The National Science Foundation's National Center for Supercomputing Applications has been studying the potential use of FPGAs. Volodymyr Kindratenko, of the NCSA's Innovative Systems Lab, relied some of the findings
at the conference.
The lab found that the downside of FPGAs is that writing code for FPGAs is indeed time-consuming, and porting existing code even more so. In most cases, it actually is better to rewrite a program from scratch.
Nonetheless FPGAs show great promise, Kindratenko said. For the right jobs, an FPGA can offer as powerful a boost as the vendors claim. The lab found that a 100 MHz FPGA can have three times the performance of a regular 2.8 GHz CPU.
So maybe 2007 will finally be the year for the FPGA.
Posted by Joab Jackson on Nov 21, 2006 at 9:39 AM