This program is tentative and subject to change.
GPUs play an increasingly important role in modern software. However, the heterogeneous host-device execution model and expanding software stack make GPU programs prone to memory-safety and concurrency bugs that evade static analyses. While fuzz-testing, combined with dynamic error checking tools, offers a plausible solution, it remains underutilized for GPUs. In this work, we identify three main obstacles limiting prior GPU fuzzing efforts: (1) kernel-level fuzzing leading to false positives, (2) lack of device-side coverage-guided feedback, and (3) incompatibility between coverage and sanitization tools. We present cuFuzz, the first CUDA-oriented fuzzer that makes GPU fuzzing practical by addressing these obstacles.
cuFuzz uses whole program fuzzing to avoid false positives from independently fuzzing device-side kernels. It leverages NVBit to instrument device-side instructions and merges the resultant coverage with compiler-based host coverage. Finally, cuFuzz decouples sanitization from coverage collection by executing host- and device-side sanitizers in separate processes. cuFuzz uncovers 43 previously unknown bugs (19 in commercial libraries) across 14 CUDA programs—including illegal memory accesses, uninitialized reads, and data races. cuFuzz achieves significantly more discovered edges and unique inputs compared to baseline approaches especially on closed-source targets. Moreover, we quantify the run time overheads of the different cuFuzz components and add persistent-mode support to improve the overall fuzzing throughput. Our results demonstrate that cuFuzz is an effective and deployable addition to the GPU testing toolbox. cuFuzz is publicly available at https://github.com/NVlabs/cuFuzz.
This program is tentative and subject to change.
Tue 6 OctDisplayed time zone: Pacific Time (US & Canada) change
10:30 - 12:00 | |||
10:30 18mTalk | Hunting CUDA Bugs at Scale with cuFuzz OOPSLA Link to publication DOI Pre-print Media Attached | ||
10:48 18mTalk | RandSet: Randomized Corpus Reduction for Fuzzing Seed Scheduling OOPSLA Yuchong Xie Hong Kong University of Science and Technology, Kaikai Zhang Hong Kong University of Science and Technology, Yu Liu Fudan University, Rundong Yang Fudan University, Ping Chen Fudan University, Shuai Wang Hong Kong University of Science and Technology, Dongdong She HKUST (The Hong Kong University of Science and Technology) | ||
11:06 18mTalk | Metamorphic Testing for Infrastructure-as-Code Engines OOPSLA David Spielmann University of St. Gallen, George Zakhour University of St. Gallen, Dominik Arnold University of Zurich, Matteo Biagiola University of St. Gallen and UniversitĂ della Svizzera italiana, Roland Meier armasuisse, Guido Salvaneschi University of St. Gallen Pre-print | ||
11:24 18mTalk | Prunario: Testing Autonomous Driving Systems by Pruning Likely Redundant Scenarios OOPSLA | ||
11:42 18mTalk | OBsmith: LLM-powered JavaScript Obfuscator Testing OOPSLA | ||