HPCwire

The Leading Source for Global News and Information Covering the Ecosystem of High Productivity Computing

HPCwire >> Features

Reconfigurable Computing Prospects on the Rise


Page:  1  of  2
1 | 2   All  »  

With all the recent hoopla about GPU-accelerated HPC, reconfigurable computing with Field Programmable Gate Array (FPGA) has been getting proportionally less attention. While NVIDIA has led the GPU push in HPC, there is no single vendor in the reconfigurable computing space that has jumped into the driver's seat. That hasn't kept a variety of smaller players from trying.

Unlike GPUs -- or CPUs for that matter -- FPGAs require an unconventional programming model. This stems from the fact that the chip's logic elements must be custom-configured before applications can run on them. This process is accomplished via software, which in this case is used to implement the best-fit hardware design for the application code. This is not something the average programmer is trained to do. Some have likened it to writing assembly code, but it is actually worse that. It's more like designing the assembly language itself.

The attractiveness of FPGAs is that they can be custom configured to run specific application workloads efficiently. If a different workload needs to be run, the FPGA can be reconfigured accordingly. Switching configurations takes just milliseconds.

Like GPUs, FPGAs can offer as much as one or two orders of magnitude performance gain for certain applications and can do it with a fraction of the power consumption of a CPU-only implementation. While a perception exists that there is a battle between FPGAs and GPUs for general-purpose HPC acceleration, there's actually plenty of daylight between the two architectures that suggests different classes of applications would gravitate toward one or the other. For example, most bioinformatics applications, which are integer based and highly parallel in nature, are ideally suited to FPGA silicon, but would not be particularly applicable to GPUs. Image recognition (but not rendering), encryption/decryption, and FFT-based codes are also good fits for FPGAs.

The fact that FPGAs are standard gear in high performance appliances like market data feeds, network routers, military systems, and medical imaging devices points to their applicability for streaming HPC workloads. But since FPGAs are mainly intended for embedded platforms to replace or augment digital signal processors (DSPs) or other custom ASICs, their entry into the world of servers and workstations, where the majority of HPC is performed, has been relatively recent. Fortunately developments in the reconfigurable computing arena have been coalescing over the past couple of years to make life more hospitable for FPGA-based HPC acceleration.

Since 2006, the opening up of AMD's HyperTransport interface, via Torrenza, and the subsequent licensing of Intel's Front Side Bus (FSB) has made FPGA coprocessing a much more practical endeavor. Companies like XtremeData, DRC Computer, and Nallatech have picked up on this and developed FPGA expansion modules for x86-based platforms. Prior to this, only custom solutions such as SGI's RASC (Reconfigurable Application Specific Computing) technology and Cray's XD1 system were possible.  This relegated reconfigurable computing to research projects and government buyers with deep pockets. The ability to hook an FPGA onto an x86 system bus dramatically expands the market.

Making FPGAs socket friendly also gives the devices an interesting advantage over GPUs. While NVIDIA's Tesla and AMD's FireStream devices communicate to the host via a PCIe link, socketed FPGAs can talk to the CPU directly, using the native processor bus. This provides latencies on the order of 250 ns -- less than half what can be achieved over PCIe. Being on the bus also means an FPGA has peer access to the processor's memory and can operate without host intervention.

With FPGAs playing nice with x86 hardware, reconfigurable computing toolmakers such as Mitrionics, Celoxica, and Impulse Accelerated Technologies have been hooking up with the FPGA board makers and OEMs (like HP) to offer more integrated acceleration solutions. The toolmakers offer programming environments that allow developers to write C (or C-like) code that can be compiled into an FPGA logic design, which can subsequently be loaded onto the chip. Although this alleviates the developers from the more difficult task of doing low-level hardware design via VHDL or Verilog, even at this level the programming of FPGAs remains the most tenuous step in reconfigurable computing.

