使用CUDA调用GPU时第一次推理速度慢
Fatfish588 opened this issue · comments
设置
- 平台:Windows 11
- 设备:Intel i5-13600KF + RTX 4090 + cuda 11.7
- 环境 onnxruntime=1.10.0、onnxruntime-gpu=1.10.0,opencv-python=4.5.1.48,torch =1.13.1+cu117,torchaudio =0.13.1+cu117,torchvision=0.14.1+cu117
描述
直接运行一次inference.py,使用cuda,仓库自带图片,耗时1023ms,
修改代码运行一次inference.py,使用cpu,仓库自带图片,耗时35ms,
使用for循环运行inference.py,将output = network(img)部分循环100次记录时间,耗时达到ReadME中的描述,并且甚至出现了0.0ms
问题
相同的情况出现在了我的另一台2060设备上,查阅资料确实有CPU任务比GPU任务快的情况,比如模型太小或者数据量太小,把东西从CPU加载到GPU的时间比整个任务都长,或者是任务存在cache导致后续的任务并不是完整的,导致出现了0.0ms的速度。我是一个超分辨率入门学习者,希望作者能解答我的疑惑,这到底是单纯的第一张慢后续的正常,还是因为cache,其实都很慢?