論文の概要: Loop unrolling: formal definition and application to testing
- arxiv url: http://arxiv.org/abs/2502.15535v1
- Date: Fri, 21 Feb 2025 15:36:21 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-02-24 17:07:17.480007
- Title: Loop unrolling: formal definition and application to testing
- Title(参考訳): Loop Unrolling: 公式定義とテストへの応用
- Authors: Li Huang, Bertrand Meyer, Reto Weber,
- Abstract要約: テストプロセスは通常、高いカバレッジを目指しているが、ループは、イテレーションの回数が一般的に予測できないため、カバレッジの野望を著しく制限する。
この記事では、アンローリングの形式的定義と形式的性質の集合を提供する。
この定義を概念的基盤として、既存の自動テストフレームワークにアンロール戦略を適用しました。
- 参考スコア(独自算出の注目度): 33.432652829284244
- License:
- Abstract: Testing processes usually aim at high coverage, but loops severely limit coverage ambitions since the number of iterations is generally not predictable. Most testing teams address this issue by adopting the extreme solution of limiting themselves to branch coverage, which only considers loop executions that iterate the body either once or not at all. This approach misses any bug that only arises after two or more iterations. To achieve more meaningful coverage, testing strategies may unroll loops, in the sense of using executions that iterate loops up to n times for some n greater than one, chosen pragmatically in consideration of the available computational power. While loop unrolling is a standard part of compiler optimization techniques, its use in testing is far less common. Part of the reason is that the concept, while seemingly intuitive, lacks a generally accepted and precise specification. The present article provides a formal definition and a set of formal properties of unrolling. All the properties have mechanically been proved correct (through the Isabelle proof assistant). Using this definition as the conceptual basis, we have applied an unrolling strategy to an existing automated testing framework and report the results: how many more bugs get detected once we unroll loops more than once? These results provide a first assessment of whether unrolling should become a standard part of test generation and test coverage measurement.
- Abstract(参考訳): テストプロセスは通常、高いカバレッジを目指しているが、ループは、イテレーションの回数が一般的に予測できないため、カバレッジの野望を著しく制限する。
ほとんどのテストチームは、自分自身をブランチカバレッジに制限する極端なソリューションを採用することでこの問題に対処している。
このアプローチでは、2つ以上のイテレーション後にのみ発生するバグを見逃します。
より意味のあるカバレッジを達成するために、テスト戦略は、利用可能な計算能力を考慮して実用的に選択された n より大きい n に対して、ループを n 倍まで繰り返す実行を使うという意味で、ループをアンロールすることがある。
ループアンローリングはコンパイラ最適化の標準的な部分であるが、テストでの使用はそれほど一般的ではない。
理由の1つは、一見直感的であるように見えるこの概念が、一般に受け入れられ、正確な仕様を欠いていることである。
この記事では、アンローリングの形式的定義と形式的性質の集合を提供する。
全ての性質は機械的に正しいことが証明されている(イザベル証明アシスタントを通して)。
この定義を概念的基盤として、既存の自動テストフレームワークにアンロール戦略を適用し、結果を報告しました。
これらの結果は、アンロールがテスト生成およびテストカバレッジ測定の標準部分になるかどうかを初めて評価する。
関連論文リスト
- Simple and Provable Scaling Laws for the Test-Time Compute of Large Language Models [70.07661254213181]
大規模言語モデルのテスト時間計算のための2つの原理的アルゴリズムを提案する。
理論的には、1つのアルゴリズムの故障確率は、そのテスト時間計算が大きくなるにつれて指数関数的に減衰する。
論文 参考訳(メタデータ) (2024-11-29T05:29:47Z) - Benchmarking Video Frame Interpolation [11.918489436283748]
提案手法は,提案するWebサイトを利用して,一貫したエラーメトリクスを確立するベンチマークである。
また、合成データを利用して線形性の仮定に忠実なテストセットを提案し、コヒーレントな方法で計算効率を評価する。
論文 参考訳(メタデータ) (2024-03-25T19:13:12Z) - A formal definition of loop unrolling with applications to test coverage [37.48416208168878]
ブランチカバレッジなど、さまざまなテストカバレッジを実現するためのテクニックは、通常、ループを反復しない。
最近の研究によると、ループをアンロールすることで、アプローチははるかに多くのバグを見つけることができる。
論文 参考訳(メタデータ) (2024-03-13T19:28:04Z) - Precise Error Rates for Computationally Efficient Testing [75.63895690909241]
本稿では,計算複雑性に着目した単純な対数-単純仮説テストの問題を再考する。
線形スペクトル統計に基づく既存の試験は、I型とII型の誤差率の間の最良のトレードオフ曲線を達成する。
論文 参考訳(メタデータ) (2023-11-01T04:41:16Z) - Sequential Kernelized Independence Testing [101.22966794822084]
我々は、カーネル化依存度にインスパイアされたシーケンシャルなカーネル化独立試験を設計する。
シミュレーションデータと実データの両方にアプローチのパワーを実証する。
論文 参考訳(メタデータ) (2022-12-14T18:08:42Z) - Test2Vec: An Execution Trace Embedding for Test Case Prioritization [12.624724734296342]
テストケースの実行トレースは、自動テストタスクの振る舞いを抽象化するよい代替手段になり得る。
本稿では,テスト実行トレースを潜在空間にマッピングする新しい埋め込み手法Test2Vecを提案する。
結果より,提案したTPは,第1検体の平均正規化ランクを41.80%向上させることがわかった。
論文 参考訳(メタデータ) (2022-06-28T20:38:36Z) - A Parallel Implementation of Computing Mean Average Precision [0.130536490219656]
平均精度(mAP)は、物体検出器の品質を評価するために広く用いられている。
現在の実装では、一度に1つのクラスに対して真正(TP)と偽正(FP)しかカウントできない。
検出されたバウンディングボックスのミニバッチを処理できる並列化された代替手段を提案する。
論文 参考訳(メタデータ) (2022-06-19T23:23:52Z) - Refined bounds for algorithm configuration: The knife-edge of dual class
approximability [94.83809668933021]
トレーニングセットが、トレーニングセット上でのパラメータの平均メトリックのパフォーマンスが、予想される将来的なパフォーマンスに最も近いことを保証するために、どの程度の規模が必要かを調査する。
この近似が L-無限ノルムの下で成り立つなら、強いサンプル複雑性境界を与えることができる。
我々は、コンピュータ科学において最も強力なツールの一つである整数プログラミングの文脈において、我々の限界を実証的に評価する。
論文 参考訳(メタデータ) (2020-06-21T15:32:21Z) - Frustratingly Simple Few-Shot Object Detection [98.42824677627581]
希少なクラスにおける既存検出器の最後の層のみを微調整することは、数発の物体検出タスクに不可欠である。
このような単純なアプローチは、現在のベンチマークで約220ポイントのメタ学習方法より優れている。
論文 参考訳(メタデータ) (2020-03-16T00:29:14Z) - Genetic Algorithms for Redundancy in Interaction Testing [0.6396288020763143]
インタラクションテストには一連のテストの設計が含まれており、少数のコンポーネントが連携して動作する場合、障害を検出することが保証される。
これらのテストスイートを構築するための既存のアルゴリズムは通常、ほとんどのテストを生成する1つの"高速"アルゴリズムと、テストスイートを"完全"する別の"より遅い"アルゴリズムを含んでいる。
我々は、これらのアプローチを一般化する遺伝的アルゴリズムを用いて、選択したアルゴリズムの数を増やして冗長性も含み、それを「ステージ」と呼ぶ。
論文 参考訳(メタデータ) (2020-02-13T10:16:46Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。