<div class="csl-bib-body">
<div class="csl-entry">van Kempen, P., Salmen, M., Müller-Gritschneder, D., & Schlichtmann, U. (2024). Seal5: Semi-Automated LLVM Support for RISC-V ISA Extensions Including Autovectorization. In <i>Proceedings 2024 27th Euromicro Conference on Digital System Design (DSD 2024)</i> (pp. 335–342). https://doi.org/10.1109/DSD64264.2024.00052</div>
</div>
-
dc.identifier.uri
http://hdl.handle.net/20.500.12708/209947
-
dc.description.abstract
The RISC-V instruction set architecture (ISA) is popular for its extensibility, allowing easy integration of custom vendor-defined instructions tailored to specific applications. However, a quick exploration of instruction candidates fails due to the lack of tools to auto-generate embedded software toolchain support. In particular, exploiting SIMD instructions to accelerate typical DSP and machine learning workloads needs specialized integration. This work establishes a semi-automated flow to generate LLVM compiler support for custom instructions based on a C-style ISA description language. The implemented Seal5 tool is capable of generating support for functionalities ranging from baseline assembler-level support, over builtin functions to compiler code generation patterns for scalar as well as vector instructions, while requiring no deeper compiler know-how. This paper focuses primarily on a novel pattern generator approach for the optimized code generation for SIMD instructions, including support for autovectorization. The auto generated LLVM toolchain reduces development times drastically while performing similarly or better compared to the existing, manually implemented Core-V reference LLVM toolchain on a wide variety of benchmarks. Seal5 further allows the addition of compiler code generation support for the Core-VSIMD instructions, which is not yet available in the reference toolchain. Additionally, Seal5 facilitates a quick exploration of custom instruction candidates as demonstrated for a cryptography extension.
en
dc.language.iso
en
-
dc.subject
Instruction sets
en
dc.subject
Compilers
en
dc.subject
Data processing
en
dc.title
Seal5: Semi-Automated LLVM Support for RISC-V ISA Extensions Including Autovectorization
en
dc.type
Inproceedings
en
dc.type
Konferenzbeitrag
de
dc.contributor.affiliation
Technical University of Munich, Germany
-
dc.contributor.affiliation
Technical University of Munich, Germany
-
dc.contributor.affiliation
Technical University of Munich, Germany
-
dc.relation.isbn
979-8-3503-8038-5
-
dc.relation.doi
10.1109/DSD64264.2024
-
dc.description.startpage
335
-
dc.description.endpage
342
-
dc.type.category
Full-Paper Contribution
-
tuw.booktitle
Proceedings 2024 27th Euromicro Conference on Digital System Design (DSD 2024)
-
tuw.peerreviewed
true
-
tuw.researchTopic.id
I2
-
tuw.researchTopic.name
Computer Engineering and Software-Intensive Systems
-
tuw.researchTopic.value
100
-
tuw.publication.orgunit
E191-02 - Forschungsbereich Embedded Computing Systems
-
tuw.publisher.doi
10.1109/DSD64264.2024.00052
-
dc.description.numberOfPages
8
-
tuw.author.orcid
0000-0002-1135-8070
-
tuw.author.orcid
0009-0006-3449-1460
-
tuw.author.orcid
0000-0003-0903-631X
-
tuw.author.orcid
0000-0003-4431-7619
-
tuw.event.name
27th Euromicro Conference Series on Digital System Design (DSD 2024)
en
tuw.event.startdate
28-08-2024
-
tuw.event.enddate
30-08-2024
-
tuw.event.online
On Site
-
tuw.event.type
Event for scientific audience
-
tuw.event.place
Paris
-
tuw.event.country
FR
-
tuw.event.institution
Sorbonne University
-
tuw.event.presenter
van Kempen, Philipp
-
wb.sciencebranch
Informatik
-
wb.sciencebranch
Elektrotechnik, Elektronik, Informationstechnik
-
wb.sciencebranch
Mathematik
-
wb.sciencebranch.oefos
1020
-
wb.sciencebranch.oefos
2020
-
wb.sciencebranch.oefos
1010
-
wb.sciencebranch.value
50
-
wb.sciencebranch.value
40
-
wb.sciencebranch.value
10
-
item.grantfulltext
none
-
item.languageiso639-1
en
-
item.openairetype
conference paper
-
item.cerifentitytype
Publications
-
item.fulltext
no Fulltext
-
item.openairecristype
http://purl.org/coar/resource_type/c_5794
-
crisitem.author.dept
Technical University of Munich
-
crisitem.author.dept
Technical University of Munich
-
crisitem.author.dept
E191-02 - Forschungsbereich Embedded Computing Systems