ORNL Researchers Create Framework for Easier, Effective FPGA Programming

By John Russell

May 24, 2016

Programmability and portability problems have long inhibited broader use of FPGA technology. FPGAs are already widely and effectively used in many dedicated applications (accelerated packet processing, for example), but generally not in situations that require ‘reconfiguring’ the FPGA to accommodate different applications. A group of researchers from Oak Ridge National Laboratory is hoping to change that.

Presenting at the 30th IEEE International Parallel & Distributed Processing Symposium (IPDPS) being held this week in Chicago, the group will discuss their work which is described in a new paper – OpenACC to FPGA: A Framework for Directive-based High-Performance Reconfigurable Computing. The authors include Seyong Lee, Jungwon Kim, and Jeffrey S. Vetter, all of ORNL.

Their directive-based, high-level programming framework takes a standard, portable OpenACC C program as input and generates a hardware configuration file for execution on FPGAs. “We implemented this prototype system using our open-source OpenARC compiler; it performs source-to-source translation and optimization of the input OpenACC program into an OpenCL code, which is further compiled into a FPGA program by the backend Altera Offline OpenCL compiler,” write the authors.

Solving, or at least significantly mitigating, FPGA’s nagging performance and portability issues could open the door for their use us in many different computing environments. The paper singles out exascale computing noting that future exascale supercomputers will need to satisfy numerous criteria: high performance on mission applications, wide flexibility to serve a diverse application workload, efficient power usage, effective reliability, and reasonable cost.

Heterogeneous computing with GPUs and Xeon Phis acceleration is currently the most popular approach to achieving exascale. “However, these exascale architectural criteria must be balanced against the user-driven goals of portable, productive development of software and applications, because many applications, such as climate model simulations, undergo frequent improvement and must execute on dozens of different architectures over their lifetimes. Consequently, some scientists have opted to postpone porting their applications to these heterogeneous architectures until portable programming solutions exist,” they contend.

ORNL OpenARC flowFPGAs could have a role to play. They offer many substantial advantages, including performance and energy efficiency for specific workloads relative to these other heterogeneous systems. In fact, say the authors, “chips, primarily from Xilinx and Altera, are often at the forefront of technology available on the market, using the latest process feature sizes, highest performance I/O and transceivers, and most effective memory subsystems. Furthermore, manufacturers offer these reconfigurable systems, such as the Altera Arria 10, in a wide array of configurations that include the tight integration of their custom reconfigurable logic with hard IP processors (e.g., ARM Cortex-A9) into a System- on-a-Chip (SoC).”

To a considerable extent the use of FPGA has been restricted mainly to hardware programmers. This is primarily because programming FPGAs requires substantial knowledge about the underlying hardware and writing applications in very low-level Hardware Description Languages (HDLs), such as VHDL and Verilog. Ultimately, an FPGA programmer had to design algorithms at the Register Transfer Level (RTL) level by describing them using state machines, arbitration, data paths, interfaces to external memory, buffering, etc.

An effective and easy to use high-level programming framework, based on an open source standard, could be a significant game-changer. In the evaluating their new framework, the group used an Altera Stratix V FPGA (57K logic elements, 172,600 ALMs, 690K register, 2,014 M20K memory blocks, and 8GB DDR3 device memory). Eight OpenACC benchmarks were run to demonstrate the benefits of the strategy.

To show the portability of OpenARC, the same benchmarks were run on other heterogeneous platforms, including NVIDIA GPUs, AMD GPUs, and Intel Xeon Phis. “This initial evidence helps support the goal of using a directive-based, high-level programming strategy for performance portability across heterogeneous HPC architectures,” conclude the authors.

The authors note many projects have explored the complexity of mapping source- code-level control and data to FPGAs. However, the additional complexity of synthesizing the logic and balancing the flexible resources offered by the FPGA with those requested by the application often requires an iterative approach, which can lead to long compilation delays and additional complexity.

