Towards Dual-Issue Single-Path Code

Emad Jacob Maroun, Martin Schoeberl, Peter Puschner

Research output: Chapter in Book/Report/Conference proceedingArticle in proceedingsResearchpeer-review

Abstract

The Patmos instruction-set architecture is designed for real-time systems. As such, it has features that increase the predictability of code running on it. One important feature is its dual-issue pipeline: instructions may be organized in bundles of two that are issued and executed in parallel. This increases the throughput of the processor in a predictable manner, but only if the compiler makes use of it.Single-path code is a code-generation technique that produces predictable executions by always following the same trace of instructions. The Patmos compiler can already produce single-path code, but it does not use the second issue slot available in the processor. This is less than ideal because the single-path transformation results in code that has a high degree of instruction-level parallelism.In this paper, we present a single-path code generator that can produce bundled instructions. It includes generic support for bundling algorithms, such that implementing them is simple and does not require changing other parts of the compiler.We also present one such bundling algorithm plugged into the single-path code generator. With it, we show that we can produce dual-issue instructions to improve performance.
Original languageEnglish
Title of host publicationProceedings of 2020 IEEE 23rd International Symposium on Real-Time Distributed Computing
PublisherIEEE
Publication date2020
Pages176-183
ISBN (Print)9781728169583
DOIs
Publication statusPublished - 2020
Event2020 IEEE 23rd International Symposium on Real-Time Distributed Computing - Virtual event, Nashville, United States
Duration: 19 May 202021 May 2020
https://isorc.github.io/2020/html/index.html

Conference

Conference2020 IEEE 23rd International Symposium on Real-Time Distributed Computing
LocationVirtual event
CountryUnited States
CityNashville
Period19/05/202021/05/2020
Internet address
Series2017 Ieee 20th International Symposium on Real-time Distributed Computing (isorc). Proceedings
ISSN2375-5261

Keywords

  • Real-time systems
  • Time-predictable computer architecture
  • Single-path code generation

Cite this