SoaAlloc: Accelerating Single-Method Multiple-Objects Applications on GPUs
Tokyo Institute of Technology, Japan
arXiv:1809.07444 [cs.PL], (20 Sep 2018)
@article{springer2018soaalloc,
title={SoaAlloc: Accelerating Single-Method Multiple-Objects Applications on GPUs},
author={Springer, Matthias},
year={2018},
month={sep},
archivePrefix={"arXiv"},
primaryClass={cs.PL}
}
We propose SoaAlloc, a dynamic object allocator for Single-Method Multiple-Objects applications in CUDA. SoaAlloc is the first allocator for GPUs that (a) arranges allocations in a SIMD-friendly Structure of Arrays (SOA) data layout, (b) provides a do-all operation for maximizing the benefit of SOA, and (c) is on par with state-of-the-art memory allocators for raw (de)allocation time. Our benchmarks show that the SOA layout leads to significantly better memory bandwidth utilization, resulting in a 2x speedup of application code.
September 23, 2018 by hgpu