Introduction of OpenCL was one effort to cope with the problem; its higher level of abstraction hides some of the FPGA programming complexity and enhances portability. Nevertheless, many users still consider the OpenCL programming system as too low of a level of abstraction for their large, complex applications. The paper is quite thorough, identifies and briefly discussers several other efforts intended to ease FPGA programming and portability

Other approaches cited include: “The SRC platforms enables users to program the FPGA effectively with Fortran and C. Handel-C is a subset of C language proposed for C-to-FPGA translation. The Impulse C-to-FPGA compiler translates C language to HDL. Xilinx Vivado (previously AutoPilot) supports compilation from a behavioral description written in C/C++/System C to VHDL/Verilog RTL. Papakonstantinou et al. propose a compiler framework, called FCUDA, which translates CUDA to Xilinx AutoPilot code for FPGA. Programming FPGAs with these high-level languages helped to relieve programmers from the complex details of the RTL design, such as taking care of synthesis, place and route, timing closures, etc.”

The authors cite what they believe are the three most noteworthy aspects of their work, excerpted here:

  • “We design and implement an OpenACC-to-FPGA translation framework. To best our knowledge, this is the first work to use a standard and portable directive-based, high-level programming system for FPGAs.
  • We propose several FPGA-specific OpenACC compiler optimizations and novel pragma extensions to improve performance.
  • We empirically evaluate our OpenACC-to-FPGA compiler framework using eight OpenACC benchmark applications. We show the performance variations with respect to the online and/or offline configurations using Altera FPGA, and demonstrate the portability of our OpenARC system running the same applications on NVIDIA GPU, AMD GPU, and Intel Xeon Phi.”

The authors argue that their preliminary evaluation of the OpenACC benchmarks on an FPGA and a comparison study on GPUs and a Xeon Phi show that the unique capability of an FPGA to generate custom hardware units dedicated to an input program offers a lot of performance tuning opportunities, different from other accelerators. Moreover, “the reconfigurability of existing hardware resources in the FPGA architecture exposes a new type of tradeoffs between the hardware resources versus throughput, such as compute unit replication, kernel vectorization, resource sharing, heterogeneous memory support, loop unrolling, streaming [and] channels.”

They suggest future work should explore using these features to exploit high-performance reconfigurable computing as a possible energy-efficient HPC solution.

