liu.seSearch for publications in DiVA
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
High-Level Programming of FPGA-Accelerated Systems with Parallel Patterns
Linköping University, Department of Computer and Information Science. Linköping University, Faculty of Science & Engineering. (PELAB)
Linköping University, Department of Computer and Information Science, Software and Systems. Linköping University, Faculty of Science & Engineering. (PELAB)ORCID iD: 0000-0001-6514-4601
Linköping University, Department of Computer and Information Science, Software and Systems. Linköping University, Faculty of Science & Engineering. (PELAB)ORCID iD: 0000-0002-7400-4325
Linköping University, Department of Computer and Information Science, Software and Systems. Linköping University, Faculty of Science & Engineering. (PELAB)ORCID iD: 0000-0001-5241-0026
2024 (English)In: International journal of parallel programming, ISSN 0885-7458, E-ISSN 1573-7640, Vol. 52, p. 253-273Article in journal (Refereed) Published
Abstract [en]

As a result of frequency and power limitations, multi-core processors and accelerators are becoming more and more prevalent in today's systems. To fully utilize such systems, heterogeneous parallel programming is needed, but this introduces new complexities to the development. High-level frameworks such as SkePU have been introduced to help alleviate these complexities. SkePU is a skeleton programming framework based on a set of programming constructs implementing computational parallel patterns, while presenting a sequential interface to the programmer. Using the various skeleton backends, SkePU programs can execute, without source code modification, on multiple types of hardware such as CPUs, GPUs, and clusters. This paper presents the design and implementation of a new backend for SkePU, adding support for FPGAs. We also evaluate the effect of FPGA-specific optimizations in the new backend and compare it with the existing GPU backend, where the actual devices used are of similar vintage and price point. For simple examples, we find that the FPGA-backend's performance is similar to that of the existing backend for GPUs, while it falls behind in more complex tasks. Finally, some shortcomings in the backend are highlighted and discussed, along with potential solutions.

Place, publisher, year, edition, pages
SPRINGER/PLENUM PUBLISHERS , 2024. Vol. 52, p. 253-273
Keywords [en]
Algorithmic skeletons; Reconfigurable computing; FPGA; Single-source heterogeneous programming
National Category
Other Electrical Engineering, Electronic Engineering, Information Engineering
Identifiers
URN: urn:nbn:se:liu:diva-204318DOI: 10.1007/s10766-024-00770-3ISI: 001232114600001Scopus ID: 2-s2.0-85194550594OAI: oai:DiVA.org:liu-204318DiVA, id: diva2:1868160
Note

Funding Agencies|Linkping University; ELLIIT; Swedish National Graduate School in Computer Science (CUGS); NSC

Available from: 2024-06-11 Created: 2024-06-11 Last updated: 2025-01-14Bibliographically approved

Open Access in DiVA

No full text in DiVA

Other links

Publisher's full textScopus

Authority records

Ernstsson, AugustTinnerholm, JohnKessler, Christoph

Search in DiVA

By author/editor
Birath, BjörnErnstsson, AugustTinnerholm, JohnKessler, Christoph
By organisation
Department of Computer and Information ScienceFaculty of Science & EngineeringSoftware and Systems
In the same journal
International journal of parallel programming
Other Electrical Engineering, Electronic Engineering, Information Engineering

Search outside of DiVA

GoogleGoogle Scholar

doi
urn-nbn

Altmetric score

doi
urn-nbn
Total: 202 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf