GPUHarbor: Testing GPU Memory Consistency at Large (Experience Paper)ACM SIGSOFT Distinguished Artifact
Memory consistency specifications (MCSs) are a difficult, yet critical, part of a concurrent programming framework. Existing MCS testing tools are not immediately accessible, and thus, have only been applied to a limited number of devices. However, in the post-Dennard scaling landscape, there has been an explosion of new architectures and frameworks. Studying the shared memory behaviors of these new platforms is important to understand their behavior and ensure conformance to framework specifications.
In this paper, we present GPUHarbor, a widescale GPU MCS testing tool with a web interface and an Android app. Using GPUHarbor, we deployed a testing campaign that checks conformance and characterizes weak behaviors. We advertised GPUHarbor on forums and social media, allowing us to collect testing data from 106 devices, spanning seven vendors. In terms of devices tested, this constitutes the largest study on weak memory behaviors by at least 10×, and our conformance tests identified two new bugs on embedded Arm and NVIDIA devices. Analyzing our characterization data yields many insights, including quantifying and comparing weak behavior occurrence rates (e.g., AMD GPUs show 25.3× more weak behaviors on average than Intel). We conclude with a discussion of the impact our results have on software development for these performance-critical devices.
Thu 20 JulDisplayed time zone: Pacific Time (US & Canada) change
10:30 - 12:00 | ISSTA 10: Test OptimizationsTechnical Papers at Smith Classroom (Gates G10) Chair(s): Wing Lam University of Illinois at Urbana-Champaign | ||
10:30 15mTalk | More Precise Regression Test Selection via Reasoning about Semantics-Modifying ChangesACM SIGSOFT Distinguished Paper Technical Papers Yu Liu University of Texas at Austin, Jiyang Zhang University of Texas at Austin, Pengyu Nie University of Texas at Austin, Milos Gligoric University of Texas at Austin, Owolabi Legunsen Cornell University DOI | ||
10:45 15mTalk | Catamaran: Low-Overhead Memory Safety Enforcement via Parallel Acceleration Technical Papers Yiyu Zhang Nanjing University, Tianyi Liu Nanjing University, Zewen Sun Nanjing University, Zhe Chen Nanjing University of Aeronautics and Astronautics, Xuandong Li Nanjing University, Zhiqiang Zuo Nanjing University DOI | ||
11:00 15mTalk | Applying and Extending the Delta Debugging Algorithm for Elevator Dispatching Algorithms (Experience Paper) Technical Papers DOI Pre-print | ||
11:15 15mTalk | June: A Type Testability Transformation for Improved ATG Performance Technical Papers Dan Bruce University College London, David Kelly King’s College London, Hector Menendez King’s College London, Earl T. Barr University College London; Google DeepMind, David Clark University College London DOI | ||
11:30 15mTalk | Pattern-Based Peephole Optimizations with Java JIT Tests Technical Papers Zhiqiang Zang University of Texas at Austin, Aditya Thimmaiah University of Texas at Austin, Milos Gligoric University of Texas at Austin DOI Pre-print | ||
11:45 15mTalk | GPUHarbor: Testing GPU Memory Consistency at Large (Experience Paper)ACM SIGSOFT Distinguished Artifact Technical Papers Reese Levine University of California at Santa Cruz, Mingun Cho University of California at Davis, Devon McKee University of California at Santa Cruz, Andrew Quinn University of California at Santa Cruz, Tyler Sorensen University of California at Santa Cruz DOI |