In-Socket Accelerators — When to Use Them

By Kevin Urban

June 5, 2008

Today’s system architects have a tough enough job solving difficult architectural problems for applications like 40G line cards, HD Video Transcoding Systems, and next generation RADAR applications. However the most demanding part of their job is they also need to draw the difficult line between hardware and software; keeping manpower requirements in the equation, costs in check, and architecting a solution that can be built inside the market required timeframe. This is all in a day’s work for some, but an almost impossible task for many.

Since software is generally cheaper to develop and the number of software engineers outnumber hardware engineers by almost an order of magnitude, the explosion of software-based solutions on x86 platforms has arguably become the de facto standard for many platforms. Many of these platforms were (and still are) built from the previous generations of CPUs with reusable software, and thus leveraged faster next-generation CPUs or multicores for their roadmap. That is, until now.

For 2008, the industry buzzwords are ”hardware acceleration.” CPU vendors are integrating custom integrated IP into their chips. AMD and Intel are creating an ecosystem for third party accelerators, named Torenzza and QuickAssist. GPU vendors are setting their sights on general purpose functionality. Meanwhile, a host of other chip companies, too many to mention, are developing new products that target this high performance computing (HPC) market.

A little known fact in the HPC community is that the embedded computing market has always solved their problems with a combination of CPUs and accelerators. Due to different space, weight, power, and environmental requirements for high performance embedded computing (HPEC), a large portion of those accelerators are implemented with field programmable gate arrays (FPGAs) from companies like Altera, Xilinx, and others.

As these two markets collide, the emergence of some of the world’s largest companies from HPC and HPEC are now working together (Intel, AMD, Altera, and Xilinx) to make x86 CPUs with their own internal accelerators and easy to access external FPGA accelerators the solution of choice for both HPC and HPEC. As CPU-bound, software-only solutions require the benefits of hardware acceleration to remain competitive, architects must figure out what to accelerate and how to make the price, performance, and power trade-offs that meet market requirements.

What do I accelerate?

In these examples, we will concentrate on FPGAs, but many of the concepts can be applied to other types of accelerators. A simplistic and very common place for designers to start is to profile your C/C++ code, find the routines that take most of your clock cycles, and start your efforts to increase performance or remove bottlenecks there. Hardware designers have done this for years and found the following types of applications that make sense to run on FPGA hardware. Here are some typical applications that can be parallelized beyond a factor of 10x improvement:

1)  Filters – FIR, IIR, Poly-Phase.
2)  Fast-Fourier Transforms (FFT).
3)  Encryption – AES, TDES, DES, etc.
4)  Video Transcoding – MPEG2, H.264, VC-1, and others.
5)  Compression – ZLIB, GZIP, etc.
6)  Bioinformatics – Smith Waterman, BLAST, ClustalW.
7)  Random Number Generation (RNG) – SOBOL and Mersenne Twister for Monte-Carlo.
8)  Medical Imagining – CT Back Projection.
9)  Packet and Network Processing (IPv6, Deep Packet Inspection).
10) Market Data – FIX, FAST FIX, OPRA, etc.

Another way to describe or find these algorithms in your code is to think of them in one of two ways:

1)  Bit-level processing with deep instruction pipelines.
2)  Vector-based processing of large amounts of data.
 
Both of these are trying to analyze data in ways that are not the standard 32 bit or 64 bit instruction, which creates overheard for the CPU or GPU because it has a fixed data and instruction set size. Additionally, many of these functions can have very deep instruction pipelines, which in an FPGA can be defined as deep as necessary. FPGAs can be programmed to be 3 bit machines in the example of BLAST that can be parallelized hundreds of times with instruction pipelines over one hundred deep. This creates a single resulting chip which can contain a 1000-core “machine” running at 300MHz or 100x faster than a single 3GHz CPU core.
 
Another example is encryption, which contains many XOR functions at the bit level, which again can be created easily in a FPGA, parallelized thousands of times, to create a machine that can encrypt data at 4GB/s (Bytes, not bits) using less than 50 percent of a large 65nm FPGA.
 
