●全体でも2.5倍速くなった
また同図では1〜3層目までの演算が27.9us (2.79kサイクル)で終了しています(*2)。前節では69.9us (6.99kサイクル)だったので、全体でも約2.5倍高速化しています。
(*2)最初の5usはリセット期間なので32.9 - 5 = 27.9us
●今後のパイプライン化を考えてサイクル数のバランスを良くする
各層でかかるサイクル数(MNIST画像1枚あたり)とその割合を表3-21に示します。1層目、2層目と並列化した結果、3層目のサイクル数が一番長くなりました。
表3-21 全層が30%台でバランスが良い(1サイクル = 10ns)
|
1層目 |
2層目 |
3層目 |
全体 |
時間 |
8.4us |
8.5us |
11us |
27.9us |
サイクル数 |
0.84k |
0.85k |
1.1k |
2.79k |
割合 |
30% |
30% |
39% |
100% |
●次節ではパイプライン化する
ここで述べたように、パイプライン化するには各層のサイクル数のバランスをとる必要があります。表3-21を見ると最長でも30%台なので、このまま次節でパイプライン化したいと思います。お楽しみに! |