Program your (custom) SIMD instruction set on FPGA in C++

Research output: Contribution to book/Conference proceedings/Anthology/ReportConference contributionContributed

Contributors

Abstract

Field Programmable Gate Arrays (FPGAs) are more and more becoming a viable option for implementing data processing pipelines as their computing capacity as well as the access bandwidth between host and device memory continue to increase. Unfortunately, nowadays hardware description languages are still mainly used for programming FPGAs which implies major limitations. To tackle this issue, our paper shows that the general-purpose parallel processing architecture SIMD (Single Instruction Multiple Data) is a perfect match for FPGAs. With this specific architecture, we are able to consider an FPGA as SIMD processing unit and the necessary SIMD instruction set can now be implemented in C++. As we will present, this offers a lot of advantages if both software (SIMDified query processing) and hardware can be written consistently in C++.

Details

Original languageEnglish
Title of host publication14th Annual Conference on Innovative Data Systems Research (CIDR ’24)
Publication statusPublished - 17 Jan 2024
Peer-reviewedNo

Conference

Title2024 Conference on Innovative Data Systems Research
Abbreviated titleCIDR 2024
Duration14 - 17 January 2024
Website
LocationChaminade Resort and Spa
CitySanta Cruz
CountryUnited States of America

External IDs

ORCID /0000-0001-8107-2775/work/176342164

Keywords

Research priority areas of TU Dresden