A secondary effect of FPGA technology is substantial power savings over today’s high-end CPUs or GPUs. The largest FPGA built on 65nm technology can consume 25 to 30 watts of power versus a x86 CPU, which can run over 100 watts, or worse, a GPGPU, which can easily run over 200 watts. Combine this power savings with any of the examples above and you can have two orders of magnitude improvement on a performance/watt metric. This can be hard to ignore if you are in a design environment that has a limited power budget, like a UAV (Unmanned Aerial Vehicle), or a financial datacenter with major power/cooling concerns.

How do I design my FPGA accelerator?

In order to design an accelerator, you need to decide if you need acceleration in the first place. If someone can achieve what they need with just moving from dual to quad cores or with a C-code rewrite, then that is usually the easier. FPGA acceleration and other exotic technology come into play for those designers who are really pushing the envelope.

The recent push towards industry-standard APIs for accelerators allows architects to build their own accelerated systems with CPU+FPGA rapidly, and avoid “single vendor” lock-in and end-of-life (EOL) issues. Additionally, open standard organizations like OpenFPGA (www.openfpga.org) are making a concerted effort to help take FPGAs into the mainstream of accelerated computing. By taking an open standards approach for API’s and benchmarks, and by bringing the community together, they are bringing the combination of x86 CPU+FPGA closer to mainstream HPC and even the desktop.

As an alternative to the standard programming API approach, many designers would prefer to just purchase a working acceleration technology and use vendor-supplied building blocks to implement their algorithms. Products like those from Cavium and LSI/Tarari are attractive here. Similarly, out-of-the box FPGA IP solutions like XtremeData’s Floating-Point Vector Math Library, Fast-Fourier Transform, and Random Number Generation offer rapid development options. These solutions are pre-programmed hardware solutions that fit into the design flow very easily. No hardware expertise is needed to use them, which is why they are gaining a lot of attention in the marketplace. Plug them into your system, compile a library, or make a function call in your C/C++ routine, and you are off to the next task.

Finally, a third solution is to hire a hardware expert to help build your own secret-sauce algorithm. FPGA and ASIC consulting companies help customers build exactly what they want, make HW/SW trade-offs, and in some cases help train their customers to maintain and enhance the hardware design. If you need acceleration to be part of your differentiation, then this can be a very profitable and easy way to approach new technologies.

It’s faster… now what? (How do you measure your performance, price, power gains?)

Typically, designers who are looking at acceleration techniques are looking for about a 10x performance improvement of their total application to make it worth the effort. Depending on the goal of the system, the units of measure for success can vary wildly.

Power

For example, every watt that can be saved in a UAV will yield many different advantages to the system: Power and cooling savings, which equals less weight, which means that weight can be replaced by fuel, which means the UAV can fly further or faster, which might be critical to a new mission. Thus a solution that leverages an accelerator might be of equal or “only 2x the performance” to the existing system, but if that yields solutions that are half the size or power, then that “only 2x” savings becomes quite significant.

Performance

Another example of how applying acceleration techniques can pay off is raw performance. For example, Investment banks, hedge funds, and boutique trading firms know that increased performance of Monte-Carlo simulations for derivatives pricing and risk assessments can have big money implications. The key requirement in this space is maximum performance of double-precision floating point calculations. This is one of the main reasons why these institutions are turning toward multicore CPUs, and when maximum performance is required, increasingly towards FPGA-based solutions. For example, today’s largest 65nm Stratix III FPGAs from Altera can support up to 40 gigaflops of sustained double-precision floating point throughput at around 30 watts. Importantly, from the end-user poin of view, the ability to finish these calculations faster and more accurately than your competitor can yield tens of millions of dollars in increased profits from exploiting arbitrage opportunities.

Human Benefit

Other examples include FPGAs used for algorithms such as BLAST in the bioinformatics space, which if done faster, can help unravel the codification and functionality of genes and proteins, with major implications for the drug-discovery process. In medical imaging, back-projection algorithms implemented in FPGAs allow for smaller, cheaper, and faster x-ray CT scanners, which can put life-saving information in the hands of more doctors that need it. Increased precision in a next generation radar system can lead to better missile defense or earlier warning of possible threats, which can save lives.

