Bounds Checking on GPU
Publikation: Bidrag til tidsskrift › Tidsskriftartikel › Forskning › fagfællebedømt
Standard
Bounds Checking on GPU. / Henriksen, Troels.
I: International Journal of Parallel Programming, Bind 49, Nr. 6, 2021, s. 761-775.Publikation: Bidrag til tidsskrift › Tidsskriftartikel › Forskning › fagfællebedømt
Harvard
APA
Vancouver
Author
Bibtex
}
RIS
TY - JOUR
T1 - Bounds Checking on GPU
AU - Henriksen, Troels
N1 - Publisher Copyright: © 2021, The Author(s), under exclusive licence to Springer Science+Business Media, LLC, part of Springer Nature.
PY - 2021
Y1 - 2021
N2 - 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.
AB - 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.
KW - Compilers
KW - Functional programming
KW - GPU
UR - http://www.scopus.com/inward/record.url?scp=85103215109&partnerID=8YFLogxK
U2 - 10.1007/s10766-021-00703-4
DO - 10.1007/s10766-021-00703-4
M3 - Journal article
AN - SCOPUS:85103215109
VL - 49
SP - 761
EP - 775
JO - International Journal of Parallel Programming
JF - International Journal of Parallel Programming
SN - 0885-7458
IS - 6
ER -
ID: 306966579