Altifigence Academy

17 / 24 · 概念

PE、データフロー、MACの再利用

P=3,M=2,K=8を4個の出力固定PEへ割り当てます。書き込みを除くMACサイクル数と有用MACスロット利用率は何ですか。

近くに保持するものを決める

PEは乗算、累積、小さな局所状態を持つ処理要素です。PEを増やして同時処理能力が増すのは、オペランドと部分和が届く場合だけです。データフローはループ軸を時間とPE位置へ割り当て、局所に残す値を選びます。同じMAC数でも移動量は大きく違い得ます。

出力固定はオペランドを供給しながら出力部分和を局所保持します。重み固定は入力をまたいで重みを保持し、部分和を移動または結合します。入力固定は入力値を保持して重みにわたり再利用します。各名称は減らす移動を示し、他の転送まで消すわけではありません。再利用方式を組み合わせるときは実際の経路を説明します。

出力固定の割り当て例

P=4空間位置、M=2出力チャネル、K=9縮約項なら8出力、72 MACです。4 PEが各1出力を所有し、サイクルごとに1項実行します。最初の4出力は9サイクル、次の4も9で18 MACサイクルです。各組の後に重ねず1回の同時結果書き込みサイクルを加えると計20です。MACスロットは全部使いますが、演算全体の利用率は書き込みも含みます。

同じパッチの2出力チャネルを異なるPEに置き、共有入力をブロードキャストします。9サンプルのパッチを両チャネル用に別々に読むと供給境界で18読み出し、1回読んで共有すれば9です。局所PE読み出しや隣接パッチ間再利用は数えません。通信量を数える境界を示します。

部分和は局所記憶が許す数だけ保持します。4 PEで7出力なら第2組に1個の未使用PEが残ります。有効性マスクで偽の結果を抑え、利用率は有用MACを数える必要があります。

部分和の移動はint8オペランドより広い転送が必要なことがあります。値の種類ごとに幅と読み書き回数を記録します。正確な整数和の順序変更は結果を保ちますが、中間クリップがその等価性を壊し得ます。MIT Eyerissプロジェクトは再利用を考慮したアクセラレータ設計の一次例です。ここでのPE数とスケジュールは別の仮想教材例です。

自分で考えてみましょう

P=3,M=2,K=8を4個の出力固定PEへ割り当てます。書き込みを除くMACサイクル数と有用MACスロット利用率は何ですか。

解説を見る

6出力には2組、16 MACサイクルが必要です。64 PEサイクルスロット中48が有用MACなので75%です。

選択はこのブラウザに適用されます。フッターからいつでも変更できます。