Paddle-Lite icon indicating copy to clipboard operation
Paddle-Lite copied to clipboard

macos m1 使用编译的opencl的库 执行时报错

Open ANDROIDTODO opened this issue 3 years ago • 3 comments

Hi Team, 我的环境是macOS M1 12.3, 我编译的分支是develop的d1c0885e9节点. OPT:2.11-rc, M1版本

编译命令: ./lite/tools/build_macos.sh --with_log=ON --with_extra=ON --with_opencl=ON arm64

OPT命令: opt_m1 --model_dir=./ch_PP-OCRv2_rec_infer --valid_targets=opencl,arm --optimize_out=ch_PP-OCRv2_rec_infer_opencl

编译成功,执行时出现报错: not implemented, set to default 4GB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1170 Setup] ARM multiprocessors name: M1 [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1171 Setup] ARM multiprocessors number: 8 [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1173 Setup] ARM multiprocessors ID: 0, max freq: 1000000, min freq: 1000000, cluster ID: 0, CPU ARCH: A1 [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1173 Setup] ARM multiprocessors ID: 1, max freq: 1000000, min freq: 1000000, cluster ID: 0, CPU ARCH: A1 [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1173 Setup] ARM multiprocessors ID: 2, max freq: 1000000, min freq: 1000000, cluster ID: 0, CPU ARCH: A1 [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1173 Setup] ARM multiprocessors ID: 3, max freq: 1000000, min freq: 1000000, cluster ID: 0, CPU ARCH: A1 [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1173 Setup] ARM multiprocessors ID: 4, max freq: 1000000, min freq: 1000000, cluster ID: 0, CPU ARCH: A1 [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1173 Setup] ARM multiprocessors ID: 5, max freq: 1000000, min freq: 1000000, cluster ID: 0, CPU ARCH: A1 [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1173 Setup] ARM multiprocessors ID: 6, max freq: 1000000, min freq: 1000000, cluster ID: 0, CPU ARCH: A1 [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1173 Setup] ARM multiprocessors ID: 7, max freq: 1000000, min freq: 1000000, cluster ID: 0, CPU ARCH: A1 [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1179 Setup] L1 DataCache size is: [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1181 Setup] 128 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1181 Setup] 128 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1181 Setup] 128 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1181 Setup] 128 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1181 Setup] 128 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1181 Setup] 128 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1181 Setup] 128 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1181 Setup] 128 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1183 Setup] L2 Cache size is: [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1185 Setup] 4096 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1185 Setup] 4096 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1185 Setup] 4096 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1185 Setup] 4096 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1185 Setup] 4096 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1185 Setup] 4096 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1185 Setup] 4096 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1185 Setup] 4096 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1187 Setup] L3 Cache size is: [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1189 Setup] 0 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1189 Setup] 0 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1189 Setup] 0 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1189 Setup] 0 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1189 Setup] 0 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1189 Setup] 0 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1189 Setup] 0 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1189 Setup] 0 KB [I 4/28 17: 8:27.899 ...idu/Paddle-Lite/lite/core/device_info.cc:1191 Setup] Total memory: 4194304KB [W 4/28 17: 8:27.900 ...e-Lite/lite/model_parser/model_parser.cc:889 LoadModelFbsFromFile] warning: the version of opt that transformed this model is not consistent with current Paddle-Lite version. version of opt:v2.10-rc version of current Paddle-Lite:d1c0885e9 [I 4/28 17: 8:27.900 ...-Lite/lite/backends/opencl/cl_runtime.cc:69 Init] opencl_lib_found:1 [I 4/28 17: 8:27.900 ...-Lite/lite/backends/opencl/cl_runtime.cc:77 Init] dlsym_success:1 [I 4/28 17: 8:27.900 ...-Lite/lite/backends/opencl/cl_runtime.cc:537 InitializePlatform] Platform extension: cl_APPLE_SetMemObjectDestructor cl_APPLE_ContextLoggingFunctions cl_APPLE_clut cl_APPLE_query_kernel_names cl_APPLE_gl_sharing cl_khr_gl_event [I 4/28 17: 8:27.900 ...-Lite/lite/backends/opencl/cl_runtime.cc:85 Init] is_platform_init:1 [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:623 InitializeDevice] Using device: Apple M1 [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:649 InitializeDevice] CL_DEVICE_VERSION:OpenCL 1.2 [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:656 InitializeDevice] device_type:GPU [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:660 InitializeDevice] The chosen device has 8 compute units. [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:664 InitializeDevice] CL_DEVICE_MAX_CLOCK_FREQUENCY:1000 [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:674 InitializeDevice] The local memory size of the chosen device is 32.000000 KB. [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:681 InitializeDevice] CL_DEVICE_GLOBAL_MEM_CACHE_SIZE(KB):0.000000 KB. [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:689 InitializeDevice] CL_DEVICE_GLOBAL_MEM_CACHELINE_SIZE(KB):0.000000 KB. [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:696 InitializeDevice] CL_DEVICE_GLOBAL_MEM_SIZE(KB):11184816.000000 KB. [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:704 InitializeDevice] CL_DEVICE_MAX_WORK_GROUP_SIZE:256 [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:708 InitializeDevice] CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS:3 [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:713 InitializeDevice] max_work_item_sizes[0]:256 [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:713 InitializeDevice] max_work_item_sizes[1]:256 [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:713 InitializeDevice] max_work_item_sizes[2]:256 [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:724 InitializeDevice] CL_DEVICE_MAX_CONSTANT_BUFFER_SIZE:1048576.000000 [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:735 InitializeDevice] The chosen device supports image processing. [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:739 InitializeDevice] CL_DEVICE_IMAGE2D_MAX_HEIGHT:16384 [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:743 InitializeDevice] CL_DEVICE_IMAGE2D_MAX_WIDTH:16384 [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:760 InitializeDevice] The chosen device doesn't support the half data type! [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:765 InitializeDevice] CL_DEVICE_ADDRESS_BITS:64 [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:769 InitializeDevice] CL_DRIVER_VERSION:1.2 1.0 [I 4/28 17: 8:27.925 ...-Lite/lite/backends/opencl/cl_runtime.cc:93 Init] is_device_init:1 [I 4/28 17: 8:27.926 ...-Lite/lite/backends/opencl/cl_runtime.cc:105 Init] set is_cl_runtime_initialized_ = true [I 4/28 17: 8:27.927 ...e-Lite/lite/backends/opencl/cl_runtime.h:93 OpenCLAvaliableForDevice] need to check fp16 valid:0 [W 4/28 17: 8:27.927 ...e-Lite/lite/model_parser/model_parser.cc:889 LoadModelFbsFromFile] warning: the version of opt that transformed this model is not consistent with current Paddle-Lite version. version of opt:v2.11-rc version of current Paddle-Lite:d1c0885e9 [I 4/28 17: 8:27.928 ...e-Lite/lite/backends/opencl/cl_runtime.h:93 OpenCLAvaliableForDevice] need to check fp16 valid:0 [W 4/28 17: 8:27.928 ...e-Lite/lite/model_parser/model_parser.cc:889 LoadModelFbsFromFile] warning: the version of opt that transformed this model is not consistent with current Paddle-Lite version. version of opt:v2.11-rc version of current Paddle-Lite:d1c0885e9 [I 4/28 17: 8:27.931 ...e-Lite/lite/backends/opencl/cl_runtime.h:93 OpenCLAvaliableForDevice] need to check fp16 valid:0 [I 4/28 17: 8:27.931 ...baidu/Paddle-Lite/lite/api/paddle_api.cc:50 IsOpenCLBackendValid] need to check fp16 valid:0 [I 4/28 17: 8:27.931 ...baidu/Paddle-Lite/lite/api/paddle_api.cc:57 IsOpenCLBackendValid] Found opencl library:1 [I 4/28 17: 8:27.931 ...baidu/Paddle-Lite/lite/api/paddle_api.cc:63 IsOpenCLBackendValid] dlsym_success:1 [I 4/28 17: 8:27.931 ...e-Lite/lite/backends/opencl/cl_runtime.h:93 OpenCLAvaliableForDevice] need to check fp16 valid:0 [I 4/28 17: 8:27.931 ...baidu/Paddle-Lite/lite/api/paddle_api.cc:70 IsOpenCLBackendValid] opencl_valid:1 opencl is valid:1 [F 4/28 17: 8:28.829 ...ite/kernels/opencl/conv_image_compute.cc:1880 Conv2d1x1opt] OpenCL error with code CL_INVALID_MEM_OBJECT happened in file /Users/yangjun/jerome/ocr/baidu/Paddle-Lite/lite/kernels/opencl/conv_image_compute.cc at line 1880. Exiting.

请问这个要怎么解决呢? 非OPENCL版本是没有问题的。

顺便说一下,编译lite时,一直报错Paddle-Lite/build.macos.armmacos.armv8.opencl/lite/api/paddle_use_kernels.h: No such file or directory

ANDROIDTODO avatar Apr 28 '22 09:04 ANDROIDTODO

您好,我们已经收到了您的问题,会安排技术人员尽快解答您的问题,请耐心等待。请您再次检查是否提供了清晰的问题描述、复现代码、环境&版本、报错信息等。同时,您也可以通过查看官网文档常见问题历史Issue来寻求解答。祝您生活愉快~

Hi! We've received your issue and please be patient to get responded. We will arrange technicians to answer your questions as soon as possible. Please make sure that you have posted enough message to demo your request. You may also check out the APIFAQ and Github Issue to get the answer.Have a nice day!

paddle-bot-old[bot] avatar Apr 28 '22 09:04 paddle-bot-old[bot]

您好,这个问题我反馈给opencl同学看一下

lxwlaq avatar Apr 28 '22 09:04 lxwlaq

您好,可以提供下转之后的模型吗

sprouteer avatar Jun 27 '22 06:06 sprouteer