命令レベルの並列性(めいれいレベルのへいれつせい、Instruction-level parallelism、ILP)とは、プログラムの中で並列して実行できる処理がいくつあるかの尺度である。 例として以下のようなプログラムを考える。 1. e = a + b 2. f = c + d 3. g = e * f 処理3は、処理1と処理2の結果に依存している。したがって、処理3は処理1と処理2が完了してからでないと計算を開始できない。 しかし、処理1と処理2は何にも依存していないので並列して実行できる。 それぞれの処理にかかる時間が同じだとして、それを1とすると、これら3命令が完了するのにかかる時間は2となり、結局ILPは3/2となる。 コンパイラとCPUの設計者の目標のひとつは、可能な限りILPを高めることである。通常のプログラムは逐次実行モデルで書かれており、命令はプログラマが記した順に実