@Vengineerの戯言 : Twitter
SystemVerilogの世界へようこそ、すべては、SystemC v0.9公開から始まった
Google Edge TPU で、3か月毎の Update
今回は、複数の Edge TPU を使えるようになったと。
使い方は、ここ : Pipeline a model with multiple Edge TPUs
現時点では、C++インターフェースだけで、Pythonはサポートしていないようです。
edgetpu_compiler コマンド の引数として、--num_segments=4 のように、いくつに分割するかを指定するだけですね。
分割して、「Off-chip memory used」が 0 になっていれば、分割成功のようです。
目安としては、「num_segments = [Model size] MB / 6 MB」のようです。
実行時は、Pipeline C++ API reference を使うことになります。
この API では、各 Edge TPU の実行毎に、thread を割り当てている感じですね。
複数のEdge TPUで1つのモデルを実行するだけでなく、Pipeline で実行することでスループットを上げられるということですね。
これって、「 Graphcore の3つのケースの MODEL PIPELING 」と同じですよね。
Graphcore の場合は、チップ間も直接接続しているけど、Edge TPU の場合はホストメモリ経由になってしまいます。