Hi,
I am working with a S32V234 EVB2, with BSP20 and Vivante SDK from binaries_gpu_userspace_vtk_6.2.4.
After running clinfo, I can see that I am using the embedded profile.
CL_DEVICE_PROFILE: EMBEDDED_PROFILE
Is the full profile supported? How to enable it?
Thank you
Hello Cristina,
The S32 and vtk6.2.4 support openCL 1.2/1.1 full profile but In short, the main differences here are in floating-point accuracy. In other words, the embedded profile need not adhere to the IEEE 754 floating-point specification, which may be a problem if you are doing lots of numerical calculations which rely on it. Quoted from the specification:
This relaxation of the requirement to adhere to IEEE 754 requirements for basic floating- point operations, though extremely undesirable, is to provide flexibility for embedded devices that have lot stricter requirements on hardware area budgets.
while desktop profiles must have a compiler available to compile OpenCL kernels, embedded profiles need not provide one. This can be seen through the clGetDeviceInfo
documentation, which states:
CL_DEVICE_COMPILER_AVAILABLE: Return type: cl_bool Is CL_FALSE if the implementation does not have a compiler available to compile the program source. Is CL_TRUE if the compiler is available. This can be CL_FALSE for the embededed platform profile only.
Regards
Hi,
thank you for the information. In my case,
Platform ID: 0
CL_PLATFORM_NAME: Vivante OpenCL Platform
CL_PLATFORM_PROFILE: EMBEDDED_PROFILE
CL_PLATFORM_VERSION: OpenCL 1.1 V6.2.4.p2.163672
CL_PLATFORM_VENDOR: Vivante Corporation
CL_PLATFORM_EXTENSIONS: cl_khr_icd
Available devices: 1
Device ID: 0
Device Ptr: 0x158881e0
CL_DEVICE_NAME: Vivante OpenCL Device GC3000.5451.0000
CL_DEVICE_VENDOR: Vivante Corporation
CL_DEVICE_TYPE: GPU
CL_DEVICE_OPENCL_C_VERSION: OpenCL C 1.1
CL_DEVICE_VENDOR_ID: 0x00564956
CL_DEVICE_PLATFORM: 0xb304d598
CL_DEVICE_VERSION: OpenCL 1.1
CL_DEVICE_PROFILE: EMBEDDED_PROFILE
CL_DRIVER_VERSION: OpenCL 1.1 V6.2.4.p2.163672
CL_DEVICE_COMPILER_AVAILABLE: Yes
As you mentioned, that vtk6.2.4 supports openCL 1.2/1.1 full profile, how can we switch to the full profile?