Other

In general, there are dozens of ways to measure acceleration success or lack of it. It will take some effort to evaluate, implement, and then to maintain them. However, many companies are having great success “however they measure it,” using some of the techniques mentioned so far in this article. To help you find other terms for success, you can address these questions: Does 100x performance break a paradigm? Does this create an entirely new market? Does it provide value that cannot be defined by dollars saved, but by lives saved, breakthroughs made, or other similar metrics? These questions really measure the intangible value of acceleration, and the business-savvy people are the ones who can extract tangible value from these type of differentiators.
 
Think Differently: Re-look at the algorithm

Lastly, the industry is beginning to realize that many of the implementations that we use today are the way they are because of 40 years of von Neumann programming and thinking. Since college (or even earlier) many of today’s programmers have been taught, trained, and lead into thinking that a serial approach is the best and only approach to every problem. The majority of today’s engineers tackle problems the way they were taught or the ways that have worked in the past. Now that the “core wars” are virtually over that 40 years of legacy is breaking. GPUs now have 128 cores and growing. FPGAs can be designed to have thousands of cores, and the word “accelerator” has become a mainstream term once again. Questions like “Can we use direct linear filtering rather than transforming to the frequency domain?”; “Can my accelerator put compression/decompression closer to the CPU so bottlenecks are removed?”; “Do I use double-precision floating point because it is easy or because I need it?”; and many others need to be asked and answered at the architectural level, before our preprogrammed way of thinking gets in the way.

Regardless of what questions your company needs to ask itself or how you decide to solve your problem, programmers and architects are realizing that having 8, 16, or 32 cores isn’t going to solve all their problems anymore. Additionally, as new generations of FPGAs are available, they will have an increased performance per watt advantage over future generations of GPGPUs and manycore CPUs. An example is the recently announced 40nm Stratix IV family from Altera, which is again 2x larger and reasonably faster than previous generations. So step back, think of the algorithm, look at it through a parallel set of eyes, and enjoy. The world is parallel once again, shouldn’t your implementation be?

About the Author

Kevin Urban, director of business development, XtremeData, Inc., has been actively involved in the creation and marketing of advanced communication systems for over 15 years. He holds undergraduate and graduate degrees in electrical engineering from the University of Michigan and a graduate degree in business from the University of Chicago. Additionally, he owns patents for his work in wire-speed latency sensitive scheduling algorithms.

Subscribe to HPCwire's Weekly Update!

Be the most informed person in the room! Stay ahead of the tech trends with industy updates delivered to you every week!

Nvidia Rolls Out Certified Server Program Targeting AI Applications

January 26, 2021

Nvidia today launched a certified systems program in which participating vendors can offer Nvidia-certified servers with up to eight A100 GPUs. Separate support contracts directly from Nvidia for the certified systems ar Read more…

By John Russell

XSEDE Supercomputers Square Off Against Ebola

January 26, 2021

COVID-19 may have dominated headlines and occupied much of the world’s scientific computing capacity over the last year, but many researchers continued their work to keep other deadly viruses at bay. One of those, Ebol Read more…

By Oliver Peckham

What’s New in HPC Research: Galaxies, Fugaku, Electron Microscopes & More

January 25, 2021

In this regular feature, HPCwire highlights newly published research in the high-performance computing community and related domains. From parallel programming to exascale to quantum computing, the details are here. Read more…

By Oliver Peckham

Red Hat’s Disruption of CentOS Unleashes Storm of Dissent

January 22, 2021

Five weeks after angering much of the CentOS Linux developer community by unveiling controversial changes to the no-cost CentOS operating system, Red Hat has unveiled alternatives for affected users that give them severa Read more…

By Todd R. Weiss

China Unveils First 7nm Chip: Big Island

January 22, 2021

Shanghai Tianshu Zhaoxin Semiconductor Co. is claiming China’s first 7-nanometer chip, described as a leading-edge, general-purpose cloud computing chip based on a proprietary GPU architecture. Dubbed “Big Island Read more…

By George Leopold

AWS Solution Channel

Fire Dynamics Simulation CFD workflow on AWS

