主旨
3Dカメラ・画像認識処理を使うと、遅い処理がボトルネックになって応答性が低下する。
シングルスレッドじゃいけないこともわかっているけど実装が追いついていない。
この記事は、皆さんからのアドバイスを求めるための記事です。
シングルスレッドだと何がいけないのか
- 画像データの取得の処理の際に、IO待ちの時間にCPUが何もしていないという無駄を生じる。
- 推論処理も同様に処理の時間が大きい。
- 処理結果を画像として表示する際にも描画時間がかかる。
- 描画が処理のルーチンと同じになっている分だけ、処理だけの部分が遅くなる。
ライブラリの例
trio
trioによる並行処理 もくじ
trio-util
https://github.com/groove-x/trio-util
少なくとも1万台以上のロボットで動作している。