MNN icon indicating copy to clipboard operation
MNN copied to clipboard

mnn 模型,Android 平台 benchmark 测试,推理使用 openCL, vulkan 都比 CPU 慢,可能是什么原因?

Open dearwind153 opened this issue 1 year ago • 3 comments

MNN 版本:MNN-2.9.0 平台:Android 小米9 硬件 NDK: NDK-r20b 编译时,同时编译 Android 平台 CPU, openCL, vulkan 后端

mnn 模型,Android 平台 benchmark 测试,推理使用 openCL, vulkan 都比 CPU 慢,可能是什么原因?

CPU backend 测试: max = 297.433 ms min = 294.566 ms avg = 296.252 ms openCL backend 测试: max = 720.318 ms min = 661.634 ms avg = 699.978 ms vulkan backend 测试: max = 2201.615 ms min = 2060.933 ms avg = 2118.065 ms

mnn model 已发送到 :[email protected]

详细测试情况如下:

CPU backend 测试 ————————————————————————————————————————————————

./benchmark.out ./mnn_models/ 15 5 0 4 0 MNN benchmark Forward type: CPU thread=4 precision=0 sparsity=0 sparseBlockOC=1 testQuantizedModel=0 --------> Benchmarking... loop = 15, warmup = 5 [-INFO-]: precision!=2, use fp32 inference. parsed /proc/cpuinfo Hardware = "Qualcomm Technologies, Inc SM8150" The device support i8sdot:1, support fp16:1, support i8mm: 0 [ - ] onnxsim.mnn max = 297.433 ms min = 294.566 ms avg = 296.252 ms CPU

openCL backend 测试 ———————————————————————————————————————————————— ./benchmark.out ./mnn_models/ 15 5 3 4 0 MNN benchmark Forward type: OpenCL thread=4 precision=0 sparsity=0 sparseBlockOC=1 testQuantizedModel=0 --------> Benchmarking... loop = 15, warmup = 5 [-INFO-]: precision!=2, use fp32 inference. parsed /proc/cpuinfo Hardware = "Qualcomm Technologies, Inc SM8150" The device support i8sdot:1, support fp16:1, support i8mm: 0 [ - ] onnxsim.mnn max = 720.318 ms min = 661.634 ms avg = 699.978 ms openCL

vulkan backend 测试 ———————————————————————————————————————————————— ./benchmark.out ./mnn_models/ 15 5 7 4 0 MNN benchmark Forward type: Vulkan thread=4 precision=0 sparsity=0 sparseBlockOC=1 testQuantizedModel=0 --------> Benchmarking... loop = 15, warmup = 5 [-INFO-]: precision!=2, use fp32 inference. parsed /proc/cpuinfo Hardware = "Qualcomm Technologies, Inc SM8150" The device support i8sdot:1, support fp16:1, support i8mm: 0 [ - ] onnxsim.mnn max = 2201.615 ms min = 2060.933 ms avg = 2118.065 ms vulkan

dearwind153 avatar Jun 11 '24 09:06 dearwind153

可能是有尺寸超出。换用 buffer 试下吧。 OpenCL: numberThread 设成 68 Vulkan :编译时加上 -DMNN_VULKAN_IMAGE=OFF

jxt1234 avatar Jun 14 '24 08:06 jxt1234

另外模型文件我好像没收到,重新发一下?

jxt1234 avatar Jun 14 '24 08:06 jxt1234

@dearwind153 请教一下,cpu 和 gpu 利用率的这个图是怎么画出来的

lacoboi avatar Jul 09 '24 07:07 lacoboi

Marking as stale. No activity in 60 days.

github-actions[bot] avatar Sep 07 '24 09:09 github-actions[bot]