A Magnified View into Heterogeneous-ISA Thread Migration Performance without State Transformation

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Mavrogeorgis, Nikolaos, Vasiladiotis, Christos, Mu, Pei, Khordadi, Amir, Franke, Björn, Barbalace, Antonio
Format: Preprint
Published: 2025
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866914229649408000
author Mavrogeorgis, Nikolaos
Vasiladiotis, Christos
Mu, Pei
Khordadi, Amir
Franke, Björn
Barbalace, Antonio
author_facet Mavrogeorgis, Nikolaos
Vasiladiotis, Christos
Mu, Pei
Khordadi, Amir
Franke, Björn
Barbalace, Antonio
contents Heterogeneous-ISA processor designs have attracted considerable research interest. However, unlike their homogeneous-ISA counterparts, explicit software support for bridging ISA heterogeneity is required. The lack of a compilation toolchain ready to support heterogeneous-ISA targets has been a major factor hindering research in this exciting emerging area. For any such compiler, "getting right" the mechanics involved in state transformation upon migration and doing this efficiently is of critical importance. In particular, any runtime conversion of the current program stack from one architecture to another would be prohibitively expensive. In this paper, we design and develop Unifico, a new multi-ISA compiler that generates binaries that maintain the same stack layout during their execution on either architecture. Unifico avoids the need for runtime stack transformation, thus eliminating overheads associated with ISA migration. Additional responsibilities of the Unifico compiler backend include maintenance of a uniform ABI and virtual address space across ISAs. Unifico is implemented using the LLVM compiler infrastructure, and we are currently targeting the x86-64 and ARMv8 ISAs. We have evaluated Unifico across a range of compute-intensive NAS benchmarks and show its minimal impact on overall execution time, where less than 6% (10%) overhead is introduced on average for high-end (low-end) processors. We also analyze the performance impact of Unifico's key design features and demonstrate that they can be further optimized to mitigate this impact. When compared against the state-of-the-art Popcorn compiler, Unifico reduces binary size overhead from ~200% to ~10%, whilst eliminating the stack transformation overhead during ISA migration.
format Preprint
id arxiv_https___arxiv_org_abs_2512_24530
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle A Magnified View into Heterogeneous-ISA Thread Migration Performance without State Transformation
Mavrogeorgis, Nikolaos
Vasiladiotis, Christos
Mu, Pei
Khordadi, Amir
Franke, Björn
Barbalace, Antonio
Software Engineering
Performance
Heterogeneous-ISA processor designs have attracted considerable research interest. However, unlike their homogeneous-ISA counterparts, explicit software support for bridging ISA heterogeneity is required. The lack of a compilation toolchain ready to support heterogeneous-ISA targets has been a major factor hindering research in this exciting emerging area. For any such compiler, "getting right" the mechanics involved in state transformation upon migration and doing this efficiently is of critical importance. In particular, any runtime conversion of the current program stack from one architecture to another would be prohibitively expensive. In this paper, we design and develop Unifico, a new multi-ISA compiler that generates binaries that maintain the same stack layout during their execution on either architecture. Unifico avoids the need for runtime stack transformation, thus eliminating overheads associated with ISA migration. Additional responsibilities of the Unifico compiler backend include maintenance of a uniform ABI and virtual address space across ISAs. Unifico is implemented using the LLVM compiler infrastructure, and we are currently targeting the x86-64 and ARMv8 ISAs. We have evaluated Unifico across a range of compute-intensive NAS benchmarks and show its minimal impact on overall execution time, where less than 6% (10%) overhead is introduced on average for high-end (low-end) processors. We also analyze the performance impact of Unifico's key design features and demonstrate that they can be further optimized to mitigate this impact. When compared against the state-of-the-art Popcorn compiler, Unifico reduces binary size overhead from ~200% to ~10%, whilst eliminating the stack transformation overhead during ISA migration.
title A Magnified View into Heterogeneous-ISA Thread Migration Performance without State Transformation
topic Software Engineering
Performance
url https://arxiv.org/abs/2512.24530