Modeling fires is key for many industries, from the design of new buildings, defining evacuation procedures for trains, planes and ships, and even the spread of wildfires. Read more…

HiPEAC Keynote: In-Memory Computing Steps Closer to Practical Reality

January 21, 2021

Pursuit of in-memory computing has long been an active area with recent progress showing promise. Just how in-memory computing works, how close it is to practical application, and what are some of the key opportunities a Read more…

By John Russell

Nvidia Rolls Out Certified Server Program Targeting AI Applications

January 26, 2021

Nvidia today launched a certified systems program in which participating vendors can offer Nvidia-certified servers with up to eight A100 GPUs. Separate support Read more…

By John Russell

Red Hat’s Disruption of CentOS Unleashes Storm of Dissent

January 22, 2021

Five weeks after angering much of the CentOS Linux developer community by unveiling controversial changes to the no-cost CentOS operating system, Red Hat has un Read more…

By Todd R. Weiss

HiPEAC Keynote: In-Memory Computing Steps Closer to Practical Reality

January 21, 2021

Pursuit of in-memory computing has long been an active area with recent progress showing promise. Just how in-memory computing works, how close it is to practic Read more…

By John Russell

HiPEAC’s Vision for a New Cyber Era, a ‘Continuum of Computing’

January 21, 2021

Earlier this week (Jan. 19), HiPEAC — the European Network on High Performance and Embedded Architecture and Compilation — published the 8th edition of the HiPEAC Vision, detailing an increasingly interconnected computing landscape where complex tasks are carried out across multiple... Read more…

By Tiffany Trader

Saudi Aramco Unveils Dammam 7, Its New Top Ten Supercomputer

January 21, 2021

By revenue, oil and gas giant Saudi Aramco is one of the largest companies in the world, and it has historically employed commensurate amounts of supercomputing Read more…

By Oliver Peckham

President-elect Biden Taps Eric Lander and Deep Team on Science Policy

January 19, 2021

Last Friday U.S. President-elect Joe Biden named The Broad Institute founding director and president Eric Lander as his science advisor and as director of the Office of Science and Technology Policy. Lander, 63, is a mathematician by training and distinguished life sciences... Read more…

By John Russell

Pat Gelsinger Returns to Intel as CEO

January 14, 2021

The Intel board of directors has appointed a new CEO. Intel alum Pat Gelsinger is leaving his post as CEO of VMware to rejoin the company that he parted ways with 11 years ago. Gelsinger will succeed Bob Swan, who will remain CEO until Feb. 15. Gelsinger previously spent 30 years... Read more…

By Tiffany Trader

Julia Update: Adoption Keeps Climbing; Is It a Python Challenger?

January 13, 2021

The rapid adoption of Julia, the open source, high level programing language with roots at MIT, shows no sign of slowing according to data from Julialang.org. I Read more…

By John Russell

Julia Update: Adoption Keeps Climbing; Is It a Python Challenger?

January 13, 2021

The rapid adoption of Julia, the open source, high level programing language with roots at MIT, shows no sign of slowing according to data from Julialang.org. I Read more…

By John Russell

Esperanto Unveils ML Chip with Nearly 1,100 RISC-V Cores

December 8, 2020

At the RISC-V Summit today, Art Swift, CEO of Esperanto Technologies, announced a new, RISC-V based chip aimed at machine learning and containing nearly 1,100 low-power cores based on the open-source RISC-V architecture. Esperanto Technologies, headquartered in... Read more…

By Oliver Peckham

Azure Scaled to Record 86,400 Cores for Molecular Dynamics

November 20, 2020

A new record for HPC scaling on the public cloud has been achieved on Microsoft Azure. Led by Dr. Jer-Ming Chia, the cloud provider partnered with the Beckman I Read more…

By Oliver Peckham

NICS Unleashes ‘Kraken’ Supercomputer

April 4, 2008

A Cray XT4 supercomputer, dubbed Kraken, is scheduled to come online in mid-summer at the National Institute for Computational Sciences (NICS). The soon-to-be petascale system, and the resulting NICS organization, are the result of an NSF Track II award of $65 million to the University of Tennessee and its partners to provide next-generation supercomputing for the nation's science community. Read more…

