私たちは、上で読むことができますWikipediaのページ、Googleが機械学習のためのカスタムASICチップを構築し、AIを加速するのに役立ちますTensorFlowに合わせていること。
ASICチップは、その回路を変更することができない特定の用途に合わせて特別にカスタマイズされているため、呼び出される固定アルゴリズムが必要です。
では、アルゴリズムを変更できない場合、ASICチップを使用したAIの加速はどのように正確に機能するのでしょうか。それのどの部分が正確に加速していますか?
私たちは、上で読むことができますWikipediaのページ、Googleが機械学習のためのカスタムASICチップを構築し、AIを加速するのに役立ちますTensorFlowに合わせていること。
ASICチップは、その回路を変更することができない特定の用途に合わせて特別にカスタマイズされているため、呼び出される固定アルゴリズムが必要です。
では、アルゴリズムを変更できない場合、ASICチップを使用したAIの加速はどのように正確に機能するのでしょうか。それのどの部分が正確に加速していますか?
回答:
ほとんどのMLアプリケーションでの主要な作業は、(行列の乗算などの)(非常に大きな)テンソル演算のセットです。これはASIC で簡単に実行でき、他のすべてのアルゴリズムはその上で実行できます。
アルゴリズムは最小限に変更されたと思いますが、必要なハードウェアは骨に合わせて調整されています。
データ移動操作の数と同様に、ゲート遷移の数が(おそらく浮動小数点演算と精度も)削減されるため、電力と実行時間の両方が節約されます。Googleは、TPUが同じ作業を行うために10倍のコスト削減を達成することを推奨しています。
ASIC-特定用途向けICの略です。基本的には、HDLでチップを設計するプログラムを記述します。私のポイントを説明するために、現代のコンピューターがどのように機能するかの例を取り上げます。
n
コアの数は?問題ない。異なる処理ユニットから異なる場所へのデータフローを定義したいですか?できます。また、綿密な計画を立てることで、ASIC領域と電力と速度の間のトレードオフを得ることができます。唯一の問題は、これらすべてについて、独自の基準を作成する必要があることです。一般に、ピンの数とその機能、浮動小数点表現のIEEE 754規格など、多くの試行錯誤の後に登場したプロセッサの設計では、いくつかの明確に定義された規格に従っています。したがって、これらすべてを克服できれば、独自のASICを簡単に作成できます。GoogleがTPUで何をしているのかはわかりませんが、手元の要件に応じて、8ビットコア用にある種の整数およびFP標準を設計したようです。電力、面積、速度を考慮して、おそらくASICに実装しています。