プロセッサの高速化技術と性能
要点と定義
GPUは多数の演算器を備え、同種の演算を大量のデータに並列適用する処理装置です。深層学習では行列演算が多いため、GPUによる並列処理でその演算を高速化できます。
VLIWは、並列実行可能な複数の動作をコンパイル時に一つの長い複合命令にまとめて実行する方式です。CISCやRISCとは分類の観点が異なり、MIMDとも区別されます。
ヘテロジニアスマルチコアプロセッサは、異なる特性や役割を持つ複数種類のコアを搭載する構成です。高い処理性能と低消費電力の両立を目指す用途で用いられます。
投機実行は、分岐条件が確定する前に分岐先を予測し、その経路の命令を先行実行する技法です。予測が外れた場合、先行実行の結果をそのまま採用できないことがあります。
CPI(Cycles Per Instruction、命令当たりのクロックサイクル数)は、実行した命令数に対して必要となるクロックサイクル数の平均です。平均CPIは、クロックサイクル数を命令数で割って求めます。
パイプラインは、命令処理を複数段に分け、複数の命令を異なる段で重ねて処理する方式です。各段が1サイクルで動作し、停止がない場合、k段のパイプラインでn命令を処理するサイクル数はk+n-1です。
適用条件と例
各段が1サイクルで動作し、停止がないパイプラインでは、k段でn命令を処理するサイクル数はk+n-1です。最初の命令が全段を通過した後は、各サイクルに1命令が完了します。例えば4段で8命令なら11サイクルです。CPIは、一定時間内のクロックサイクル数を同じ時間内の命令数で割って求めます。例えば毎秒20億サイクル、毎秒10億命令なら平均CPIは2です。5段パイプラインの実行順は、命令フェッチ、命令デコードとレジスタ読出し、実行とアドレス生成、メモリアクセス、書込みです。分岐先の予測が必要な場面では、投機実行によって予測先の命令を先行実行することがあります。
深層学習では行列演算が多く、GPUは多数の演算器で同種の演算をデータに並列適用できるため、行列演算の高速化に適します。
GPUは行列演算を並列に処理できるため、行列演算が多い深層学習の処理を高速化できます。
VLIWでは、並列実行できる複数の動作をコンパイル時に一つの長い複合命令へまとめます。これは命令セットの複雑さや命令とデータの流れによる分類とは異なる方式です。
ヘテロジニアスマルチコアプロセッサは、異なる特性や役割を持つ複数種類のコアを搭載します。この構成は、高い処理性能と低消費電力の両立を目指す用途に適します。
投機実行は、分岐条件の確定前に分岐先を予測し、その先の命令を実行する技法です。適用の要点は、分岐の結果を待たずに予測先の処理を先行させることです。
平均CPIは、一定時間内のクロックサイクル数を、その時間内に実行した命令数で割って求めます。例えば周波数1.25 GHz、毎秒10億命令なら平均CPIは1.25です。
この節の続き
- 誤りやすい点
ここまでが冒頭部分です。ログインすると、無料でも1日2節まで全文をお読みいただけます。
アプリでこの節を読む