論文の概要: Hunting CUDA Bugs at Scale with cuFuzz
- arxiv url: http://arxiv.org/abs/2603.12485v1
- Date: Thu, 12 Mar 2026 22:06:11 GMT
- ステータス: 翻訳完了
- システム内更新日: 2026-03-16 17:38:11.790661
- Title: Hunting CUDA Bugs at Scale with cuFuzz
- Title(参考訳): cuFuzzによるCUDAバグの大規模検索
- Authors: Mohamed Tarek Ibn ziad, Christos Kozyrakis,
- Abstract要約: GPUプログラムは、静的解析を回避するメモリセーフ性とバグの傾向にある。
ファズテストは動的エラーチェックツールと組み合わせて、妥当なソリューションを提供するが、GPUには未使用である。
ファジィングを実用化する最初の楽器であり,最初のNV指向ファジィザであるcuFuzzを紹介する。
- 参考スコア(独自算出の注目度): 2.0745580313629097
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: GPUs play an increasingly important role in modern software. However, the heterogeneous host-device execution model and expanding software stacks make GPU programs prone to memory-safety and concurrency bugs that evade static analysis. 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 execution 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/.
- Abstract(参考訳): 現代のソフトウェアでは、GPUがますます重要な役割を担っている。
しかし、ヘテロジニアスなホストデバイス実行モデルと拡張ソフトウェアスタックにより、GPUプログラムは、静的解析を避けるためのメモリセーフティと並行性のバグに悩まされる。
ファズテストは動的エラーチェックツールと組み合わせて、妥当なソリューションを提供するが、GPUには未使用である。
本研究では,(1)偽陽性につながるカーネルレベルのファジィング,(2)デバイス側カバレッジ誘導フィードバックの欠如,(3)カバレッジと衛生ツールの非互換性,の3つの主要な障害を特定する。
本稿では,これらの障害に対処してGPUファジィ化を実現する,CUDA指向のファジィファジィであるcuFuzzを紹介する。
cuFuzzは、デバイス側のカーネルを独立してファズすることから偽陽性を避けるために、プログラム全体のファズリングを使用する。
NVBitを利用してデバイス側の命令を計測し、その結果のカバレッジとコンパイラベースのホストカバレッジをマージする。
最後に、cuFuzzはホストとデバイスサイドのサニタイザを別々のプロセスで実行することで、カバレッジコレクションからサニタイズを分離する。
cuFuzzは、不正なメモリアクセス、初期化されていない読み取り、データ競合を含む14のCUDAプログラムで、43の既知のバグ(商用ライブラリで19)を明らかにした。
cuFuzzは、特にクローズドソースターゲットにおいて、ベースラインアプローチに比べて、発見されるエッジとユニークな入力を実現している。
さらに、異なるcuFuzzコンポーネントの実行時間オーバーヘッドを定量化し、全体的なファジィスループットを改善するために永続モードサポートを追加します。
この結果から,cuFuzzはGPUテストツールボックスに有効かつデプロイ可能な追加機能であることがわかった。
cuFuzzはhttps://github.com/NVlabs/cuFuzz/.comで公開されている。
関連論文リスト
- GPU-Fuzz: Finding Memory Errors in Deep Learning Frameworks [16.88852734850369]
GPUメモリエラーは、ディープラーニング(DL)フレームワークにとって重要な脅威であり、クラッシュやセキュリティ問題にもつながります。
本稿では,演算子パラメータを形式的制約としてモデル化することで,これらの問題を効率的に位置決めするGPU-Fuzzを紹介する。
論文 参考訳(メタデータ) (2026-02-11T03:32:43Z) - Rust and Go directed fuzzing with LibAFL-DiFuzz [0.0]
Rust や Go のアプリケーションに特化して,ファジイングを指向する新たなアプローチを提案する。
LibAFL-DiFuzzバックエンドをベースとしたファジングツールは,競争上の優位性を示す。
論文 参考訳(メタデータ) (2026-01-30T09:52:50Z) - Chasing Elusive Memory Bugs in GPU Programs [2.7752002595974172]
GPUプログラムのアウトオブバウンドアクセス(OOB)のようなメモリ安全性のバグは、GPUアクセラレーションされたソフトウェアのセキュリティと信頼性を損なう可能性がある。
SCuBAは、CPUとGPUのコードを分析し、セマンティックリレーションをキャプチャする(もしあるなら)。
NVIDIAのCompute Sanitizerは、20のプログラムで45のメモリバグを見逃しているのに対し、SCuBAは誤報なしで見逃している。
論文 参考訳(メタデータ) (2026-01-29T11:13:36Z) - CuFuzz: Hardening CUDA Programs through Transformation and Fuzzing [12.40365281970697]
CuFuzzは、最先端のCPUファジィツールを拡張する新しいコンパイラとランタイムの共同設計ソリューションである。
CuFuzzはGPUプログラムをコンパイラIRレベルの変換を使用してCPUプログラムに変換する。
CuFuzzは、広く使用されているベンチマークで122のセキュリティ脆弱性を発見した。
論文 参考訳(メタデータ) (2026-01-03T03:02:47Z) - CrashFixer: A crash resolution agent for the Linux kernel [58.152358195983155]
この作業は、システムレベルのLinuxカーネルバグのベンチマークと、Linuxカーネルで実験を実行するプラットフォームを共有するkGymの上に構築されている。
CrashFixerはLinuxカーネルのバグに適応する最初のLCMベースのソフトウェア修復エージェントである。
論文 参考訳(メタデータ) (2025-04-29T04:18:51Z) - G-Fuzz: A Directed Fuzzing Framework for gVisor [48.85077340822625]
G-FuzzはgVisor用のファジィフレームワークである。
G-Fuzzは業界に展開され、深刻な脆弱性を複数発見している。
論文 参考訳(メタデータ) (2024-09-20T01:00:22Z) - KGym: A Platform and Dataset to Benchmark Large Language Models on Linux Kernel Crash Resolution [59.20933707301566]
大規模言語モデル(LLM)は、ますます現実的なソフトウェア工学(SE)タスクにおいて一貫して改善されている。
現実世界のソフトウェアスタックでは、Linuxカーネルのような基本的なシステムソフトウェアの開発にSEの取り組みが費やされています。
このような大規模システムレベルのソフトウェアを開発する際にMLモデルが有用かどうかを評価するため、kGymとkBenchを紹介する。
論文 参考訳(メタデータ) (2024-07-02T21:44:22Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。