核心概念
LLVMコンパイラインフラストラクチャを活用し、Rust、Swift、Julia、C/C++の生産環境のプログラムから1.4Tトークンの大規模なLLVM IRデータセット「ComPile」を構築した。
摘要
本論文では、LLVM中間表現(IR)を用いた大規模なコードデータセット「ComPile」を紹介する。ComPileは、Rust、Swift、Julia、C/C++の生産環境のプログラムから収集した1.4Tトークンの大規模なデータセットである。
データセット構築の主なポイントは以下の通り:
- LLVMコンパイラインフラストラクチャを活用し、パッケージマネージャやコンパイラから直接IRを抽出
- 最適化前のIRを収集することで、コンパイラ最適化パイプラインの分析が可能
- 重複IRの除去により、高品質なデータセットを構築
- 許諾ライセンスのあるサブセットを公開
統計分析の結果、ComPileは大規模言語モデルの訓練や、コンパイラ最適化のための機械学習モデルの開発に有用であることが示された。
統計資料
Rustのモジュールには平均736億トークンが含まれている
Juliaのモジュールには平均548億トークンが含まれている
C++のモジュールには平均47億トークンが含まれている
Cのモジュールには平均5億トークンが含まれている
引述
"LLVMコンパイラインフラストラクチャを活用し、パッケージマネージャやコンパイラから直接IRを抽出"
"最適化前のIRを収集することで、コンパイラ最適化パイプラインの分析が可能"
"重複IRの除去により、高品質なデータセットを構築"