The fundamental problem is that the tools offered do not entirely shield the programmer from hardware design issues, nor do they use a standard programming environment. In the case of Celoxica, Handel C is used as a hardware design language to define the FPGA implementation. Similarly, Mitrionics invented Mitrion C, which employs the Mitrion Virtual Processor as an intermediate representation of the final hardware design. In both cases, these languages are not standard C in any sense, so they rely upon custom compiler, runtime and debugger technologies and force the customer to maintain vendor-specific source code.

Impulse Accelerated Technologies created Impulse C, which is compatible with standard C, but extends the language's capability with some extra data types and library functions for FPGA computing. This has the advantage of allowing the developer to maintain a C source base and use standard debugging tools for development. Once debugging is complete, the Impulse compiler is used to generate the FPGA bitmap image corresponding to the C code intended for acceleration. Impulse C is designed for streaming applications, but can be adapted for a shared memory model as well.

Page:  1  of  2
1 | 2   All  »  

HPCwire on Twitter

Article Tools

  • Print This Page
  • Bookmark This Article

Share Options

(Digg, Technorati, more)


Subscribe

Discussion

There are 1 discussion items posted.  

Great Article
Submitted by llaurich on 12/04/2008 - 11:25AM


Michael,

Spot on. The article covers this key technology status quite accurately.

Good work,

Thanks,

Larry Laurich
CEO DRC Computer Corp

Post #1

HPC in the Cloud Part 2
People to Watch 2010


Top Headlines

Australia Commissions Cray Supercomputer

Mar 19 | OfficialWire | New super to support intelligence work Down Under. Read more...

Intel Partners See 'Easy' Upgrade Path With Xeon 5600 Chips

Mar 18 | ChannelWeb | Westmere parts already showing up in HPC machines. Read more...

AMD: OEMs primed for Opteron 6100s

Mar 17 | The Register | But what about the tier ones? Read more...

Arrival of the Desktop Supercomputer

Mar 17 | Cadalyst Magazine | A new generation of workstations is changing the nature of technical computing. Read more...

Scheduling HPC In The Cloud

Mar 17 | Linux Magazine | Latest iteration of Sun Grid Engine able to tap into Cloud. Read more...

Featured Whitepapers

Virtualization for Aggregation And The vSMP Architecture™

Jan 12 | | In-depth look at vSMP Foundation server virtualization technology, technical implementation, use cases and capabilities. The technical whitepaper provides an architectural overview and details on the three vSMP Foundation products: vSMP Foundation for SMP, vSMP Foundation for Cluster and vSMP Foundation for Cloud.

Copper Cable Technologies for High Performance Computing

Jan 18 | | This white paper discusses Gore’s copper cable assemblies, and how they continue to exceed the standards for providing reliable, cost-effective solutions for high-performance computer applications.

Multimedia

Webcast: Virtualized Data Center Roundtable

Join this online panel discussion for live Q&A with leading industry experts, analysts, and end-users to discuss the latest innovations, best practices, barriers to implementation, and measurable benefits of server virtualization with a particular focus on today's real world solutions.

Webcast: Watch SC09 Birds of a Feather Video: Scalable Fault-Tolerant HPC Supercomputers

Learn about scalable fault-tolerant architectures and examples of energy efficient and scalable supercomputing clusters using dual QDR InfiniBand to combine capacity computing with network failover capabilities with the help of programming languages such as MPI and a robust Linux cluster management package.

Webcast: High Performance Computing for a Smarter Planet

LIVE@SCO9: The IBM team discusses new innovations in hardware, software and services that help clients better understand their workloads and get insight from their R&D efforts. Technology demonstrations include the soon-to-be-released Power7 HPC processor, the DCS990 system with 2.4 petabytes of storage, the xCAT management tool, secure HPC cloud computing and more. Winners of two HPCwire Readers' and Editors’ Choice Awards! Take the IBM virtual tour at SC09 or more information go online to: http://www-03.ibm.com/systems/deepcomputing/sc09.html

SC09 HPC in the Cloud

Newsletters

Stay informed! Subscribe to HPCwire email Newsletters.






HPC Job Bank


Featured Events

HPC User Forum DICE
2010 High Performance Computing Linux Financial Markets
Cloud Computing Expo
Cloud Lab
ESC
DEISA PRACE Symposium