論文の概要: DR.FIX: Automatically Fixing Data Races at Industry Scale
- arxiv url: http://arxiv.org/abs/2504.15637v1
- Date: Tue, 22 Apr 2025 06:56:15 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-04-30 21:56:21.266894
- Title: DR.FIX: Automatically Fixing Data Races at Industry Scale
- Title(参考訳): DR.FIX: 産業規模でのデータ競合を自動的に修正する
- Authors: Farnaz Behrang, Zhizhou Zhang, Georgian-Vlad Saioc, Peng Liu, Milind Chabbi,
- Abstract要約: Dr.Fixは、現実世界の設定でデータレースの修正を生成するツールである。
Dr.FixはUberの開発者に統合され、実用性を実証している。
- 参考スコア(独自算出の注目度): 4.079738222767962
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Data races are a prevalent class of concurrency bugs in shared-memory parallel programs, posing significant challenges to software reliability and reproducibility. While there is an extensive body of research on detecting data races and a wealth of practical detection tools across various programming languages, considerably less effort has been directed toward automatically fixing data races at an industrial scale. In large codebases, data races are continuously introduced and exhibit myriad patterns, making automated fixing particularly challenging. In this paper, we tackle the problem of automatically fixing data races at an industrial scale. We present Dr.Fix, a tool that combines large language models (LLMs) with program analysis to generate fixes for data races in real-world settings, effectively addressing a broad spectrum of racy patterns in complex code contexts. Implemented for Go--the programming language widely used in modern microservice architectures where concurrency is pervasive and data races are common--Dr.Fix seamlessly integrates into existing development workflows. We detail the design of Dr.Fix and examine how individual design choices influence the quality of the fixes produced. Over the past 18 months, Dr.Fix has been integrated into developer workflows at Uber demonstrating its practical utility. During this period, Dr.Fix produced patches for 224 (55%) from a corpus of 404 data races spanning various categories; 193 of these patches (86%) were accepted by more than a hundred developers via code reviews and integrated into the codebase.
- Abstract(参考訳): データレースは、共有メモリ並列プログラムにおける並列性バグの一般的なクラスであり、ソフトウェアの信頼性と再現性に重大な課題を生じさせる。
データ競合の検出に関する広範な研究や、さまざまなプログラミング言語における多くの実用的な検出ツールがあるが、産業規模でのデータ競合を自動的に修正する取り組みは、はるかに少ない。
大きなコードベースでは、データレースが継続的に導入され、無数のパターンが示され、自動修正が特に難しい。
本稿では,産業規模でデータレースを自動的に修正する問題に取り組む。
本稿では,大規模言語モデル(LLM)とプログラム解析を組み合わせて,実環境におけるデータ競合の修正を生成するツールであるDr.Fixについて述べる。
Goのための実装 - 並行処理が普及し、データレースが一般的である現代のマイクロサービスアーキテクチャで広く使用されているプログラミング言語。Dr.Fixは、既存の開発ワークフローにシームレスに統合される。
本稿では,Dr.Fixの設計について詳述し,個々の設計選択が生成した修正の品質に与える影響について考察する。
過去18ヶ月にわたって、Dr.FixはUberの開発者ワークフローに統合され、実用性を示している。
この期間、Dr.Fixは404個のデータレースのコーパスから224個(55%)のパッチを作成し、そのうち193個(86%)がコードレビューを通じて100人以上の開発者が受け入れ、コードベースに統合された。
関連論文リスト
- CraftRTL: High-quality Synthetic Data Generation for Verilog Code Models with Correct-by-Construction Non-Textual Representations and Targeted Code Repair [4.554742043916029]
本稿では,従来手法の合成データを用いて,Verilog 符号化における微調整 LLM の解析を行った。
我々は、非テクスト表現の扱いの困難さと、ランダムに「マイナー」ミスを犯すモデルによるトレーニング中の大きな変動の2つを識別する。
我々の微調整されたStarcoder2-15Bは、VerilogEval-Machine, VerilogEval-Human, RTLLMで3.8%、10.9%、pass@1で6.6%、最先端の結果よりも優れています。
論文 参考訳(メタデータ) (2024-09-19T12:15:55Z) - MarsCode Agent: AI-native Automated Bug Fixing [7.909344108948294]
MarsCode Agentは、大規模な言語モデルを利用して、ソフトウェアコードのバグを自動的に識別し、修復する新しいフレームワークである。
提案手法は, 計画, バグ再現, 障害局所化, パッチの候補生成, バリデーションといった, 高品質なバグ修正を確実にするための体系的なプロセスに従う。
以上の結果から,MarsCode Agentは既存の自動化アプローチと比較して,バグ修正において高い成功率を達成していることがわかった。
論文 参考訳(メタデータ) (2024-09-02T02:24:38Z) - DiscoveryBench: Towards Data-Driven Discovery with Large Language Models [50.36636396660163]
我々は、データ駆動探索の多段階プロセスを形式化する最初の包括的なベンチマークであるDiscoveryBenchを紹介する。
我々のベンチマークには、社会学や工学などの6つの分野にまたがる264のタスクが含まれている。
私たちのベンチマークでは、自律的なデータ駆動型発見の課題を説明し、コミュニティが前進するための貴重なリソースとして役立ちます。
論文 参考訳(メタデータ) (2024-07-01T18:58:22Z) - Leveraging Large Language Models for Efficient Failure Analysis in Game Development [47.618236610219554]
本稿では,テストの失敗の原因となるコードの変更を自動的に識別する手法を提案する。
このメソッドは、LLM(Large Language Models)を利用して、エラーメッセージと対応するコード変更を関連付ける。
当社のアプローチは新たに作成したデータセットで71%の精度に達しています。
論文 参考訳(メタデータ) (2024-06-11T09:21:50Z) - DeepCode AI Fix: Fixing Security Vulnerabilities with Large Language
Models [3.1690235522182104]
大規模言語モデル(LLM)は、様々なプログラミングタスクの解決にますます使われている。
長距離コード関係を学習するモデルを必要とするため,タスクは困難であることを示す。
本稿では,LLMのクエリと微調整のための新しいアプローチにより,これらの課題に対処する手法を提案する。
論文 参考訳(メタデータ) (2024-02-19T18:35:40Z) - A Novel Approach for Automatic Program Repair using Round-Trip
Translation with Large Language Models [50.86686630756207]
研究によると、ある文の文法的誤りは、それを他の言語に翻訳し、その語を返せば修正できる。
現在の自動プログラム修復(APR)生成モデルは、ソースコードで事前訓練され、修正のために微調整されている。
本稿では,あるプログラミング言語から別のプログラミング言語,あるいは自然言語へのコード変換,そして,その逆といった,微調整ステップをバイパスし,ラウンド・トリップ変換(RTT)を用いる手法を提案する。
論文 参考訳(メタデータ) (2024-01-15T22:36:31Z) - Generative AI for Software Metadata: Overview of the Information
Retrieval in Software Engineering Track at FIRE 2023 [18.616716369775883]
Information Retrieval in Software Engineering (IRSE)トラックは、コードコメントの自動評価ソリューションの開発を目的としている。
データセットは9048のコードコメントと、オープンソースCベースのプロジェクトから抽出されたコードスニペットペアで構成されている。
大きな言語モデルから生成されたラベルは、予測モデルのバイアスを増加させるが、過度に適合しない結果をもたらす。
論文 参考訳(メタデータ) (2023-10-27T14:13:23Z) - RAP-Gen: Retrieval-Augmented Patch Generation with CodeT5 for Automatic
Program Repair [75.40584530380589]
新たな検索型パッチ生成フレームワーク(RAP-Gen)を提案する。
RAP-Gen 以前のバグ修正ペアのリストから取得した関連する修正パターンを明示的に活用する。
RAP-GenをJavaScriptのTFixベンチマークとJavaのCode RefinementとDefects4Jベンチマークの2つのプログラミング言語で評価する。
論文 参考訳(メタデータ) (2023-09-12T08:52:56Z) - BigIssue: A Realistic Bug Localization Benchmark [89.8240118116093]
BigIssueは、現実的なバグローカライゼーションのためのベンチマークである。
実際のJavaバグと合成Javaバグの多様性を備えた一般的なベンチマークを提供する。
われわれは,バグローカライゼーションの最先端技術として,APRの性能向上と,現代の開発サイクルへの適用性の向上を期待している。
論文 参考訳(メタデータ) (2022-07-21T20:17:53Z) - FixEval: Execution-based Evaluation of Program Fixes for Programming
Problems [23.987104440395576]
FixEvalは、競合するプログラミング問題とそれに対応する修正に対して、バグの多いコードを提出するベンチマークです。
FixEvalは、モデル生成プログラム修正の正確性を評価するために、ユニットテストの広範なコレクションを提供する。
実験の結果,マッチングに基づくメトリクスは,モデル生成プログラムの修正を正確に反映しないことがわかった。
論文 参考訳(メタデータ) (2022-06-15T20:18:43Z) - Break-It-Fix-It: Unsupervised Learning for Program Repair [90.55497679266442]
我々は2つの重要なアイデアを持つ新しいトレーニング手法であるBreak-It-Fix-It (BIFI)を提案する。
批判者は、実際の悪い入力でフィクスダーの出力をチェックし、トレーニングデータに良い(固定された)出力を追加する。
これらのアイデアに基づいて、よりペア化されたデータを生成するために、ブレーカとフィクスチャを同時に使用しながら、繰り返し更新する。
BIFIは既存のメソッドより優れており、GitHub-Pythonで90.5%、DeepFixで71.7%の修正精度がある。
論文 参考訳(メタデータ) (2021-06-11T20:31:04Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。