ACM Transactions on Architecture and Code Optimization · 2014 · 16 citations · 15 references
ComputingVisualizationComputer GraphicsImmersive VisualizationUser Experience DesignNavigation DesignVirtual Environment DesignVirtual RealityVirtual World NavigationVirtual WorldsBrowser ImplementationImmersive User Interface DesignNavigation In Immersive EnvironmentsNavigation User InterfaceScene Graph ModelingScene Graph RepresentationVirtual Environment NavigationVirtual Reality Interfaces
GPUs play an increasingly important role in high-performance computing. While developing naive code is straightforward, optimizing massively parallel applications requires deep understanding of the underlying architecture. The developer must struggle with complex index calculations and manual memory transfers. This article classifies memory access patterns used in most parallel algorithms, based on Berkeley’s Parallel “Dwarfs.” It then proposes the MAPS framework, a device-level memory abstraction that facilitates memory access on GPUs, alleviating complex indexing using on-device containers and iterators. This article presents an implementation of MAPS and shows that its performance is comparable to carefully optimized implementations of real-world applications.
15
The Landscape of Parallel Computing Research: A View from Berkeley
Krste Asanović, Ras Bodik, Bryan Catanzaro et al. · 2006 · 2K citations
Engineering, Computer Science, High-performance Computing +17
Understanding the efficiency of ray traversal on GPUs
Timo Aila, Samuli Laine · 2009 · 384 citations
Accelerating CUDA graph algorithms at maximum warp
Sungpack Hong, Sang Kyun Kim, Tayo Oguntebi et al. · 2011 · 337 citations