The talk will be included in the Proceedings for IPDPS 2016 & IPDPSW 2016 Online (http://www.ipdps.org/ipdps2016/2016_online_proceedings.html.) DOE will also provide public access to these results (http://energy.gov/downloads/doe- public-access-plan.)

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!

Supercomputer Simulations Validate NASA Crash Testing

February 17, 2020

Car crash simulation is already a challenging supercomputing task, requiring pinpoint estimation of how hundreds of components interact with turbulent forces and human bodies. Spacecraft crash simulation is far more diff Read more…

By Oliver Peckham

What’s New in HPC Research: Quantum Clouds, Interatomic Models, Genetic Algorithms & More

February 14, 2020

In this bimonthly 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

The Massive GPU Cloudburst Experiment Plays a Smaller, More Productive Encore

February 13, 2020

In November, researchers at the San Diego Supercomputer Center (SDSC) and the IceCube Particle Astrophysics Center (WIPAC) set out to break the internet – or at least, pull off the cloud HPC equivalent. As part of thei Read more…

By Oliver Peckham

ORNL Team Develops AI-based Cancer Text Mining Tool on Summit

February 13, 2020

A group of Oak Ridge National Laboratory researchers working on the Summit supercomputer has developed a new neural network tool for fast extraction of information from cancer pathology reports to speed research and clin Read more…

By John Russell

Nature Serves up Another Challenge to Quantum Computing?

February 13, 2020

Just when you thought it was safe to assume quantum computing – though distant – would eventually succumb to clever technology, another potentially confounding factor pops up. It’s the Heisenberg Limit (HL), close Read more…

By John Russell

AWS Solution Channel

Challenging the barriers to High Performance Computing in the Cloud

Cloud computing helps democratize High Performance Computing by placing powerful computational capabilities in the hands of more researchers, engineers, and organizations who may lack access to sufficient on-premises infrastructure. Read more…

IBM Accelerated Insights

Intelligent HPC – Keeping Hard Work at Bay(es)

Since the dawn of time, humans have looked for ways to make their lives easier. Over the centuries human ingenuity has given us inventions such as the wheel and simple machines – which help greatly with tasks that would otherwise be extremely laborious. Read more…

Researchers Enlist Three Supercomputers to Apply Deep Learning to Extreme Weather

February 12, 2020

When it comes to extreme weather, an errant forecast can have serious effects. While advance warning can give people time to prepare for the weather as it did with the polar vortex last year, the absence of accurate adva Read more…

By Oliver Peckham

The Massive GPU Cloudburst Experiment Plays a Smaller, More Productive Encore

February 13, 2020

In November, researchers at the San Diego Supercomputer Center (SDSC) and the IceCube Particle Astrophysics Center (WIPAC) set out to break the internet – or Read more…

By Oliver Peckham

Eni to Retake Industry HPC Crown with Launch of HPC5

February 12, 2020

With the launch of its Dell-built HPC5 system, Italian energy company Eni regains its position atop the industrial supercomputing leaderboard. At 52-petaflops p Read more…

By Tiffany Trader

Trump Budget Proposal Again Slashes Science Spending

February 11, 2020

President Donald Trump’s FY2021 U.S. Budget, submitted to Congress this week, again slashes science spending. It’s a $4.8 trillion statement of priorities, Read more…

By John Russell

Policy: Republicans Eye Bigger Science Budgets; NSF Celebrates 70th, Names Idea Machine Winners

February 5, 2020

It’s a busy week for science policy. Yesterday, the National Science Foundation announced winners of its 2026 Idea Machine contest seeking directions for futu Read more…

By John Russell

Fujitsu A64FX Supercomputer to Be Deployed at Nagoya University This Summer

February 3, 2020

Japanese tech giant Fujitsu announced today that it will supply Nagoya University Information Technology Center with the first commercial supercomputer powered Read more…

By Tiffany Trader

Intel Stopping Nervana Development to Focus on Habana AI Chips

February 3, 2020

Just two months after acquiring Israeli AI chip start-up Habana Labs for $2 billion, Intel is stopping development of its existing Nervana neural network proces Read more…

By John Russell

Lise Supercomputer, Part of HLRN-IV, Begins Operations

January 29, 2020

The second phase of the build-out of HLRN-IV – the planned 16 peak-petaflops supercomputer serving the North-German Supercomputing Alliance (HLRN) – is unde Read more…

By Staff report

IBM Debuts IC922 Power Server for AI Inferencing and Data Management

January 28, 2020

IBM today launched a Power9-based inference server – the IC922 – that features up to six Nvidia T4 GPUs, PCIe Gen 4 and OpenCAPI connectivity, and can accom Read more…

By John Russell

Julia Programming’s Dramatic Rise in HPC and Elsewhere

January 14, 2020

Back in 2012 a paper by four computer scientists including Alan Edelman of MIT introduced Julia, A Fast Dynamic Language for Technical Computing. At the time, t Read more…

By John Russell

Cray, Fujitsu Both Bringing Fujitsu A64FX-based Supercomputers to Market in 2020

November 12, 2019

The number of top-tier HPC systems makers has shrunk due to a steady march of M&A activity, but there is increased diversity and choice of processing compon Read more…

By Tiffany Trader

SC19: IBM Changes Its HPC-AI Game Plan

November 25, 2019

It’s probably fair to say IBM is known for big bets. Summit supercomputer – a big win. Red Hat acquisition – looking like a big win. OpenPOWER and Power processors – jury’s out? At SC19, long-time IBMer Dave Turek sketched out a different kind of bet for Big Blue – a small ball strategy, if you’ll forgive the baseball analogy... Read more…

By John Russell

Intel Debuts New GPU – Ponte Vecchio – and Outlines Aspirations for oneAPI

November 17, 2019

Intel today revealed a few more details about its forthcoming Xe line of GPUs – the top SKU is named Ponte Vecchio and will be used in Aurora, the first plann Read more…

By John Russell

Dell Ramps Up HPC Testing of AMD Rome Processors

October 21, 2019

Dell Technologies is wading deeper into the AMD-based systems market with a growing evaluation program for the latest Epyc (Rome) microprocessors from AMD. In a Read more…

By John Russell

IBM Unveils Latest Achievements in AI Hardware

December 13, 2019

“The increased capabilities of contemporary AI models provide unprecedented recognition accuracy, but often at the expense of larger computational and energet Read more…

By Oliver Peckham

SC19: Welcome to Denver

November 17, 2019

A significant swath of the HPC community has come to Denver for SC19, which began today (Sunday) with a rich technical program. As is customary, the ribbon cutt Read more…

By Tiffany Trader

D-Wave’s Path to 5000 Qubits; Google’s Quantum Supremacy Claim

September 24, 2019

On the heels of IBM’s quantum news last week come two more quantum items. D-Wave Systems today announced the name of its forthcoming 5000-qubit system, Advantage (yes the name choice isn’t serendipity), at its user conference being held this week in Newport, RI. Read more…

By John Russell

Leading Solution Providers

SC 2019 Virtual Booth Video Tour

AMD
AMD
ASROCK RACK
ASROCK RACK
AWS
AWS
CEJN
CJEN
CRAY
CRAY
DDN
DDN
DELL EMC
DELL EMC
IBM
IBM
MELLANOX
MELLANOX
ONE STOP SYSTEMS
ONE STOP SYSTEMS
PANASAS
PANASAS
SIX NINES IT
SIX NINES IT
VERNE GLOBAL
VERNE GLOBAL
WEKAIO
WEKAIO

Jensen Huang’s SC19 – Fast Cars, a Strong Arm, and Aiming for the Cloud(s)

November 20, 2019

We’ve come to expect Nvidia CEO Jensen Huang’s annual SC keynote to contain stunning graphics and lively bravado (with plenty of examples) in support of GPU Read more…

By John Russell

51,000 Cloud GPUs Converge to Power Neutrino Discovery at the South Pole

November 22, 2019

At the dead center of the South Pole, thousands of sensors spanning a cubic kilometer are buried thousands of meters beneath the ice. The sensors are part of Ic Read more…

By Oliver Peckham

Fujitsu A64FX Supercomputer to Be Deployed at Nagoya University This Summer

February 3, 2020

Japanese tech giant Fujitsu announced today that it will supply Nagoya University Information Technology Center with the first commercial supercomputer powered Read more…

By Tiffany Trader

Top500: US Maintains Performance Lead; Arm Tops Green500

November 18, 2019

The 54th Top500, revealed today at SC19, is a familiar list: the U.S. Summit (ORNL) and Sierra (LLNL) machines, offering 148.6 and 94.6 petaflops respectively, Read more…

By Tiffany Trader

Azure Cloud First with AMD Epyc Rome Processors

November 6, 2019

At Ignite 2019 this week, Microsoft's Azure cloud team and AMD announced an expansion of their partnership that began in 2017 when Azure debuted Epyc-backed instances for storage workloads. The fourth-generation Azure D-series and E-series virtual machines previewed at the Rome launch in August are now generally available. Read more…

By Tiffany Trader

Intel’s New Hyderabad Design Center Targets Exascale Era Technologies

December 3, 2019

Intel's Raja Koduri was in India this week to help launch a new 300,000 square foot design and engineering center in Hyderabad, which will focus on advanced com Read more…

By Tiffany Trader

In Memoriam: Steve Tuecke, Globus Co-founder

November 4, 2019

HPCwire is deeply saddened to report that Steve Tuecke, longtime scientist at Argonne National Lab and University of Chicago, has passed away at age 52. Tuecke Read more…

By Tiffany Trader

Cray Debuts ClusterStor E1000 Finishing Remake of Portfolio for ‘Exascale Era’

October 30, 2019

Cray, now owned by HPE, today introduced the ClusterStor E1000 storage platform, which leverages Cray software and mixes hard disk drives (HDD) and flash memory Read more…

By John Russell

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