WSL2上でリアルタイム推論を実行してみました。
Linux環境では30ms程度で終わる推論が、WSL2環境では100ms程度かかってしまいます。
推論はpytorchで実装したMTCNNというモデルの顔検出です。
また、スペックは同じPCで行っています。
<環境>
ホストOS: Windows 11
WSLタイプ: WSL2 (Ubuntu 20.04)
GPU : GTX 3080 (ノートパソコン)
Cuda : 11.1
<質問>
以下の投稿を読むと、バッチ数が小さいとWSL2上でCUDAを呼び出すオーバーヘッドが大きくなるように見えます。
https://developer.nvidia.com/blog/leveling-up-cuda-performance-on-wsl2-with-new-enhancements/
現状、WSL2はバッチ数をある程度上げればネイティブに近い速度で実用的に使えるが、
リアルタイム推論のように一回に1枚ずつ推論するような使い方では大きなオーバーヘッドが
発生してしまいまともに使えないという認識でよいのでしょうか?
もし1枚ずつの推論でもチューニングする方法などあれば教えていただけますと幸いです。