Bounds Checking on GPU
Publikation: Bidrag til tidsskrift › Tidsskriftartikel › Forskning › fagfællebedømt
We present a simple compilation strategy for safety-checking array indexing in high-level languages on GPUs. Our technique does not depend on hardware support for abnormal termination, and is designed to be efficient in the non-failing case. We rely on certain properties of array languages, namely the absence of arbitrary cross-thread communication, to ensure well-defined execution in the presence of failures. We have implemented our technique in the compiler for the functional array language Futhark, and an empirical evaluation on 19 benchmarks shows that the geometric mean overhead of checking array indexes is respectively 4% and 6% on two different GPUs.
Originalsprog | Engelsk |
---|---|
Tidsskrift | International Journal of Parallel Programming |
Vol/bind | 49 |
Udgave nummer | 6 |
Sider (fra-til) | 761-775 |
ISSN | 0885-7458 |
DOI | |
Status | Udgivet - 2021 |
Bibliografisk note
Funding Information:
This research has been partially supported by a grant from the Independent Research Fund Denmark, under the research project FUTHARK: Functional Technology for High-performance Architectures.
Publisher Copyright:
© 2021, The Author(s), under exclusive licence to Springer Science+Business Media, LLC, part of Springer Nature.
ID: 306966579