論文の概要: Execution-Aware Program Reduction for WebAssembly via Record and Replay
- arxiv url: http://arxiv.org/abs/2506.07834v1
- Date: Mon, 09 Jun 2025 14:57:10 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-06-10 16:33:11.010118
- Title: Execution-Aware Program Reduction for WebAssembly via Record and Replay
- Title(参考訳): WebAssemblyのレコードとリプレイによる実行時プログラムの削減
- Authors: Doehyun Baek, Daniel Lehmann, Ben L. Titzer, Sukyoung Ryu, Michael Pradel,
- Abstract要約: 本稿では, RR-ReduceとHybrid-Reduceについて述べる。
RR-Reduceは、バグトリガ機能をターゲット関数として識別し、その機能をプログラムの他の部分から分離し、縮小されたプログラムを生成する。
RR-ReduceとHybrid-Reduceを28のWasmプログラムで評価し、3つのエンジンの様々なバグを発生させる。
- 参考スコア(独自算出の注目度): 17.825757481227438
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: WebAssembly (Wasm) programs may trigger bugs in their engine implementations. To aid debugging, program reduction techniques try to produce a smaller variant of the input program that still triggers the bug. However, existing execution-unaware program reduction techniques struggle with large and complex Wasm programs, because they rely on static information and apply syntactic transformations, while ignoring the valuable information offered by the input program's execution behavior. We present RR-Reduce and Hybrid-Reduce, novel execution-aware program reduction techniques that leverage execution behaviors via record and replay. RR-Reduce identifies a bug-triggering function as the target function, isolates that function from the rest of the program, and generates a reduced program that replays only the interactions between the target function and the rest of the program. Hybrid-Reduce combines a complementary execution-unaware reduction technique with RR-Reduce to further reduce program size. We evaluate RR-Reduce and Hybrid-Reduce on 28 Wasm programs that trigger a diverse set of bugs in three engines. On average, RR-Reduce reduces the programs to 1.20 percent of their original size in 14.5 minutes, which outperforms the state of the art by 33.15 times in terms of reduction time. Hybrid-Reduce reduces the programs to 0.13 percent of their original size in 3.5 hours, which outperforms the state of the art by 3.42 times in terms of reduced program size and 2.26 times in terms of reduction time. We envision RR-Reduce as the go-to tool for rapid, on-demand debugging in minutes, and Hybrid-Reduce for scenarios where developers require the smallest possible programs.
- Abstract(参考訳): WebAssembly(Wasm)プログラムは、エンジン実装のバグを引き起こす可能性がある。
デバッグを支援するために、プログラムリダクション技術は、まだバグをトリガーする入力プログラムのより小さな変種を作成しようとする。
しかし、既存の実行を意識しないプログラム削減技術は、静的情報に依存し、構文変換を適用し、入力プログラムの実行動作によって提供される貴重な情報を無視しているため、大規模で複雑なWasmプログラムと競合する。
本稿では,RR-ReduceとHybrid-Reduceという,レコードと再生による実行動作を活用する新しい実行対応プログラムリダクション技術を提案する。
RR-Reduceは、バグトリガ機能をターゲット関数として識別し、その機能をプログラムの他の部分から分離し、ターゲット関数と残りのプログラムとのインタラクションのみを再生する縮小プログラムを生成する。
Hybrid-Reduce は RR-Reduce と相補的な実行非意識の削減技術を組み合わせてプログラムサイズをさらに削減する。
RR-ReduceとHybrid-Reduceを28のWasmプログラムで評価し、3つのエンジンの様々なバグを発生させる。
RR-Reduceは、プログラムを14.5分で1.20%まで減らし、その時間を33.15倍に改善した。
Hybrid-Reduce はプログラムを 3.5 時間で 0.13 % に減らし、プログラムサイズを2.26 倍に減らした。
我々はRR-Reduceを、開発者が最小限のプログラムを必要とするシナリオの高速でオンデマンドなデバッグツールとして、そしてHybrid-Reduceを構想する。
関連論文リスト
- The Impact of Program Reduction on Automated Program Repair [0.3277163122167433]
本稿では,現代のAPRツールのスケーラビリティ向上を目的としたプログラム修復手法について述べる。
本研究では,スライシングが修復プロセスの3つの段階,すなわち障害局所化,パッチ生成,パッチ検証に与える影響について検討する。
プログラムの削減は修理品質を劣化させることなくAPRの性能を向上させることができるが、この改善は普遍的ではない。
論文 参考訳(メタデータ) (2024-08-02T09:23:45Z) - ReGAL: Refactoring Programs to Discover Generalizable Abstractions [59.05769810380928]
Generalizable Abstraction Learning (ReGAL)は、再利用可能な関数のライブラリをコード化して学習する手法である。
ReGALによって発見された共有関数ライブラリは、プログラムが様々な領域で容易に予測できることを示している。
CodeLlama-13Bでは、ReGALはLOGOで11.5%、日付理解で26.1%、TextCraftで8.1%という絶対精度が向上し、3つのドメインのうち2つでGPT-3.5を上回った。
論文 参考訳(メタデータ) (2024-01-29T18:45:30Z) - Moving beyond Deletions: Program Simplification via Diverse Program
Transformations [11.038120567076772]
開発者は手動でプログラムを単純化する(この論文では開発者によるプログラムの単純化として知られている)。
手作業の労力を減らすために、ルールベースのアプローチ(例えば、削除に基づくアプローチ)は、開発者によるプログラムの単純化を自動化するために潜在的に適用できる。
単純化されたプログラムを自動生成するツールであるSimpT5を提案する。
評価の結果,SimpT5は開発者によるプログラムの単純化の自動化において,従来の手法よりも効果的であることが示唆された。
論文 参考訳(メタデータ) (2024-01-26T22:59:43Z) - NAPG: Non-Autoregressive Program Generation for Hybrid Tabular-Textual
Question Answering [52.10214317661547]
現在の数値推論法はプログラムシーケンスを自己回帰的にデコードする。
プログラム生成の精度は、デコードステップがエラー伝搬によって展開されるにつれて急激に低下する。
本稿では,非自己回帰型プログラム生成フレームワークを提案する。
論文 参考訳(メタデータ) (2022-11-07T11:25:21Z) - Learning from Self-Sampled Correct and Partially-Correct Programs [96.66452896657991]
そこで本研究では,モデルが学習中にサンプリングを行い,自己サンプリングされた完全正当プログラムと部分正当プログラムの両方から学習することを提案する。
自己サンプリング型プログラムと部分修正型プログラムを併用することで,学習とサンプリングプロセスのガイドに役立てることができることを示す。
提案手法は,MLEを用いた単一の参照プログラムからの学習と比較して,パス@kの性能を3.1%から12.3%向上させる。
論文 参考訳(メタデータ) (2022-05-28T03:31:07Z) - Incremental maintenance of overgrounded logic programs with tailored
simplifications [0.966840768820136]
単調に成長する命題プログラムを生成するための新しい戦略を導入する。
従来の手法では、カスタマイズされた単純化技術により、インスタンス化されたプログラムのサイズが小さくなる。
論文 参考訳(メタデータ) (2020-08-06T21:50:11Z) - Synthesize, Execute and Debug: Learning to Repair for Neural Program
Synthesis [81.54148730967394]
本稿では,合成,実行,デバッグの段階を組み込んだニューラルネットワーク生成フレームワークであるSEDを提案する。
SEDはまず、神経プログラムシンセサイザーコンポーネントを使用して初期プログラムを生成し、その後、神経プログラムデバッガを使用して生成されたプログラムを反復的に修復する。
挑戦的な入出力プログラム合成ベンチマークであるKarelでは、SEDはニューラルプログラムシンセサイザー自体のエラー率をかなりのマージンで削減し、デコードのための標準ビームサーチより優れている。
論文 参考訳(メタデータ) (2020-07-16T04:15:47Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。