The advancement of machine learning for compiler optimization, particularly within the polyhedral model, is constrained by the scarcity of large-scale, public performance datasets. This data bottleneck forces researchers to undertake costly data generation campaigns, slowing down innovation and hindering reproducible research learned code optimization. To address this gap, we introduce LOOPerSet, a new public dataset containing 28 million labeled data points derived from 220,000 unique, synthetically generated polyhedral programs. Each data point maps a program and a complex sequence of semantics-preserving transformations (such as fusion, skewing, tiling, and parallelism)to a ground truth performance measurement (execution time). The scale and diversity of LOOPerSet make it a valuable resource for training and evaluating learned cost models, benchmarking new model architectures, and exploring the frontiers of automated polyhedral scheduling. The dataset is released under a permissive license to foster reproducible research and lower the barrier to entry for data-driven compiler optimization.
academic- 論文ID: 2510.10209
- タイトル: LOOPerSet: A Large-Scale Dataset for Data-Driven Polyhedral Compiler Optimization
- 著者: Massinissa Merouani, Afif Boudaoud, Riyadh Baghdadi (ニューヨーク大学アブダビ校)
- 分類: cs.PL (プログラミング言語), cs.LG (機械学習), cs.PF (性能)
- 発表日: 2025年10月11日 (arXiv プレプリント)
- 論文リンク: https://arxiv.org/abs/2510.10209
多面体モデルにおける機械学習コンパイラ最適化の発展は、大規模な公開性能データセットの不足により制約されている。このデータボトルネックにより、研究者は高額なデータ生成活動を強いられ、イノベーションのペースが低下し、再現可能なコード最適化研究が阻害されている。この問題に対処するため、著者らはLOOPerSetを導入した。これは2,800万個のラベル付きデータポイントを含む新しい公開データセットであり、22万個の独自に生成された合成多面体プログラムに由来する。各データポイントは、プログラムと複雑な意味保存変換シーケンス(融合、スキューイング、タイリング、並列化など)を実際の性能測定(実行時間)にマッピングしている。LOOPerSetの規模と多様性により、学習成本モデルの訓練と評価、新しいモデルアーキテクチャのベンチマーク、および自動多面体スケジューリングの最前線の探索のための貴重なリソースとなっている。
多面体モデルは、複雑なループ変換を表現および適用するための強力なフレームワークを提供し、科学計算と高性能アプリケーションの最適化に不可欠である。しかし、主な課題は、合法的な変換シーケンスの膨大な探索空間をナビゲートし、与えられたハードウェアターゲット上で最適な性能を提供する変換シーケンスを見つけることである。
- 従来の方法の限界: 既存の分析的コストモデルとヒューリスティック手法は、汎用性と処理可能性を備えているが、最適化と基盤となるシステム間の微妙な非線形相互作用を捉えることが難しい
- データ駆動型手法の可能性: 機械学習手法は大量の性能データで訓練することにより、実際のハードウェア上での変換のコスト効果に関するより詳細な理解を発展させることができる
- データ不足のボトルネック: 大規模な公開性能データセットの欠如は、データ駆動型コンパイラ最適化研究を深刻に制約している
- データ生成コストが高い: 研究チームは高額で時間のかかるデータ生成活動を実施する必要がある
- 再現性が低い: 公開データセットの欠如は厳密な方法比較を阻害する
- 研究の敷居が高い: 高いデータ収集コストは潜在的な貢献者の分野への参入を阻害する
- 大規模公開データセット: 2,800万個のラベル付きデータポイントを含むLOOPerSetデータセットを構築し、22万個の独自に生成された合成多面体プログラムに由来する
- 多様性の保証: 多段階ランダム化プログラム生成器により構造的多様性を確保し、特定のベンチマークへの偏りを回避する
- 関連性指向サンプリング: 関連性ガイド付き変換空間サンプリング戦略を採用し、データセットが実際に有用な最適化シーケンスを含むことを保証する
- 厳密な検証: 標準化木編集距離などの定量的方法によるデータセットの多様性と新規性の検証
- オープンアクセス: 寛容なライセンスの下で公開し、再現可能な研究を促進し、データ駆動型コンパイラ最適化の敷居を低下させる
大規模で多様化されたデータセットを構築する。各データポイントは以下を含む:
- 入力: 多面体プログラム表現 + 変換シーケンス
- 出力: 実際のハードウェア上の性能測定(実行時間)
- 制約: すべての変換は意味的正確性を保持する必要がある
多段階ランダム化プロセス:
ループ構造生成:
- 確率的にトップレベルループネストの数を決定
- 各ネストの構造を再帰的に構築
- 矩形および非矩形(三角形、台形)の反復領域を生成
- ループ境界は定数または外側ループイテレータの関数
計算配置と順序付け:
- ループネスト内に計算をランダムに配置
- 同じレベルで計算とサブネストをインターリーブ可能
- 各計算にデータ型(32/64ビット浮動小数点または整数)を割り当て
メモリアクセスと式生成:
- メモリパターン: 単純な恒等マッピングから複雑な多次元パターン(星形、十字形)および定数オフセットアクセスまで、多様なメモリアクセスパターンを作成
- 算術式: 式ツリーをランダムに組み合わせることで計算ロジックを構築し、メモリアクセスとスカラー値を結合し、一般的な算術演算子と数学関数を使用
一貫性と検証チェック:
- 自明な作業(冗長計算ループ、デッド書き込みなど)を検出および防止
- 合成プログラムが構文的および計算的に意味があることを確認
LOOPer自動スケジューラの実行ガイド付き探索メカニズムを使用してビーム探索を実行し、主要な多面体最適化の有望なシーケンスを探索:
- ループ融合 (Loop Fusion)
- スキューイング (Skewing)
- インターチェンジ (Interchange)
- リバーサル (Reversal)
- タイリング (Tiling)
- 並列化 (Parallelization)
- アンローリング (Unrolling)
合法性検証: 標準的な多面体依存分析を使用して、すべての変換シーケンスが意味的正確性を保持することを確認する。
- Tiramisu コンパイラフレームワークを使用して実行可能ファイルを生成
- デュアルソケットIntel Xeon E5-2695 v2プロセッサシステム上で実行
- 測定の安定性を確保するため、各プログラムバージョンを最大30回実行
- システムノイズに対応するため、完全な実行時間リストを記録
- 構造的多様性の最大化: 再帰的確率生成プロセスにより、プログラム構造の広範なカバレッジを確保
- 関連性ガイド付きサンプリング: ランダムサンプリングの非効率性を回避し、実際のコンパイラが考慮する変換シーケンスに焦点を当てる
- 定量的多様性検証: 標準化木編集距離などの正式な方法を使用してデータセット品質を検証
- ハードウェア適応設計: 事前学習と転移学習をサポートし、新しいアーキテクチャへの適応コストを削減
- プログラム総数: 約22万個の独自プログラム
- データポイント総数: 2,800万個以上のラベル付きサンプル
- プログラムあたりのスケジュール数: 中央値70個
- データ生成作業量: 約7.1万CPU時間
- 加速比範囲: 0.0004× から 1230×
- ターゲットアーキテクチャ: デュアルソケットIntel Xeon E5-2695 v2プロセッサシステム
- 測定方法: 各プログラムバージョンを最大30回実行し、実行時間分布を記録
- 構造的相似性: 標準化木編集距離(nTED)を使用してプログラム間の構造的相似性を測定
- ベンチマーク比較: PolyBench スイートとの定量的比較分析
- 特徴空間分析: 主成分分析(PCA)を使用した20次元特徴空間の可視化
構造的多様性:
- プログラムの14%が少なくとも1つの非矩形反復領域を含む
- ループ深度、メモリ参照パターン、分岐係数は長尾分布を示す
- メモリ占有量、ベースライン実行時間、および総反復領域体積は複数の桁にわたる
性能分布:
- 測定された加速比は1.0×を中心とした尖峰分布を示す
- 右尾は効率的な変換シーケンスの存在を示す
- 左尾は有害なスケジュールの場合を捉える
PolyBenchとの比較:
- 重複なし確認: 最小nTED距離は決してゼロではなく、最も類似しているのはseidel-2d (nTED=0.022)
- より広い構造空間: 合成プログラムとベンチマークの中央値距離(0.537)はPolyBench内部中央値距離(0.467)より高い
- 特徴空間カバレッジ: PCA可視化はPolyBenchプログラムがLOOPerSet特徴クラウドの密集領域内に位置することを示す
分布比較:
- 累積分布関数は、合成プログラムとベンチマーク間の距離分布がベンチマーク内部距離分布より継続的に低いことを示す
- これはLOOPerSetが既存ベンチマークより広く、より多様な構造空間を探索していることを示唆している
- 従来の方法: PLUTO、PolyOpt、GRAPHITEなど分析的コストモデルに基づく方法
- 学習方法: Tiramisu自動スケジューラ、TVM/Ansor、Halide最適化器などのデータ駆動型手法
- 既存の制限: 大規模な公開多面体最適化性能データセットの欠如
- 関連リソース: TpuGraphsなどのテンソル計算グラフ性能予測データセット
- ベンチマーク: PolyBenchなどの標準ベンチマークスイートの限界
- 合成方法: コンパイラ研究におけるランダムプログラム生成の応用
- データボトルネックの解決: LOOPerSetは多面体コンパイラ最適化研究におけるデータ不足の問題を効果的に解決する
- 品質保証: 厳密な多様性分析と関連性ガイド付きサンプリングによるデータセット品質の確保
- コミュニティリソース: 研究コミュニティに即座に利用可能な大規模ベンチマークプラットフォームを提供
- ハードウェア特異性: 性能ラベルはIntel Xeon E5-2695 v2アーキテクチャに特定
- 合成プログラムの限界: 多様化されているが、すべての実世界プログラムパターンを完全にカバーできない可能性
- 変換空間: LOOPerシステムがサポートする変換タイプに限定
- クロスアーキテクチャ拡張: GPUおよび他のCPUマイクロアーキテクチャ上での性能ラベル生成
- 転移学習研究: ゼロショットまたは少数ショット汎化に関する研究にデータセットを活用
- 新しいモデルアーキテクチャ: GNN、Transformerなどの新しい成本モデルアーキテクチャの探索
- 解釈可能性研究: モデル失敗パターンの分析と汎化能力の向上
- 前例のない規模: 2,800万データポイントの規模は本分野で前例がない
- 方法論の厳密性: 多段階生成パイプラインと定量的検証方法は科学的に厳密
- 実用的価値が高い: 関連性ガイド付きサンプリングはデータセットの実際の応用価値を確保
- 開放性が強い: CC-BY 4.0ライセンスとHugging Faceプラットフォームはアクセス容易性を確保
- 再現可能性: 詳細なデータフォーマット説明とツールサポート
- アーキテクチャ依存性: 性能ラベルは単一ハードウェアプラットフォームに限定
- 検証が限定的: 実際のアプリケーションでの検証が不足
- 生成バイアス: 合成プログラムに系統的バイアスが存在する可能性
- 変換カバレッジ: 変換タイプは既存ツールサポートに限定
- 学術的貢献: データ駆動型コンパイラ最適化研究の基盤インフラを提供
- 実用的価値: 新規研究者の参入敷居を大幅に低下
- 再現可能性: 方法比較と結果の再現を促進
- 長期的影響: 本分野をより多くのデータ駆動型方向へ推進する可能性
- 成本モデル訓練: 様々な機械学習成本モデルの訓練と評価
- アーキテクチャ比較: 異なるモデルアーキテクチャと特性化方法のベンチマーク
- 転移学習: 新しいアーキテクチャ適応をサポートする事前学習データセット
- ヒューリスティック発見: データマイニングによる新しいコンパイラヒューリスティックの発見
- 解釈可能性研究: モデル動作と失敗パターンの分析
- アクセスアドレス: https://huggingface.co/datasets/Mascinissa/LOOPerSet
- データフォーマット: JSON Lines (.jsonl)
- ライセンス協定: Creative Commons Attribution 4.0 International (CC-BY 4.0)
- バージョン選択:
- フルバージョン: 2,800万データポイント
- コンパクトバージョン: 1,000万データポイント(LOOPer論文実験と一致)
LOOPerSetデータセットは多面体コンパイラ最適化研究分野における重要なマイルストーンを表し、大規模で高品質な公開データセットを提供することにより、本分野の発展を大幅に推進し、研究の敷居を低下させることが期待される。その厳密な構築方法とオープンなアクセス方式により、今後の関連研究のための貴重なリソースとなる。