DynaSOAr: Accelerating Single-Method Multiple-Objects Applications on GPUs
Matthias Springer

TL;DR
DynaSOAr is a CUDA framework that enables efficient GPU execution of object-oriented applications by supporting Single-Method Multiple-Objects programming, optimizing memory layout, and reducing fragmentation for high-performance computing.
Contribution
The paper introduces DynaSOAr, a novel CUDA framework that efficiently implements SMMO applications on GPUs, making object-oriented programming practical for HPC.
Findings
Achieves high GPU utilization for SMMO applications.
Reduces memory fragmentation with lock-free hierarchical bitmaps.
Improves memory efficiency using SOA data layout.
Abstract
Object-oriented programming (OOP) has long been regarded as too inefficient for SIMD high-performance computing, despite the fact that many important HPC applications have an inherent object structure. We discovered a broad subset of OOP that can be implemented efficiently on massively parallel SIMD accelerators. We call it Single-Method Multiple-Objects (SMMO), because parallelism is expressed by running a method on all objects of a type. To make fast GPU programming available to domain experts who are less experienced in GPU programming, we developed DynaSOAr, a CUDA framework for SMMO applications. DynaSOAr improves the usage of allocated memory with an SOA data layout and achieves low memory fragmentation through efficient management of free and allocated memory blocks with lock-free, hierarchical bitmaps.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Cloud Computing and Resource Management · Distributed and Parallel Computing Systems