Is the Nvidia A100 GPU Performance Worth a Hardware Upgrade?

October 16, 2020

Over the last decade, accelerators have seen an increasing rate of adoption in high-performance computing (HPC) platforms, and in the June 2020 Top500 list, eig Read more…

By Hartwig Anzt, Ahmad Abdelfattah and Jack Dongarra

Aurora’s Troubles Move Frontier into Pole Exascale Position

October 1, 2020

Intel’s 7nm node delay has raised questions about the status of the Aurora supercomputer that was scheduled to be stood up at Argonne National Laboratory next year. Aurora was in the running to be the United States’ first exascale supercomputer although it was on a contemporaneous timeline with... Read more…

By Tiffany Trader

10nm, 7nm, 5nm…. Should the Chip Nanometer Metric Be Replaced?

June 1, 2020

The biggest cool factor in server chips is the nanometer. AMD beating Intel to a CPU built on a 7nm process node* – with 5nm and 3nm on the way – has been i Read more…

By Doug Black

Programming the Soon-to-Be World’s Fastest Supercomputer, Frontier

January 5, 2021

What’s it like designing an app for the world’s fastest supercomputer, set to come online in the United States in 2021? The University of Delaware’s Sunita Chandrasekaran is leading an elite international team in just that task. Chandrasekaran, assistant professor of computer and information sciences, recently was named... Read more…

By Tracey Bryant

Leading Solution Providers

Contributors

Top500: Fugaku Keeps Crown, Nvidia’s Selene Climbs to #5

November 16, 2020

With the publication of the 56th Top500 list today from SC20's virtual proceedings, Japan's Fugaku supercomputer – now fully deployed – notches another win, Read more…

By Tiffany Trader

Texas A&M Announces Flagship ‘Grace’ Supercomputer

November 9, 2020

Texas A&M University has announced its next flagship system: Grace. The new supercomputer, named for legendary programming pioneer Grace Hopper, is replacing the Ada system (itself named for mathematician Ada Lovelace) as the primary workhorse for Texas A&M’s High Performance Research Computing (HPRC). Read more…

By Oliver Peckham

At Oak Ridge, ‘End of Life’ Sometimes Isn’t

October 31, 2020

Sometimes, the old dog actually does go live on a farm. HPC systems are often cursed with short lifespans, as they are continually supplanted by the latest and Read more…

By Oliver Peckham

Gordon Bell Special Prize Goes to Massive SARS-CoV-2 Simulations

November 19, 2020

2020 has proven a harrowing year – but it has produced remarkable heroes. To that end, this year, the Association for Computing Machinery (ACM) introduced the Read more…

By Oliver Peckham

Nvidia and EuroHPC Team for Four Supercomputers, Including Massive ‘Leonardo’ System

October 15, 2020

The EuroHPC Joint Undertaking (JU) serves as Europe’s concerted supercomputing play, currently comprising 32 member states and billions of euros in funding. I Read more…

By Oliver Peckham

Intel Xe-HP GPU Deployed for Aurora Exascale Development

November 17, 2020

At SC20, Intel announced that it is making its Xe-HP high performance discrete GPUs available to early access developers. Notably, the new chips have been deplo Read more…

By Tiffany Trader

Nvidia-Arm Deal a Boon for RISC-V?

October 26, 2020

The $40 billion blockbuster acquisition deal that will bring chipmaker Arm into the Nvidia corporate family could provide a boost for the competing RISC-V architecture. As regulators in the U.S., China and the European Union begin scrutinizing the impact of the blockbuster deal on semiconductor industry competition and innovation, the deal has at the very least... Read more…

By George Leopold

HPE, AMD and EuroHPC Partner for Pre-Exascale LUMI Supercomputer

October 21, 2020

Not even a week after Nvidia announced that it would be providing hardware for the first four of the eight planned EuroHPC systems, HPE and AMD are announcing a Read more…

By Oliver Peckham

  • arrow
  • Click Here for More Headlines
  • arrow
Do NOT follow this link or you will be banned from the site!
Share This