On 12-13 February, Barcelona Supercomputing Center (BSC) delivered a joint field-programmable gate array (FPGA) tutorial with Xilinx on the Vivado HLS tool and OmpSs@FPGA programming model. Designed to equip attendees with the skills to program FPGAs, the tutorial was delivered as part of the European projects EPEEC, EuroEXA and LEGaTO.
FPGAs offer accelerated computing power on a low power budget, and form part of the LEGaTO project’s heterogeneous hardware substrate for energy-efficient computing. This event was the latest of a series of tutorials on OmpsS@FPGA, including a previous edition held in Barcelona and one at the EuroEXA meeting in Athens in 2018, through which LEGaTO and EuroEXA have been building on work in previous European projects.
‘With our University Program, Xilinx is helping train the next generation of researchers to get the most out of FPGAs – accelerators which are becoming increasingly common for a wide range computing applications with large datasets, such as genome sequencing,’ said Cathal McCabe, Xilinx University Program Manager for Europe, the Middle East and Africa.
The tutorial, which had 29 attendees from a number of different European countries, focused on the Xilinx tool Vivado HLS and the BSC programming model OmpSs@FPGA, which adapts OmpSs, the BSC technology which allows programs to be executed on multiple processors at once, to FPGAs. Following an exploration of the main aspects of the Vivado HLS optimizations and the OmpSs@FPGA approach, hands-on sessions allowed participants to try HLS Xilinx samples for coding and optimization, focusing on matrix multiplication, RGB – YUV filter and discrete cosine transform (DCT).
‘Principally developed during the AXIOM project, OmpSs@FPGA is a real success story,’ explained Xavier Martorell, leader of the parallel programming models group at BSC. ‘We have delivered a number of tutorials on this technology, and it’s great to see it being improved and used to simplify programming for heterogeneous architectures in European Union-funded projects such as EPEEC, EuroEXA and LEGaTO.’
Unlike other technologies, OmpSs@FPGA allows programmers to exploit multiple processors and accelerators at once, leading to greater efficiency. Thanks to its relatively simple programming interface, the time taken to program FPGA systems – which can be difficult to program – can be dramatically reduced.