スピルとは

すぴる

レジスタ割り当てで、同時に使う値がレジスタの数より多いとき、一部の値をメモリ(スタック)に退避させること。退避と読み戻しの命令が増えて遅くなる。

この用語の分野: コンパイラ

解説の中の「スピル」

「スピル」が出てくる問題(4問)

  1. レジスタ割り当てで「スピル」が起こると、生成されるコードはどうなるか。
  2. ある関数の中で、同時に生きている値の数が最も多いところで5個だった。干渉グラフがこの5個以外の制約を生まない単純な場合、すべての値をスピルなしでレジスタに置くには、レジスタが少なくとも何個必要か。
  3. コンパイラのレジスタ割り当てで、干渉グラフを塗り分ける(彩色する)方法を使うとき、グラフの節と辺が表すものの組み合わせとして正しいものはどれか。
  4. GPUのカーネルで、1スレッドあたりのレジスタの使用量が多すぎると起こりうることとして正しいものはどれか。

関連する用語

レジスタ割り当て GPU インライン展開 SSA形式 LLVM 基本ブロック 共通部分式の削除 強度低減 構文解析 字句解析

用語集の一覧へ