ubuntu20.04 + intel集成显卡搭建OpenCL运行环境 您所在的位置:网站首页 4930集成显卡 ubuntu20.04 + intel集成显卡搭建OpenCL运行环境

ubuntu20.04 + intel集成显卡搭建OpenCL运行环境

2024-02-17 07:31| 来源: 网络整理| 查看: 265

一、Opencl简介 OpenCL(开放计算语言)是一种开放的免版税标准,用于跨CPU、GPU和其他处理器的通用并行编程,为软件开发人员提供了便携式和高效的访问这些异构处理平台的能力。OpenCL通过低级别、高性能、可移植的抽象,支持广泛的应用程序,从嵌入式和消费软件到HPC解决方案。通过创建一个高效、接近金属的编程接口,OpenCL将形成一个由独立于平台的工具、中间件和应用程序组成的并行计算生态系统的基础层。OpenCL由一个API组成,用于协调异构处理器之间的并行计算;以及具有良好指定的计算环境的跨平台编程语言。 计算机相关的工作,还是要看英文原版:http://man.opencl.org/ 二、测试机器 Lenovo-L14笔记本,Intel集成显卡,HD Graphics类型显卡,对应i915 GPU驱动。 三、Ubuntu20.04相关Opencl组件安装

linux操作系统是ubuntu20.04,其他OS,ubuntu其他版本更新版本猜测可行,以前的老版本需要验证。 安装OpenCl基本组件: sudo apt install ocl-icd-libopencl1 opencl-headers clinfo ocl-icd-opencl-dev 参考链接:https://askubuntu.com/questions/850281/opencl-on-ubuntu-16-04-intel-sandy-bridge-cpu 安装Intel集成显卡OpenCL RunTime组件: sudo apt-get install intel-opencl-icd 参考链接:https://www.intel.com/content/www/us/en/developer/articles/tool/opencl-drivers.html#latest_linux_SDK_release 独立intel显卡,请参考2中的链接中第二部分的内容,--未验证 四、测试 clinfo clinfo | grep Device

Device Name Intel(R) Gen12LP HD Graphics NEO Device Vendor Intel(R) Corporation Device Vendor ID 0x8086 Device Version OpenCL 2.1 NEO Device OpenCL C Version OpenCL C 2.0 Device Type GPU Device Profile FULL_PROFILE Device Available Yes Device Partition (core) Unified memory for Host and Device Yes Device Extensions cl_khr_byte_addressable_store cl_khr_fp16 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_icd cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_intel_subgroups cl_intel_required_subgroup_size cl_intel_subgroups_short cl_khr_spir cl_intel_accelerator cl_intel_driver_diagnostics cl_khr_priority_hints cl_khr_throttle_hints cl_khr_create_command_queue cl_intel_subgroups_char cl_intel_subgroups_long cl_khr_subgroups cl_khr_il_program cl_intel_spirv_media_block_io cl_intel_spirv_subgroups cl_khr_spirv_no_integer_wrap_decoration cl_intel_unified_shared_memory_preview cl_khr_mipmap_image cl_khr_mipmap_image_writes cl_intel_planar_yuv cl_intel_packed_yuv cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_image2d_from_buffer cl_khr_depth_images cl_intel_media_block_io cl_khr_3d_image_writes cl_intel_subgroup_local_block_io clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) Success [INTEL] Device Name Intel(R) Gen12LP HD Graphics NEO Device Name Intel(R) Gen12LP HD Graphics NEO Device Name Intel(R) Gen12LP HD Graphics NEO

OpenCLInfo 上一步中,使用ubuntu自带命令来测试不直观,下面我们自己编译一个源代码来测试一下。 通过git将下面参考链接的代码都下载下来,opencl-book-samples目录下编译,如果遇到OpenGL的问题,可以直接注释CMkeLists.txt中的出错目录即可,找到OpenCLInfo可执行文件执行:./OpenCLInfo 显示结果如下:说明intel集成显卡OpenCL编译,运行环境搭建成功。--修改代码将大量打印信息注释了。

/OpenCLInfo Number of platforms: 1 CL_PLATFORM_PROFILE: FULL_PROFILE CL_PLATFORM_VERSION: OpenCL 2.1 CL_PLATFORM_VENDOR: Intel(R) Corporation CL_PLATFORM_EXTENSIONS: cl_khr_byte_addressable_store cl_khr_fp16 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_icd cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_intel_subgroups cl_intel_required_subgroup_size cl_intel_subgroups_short cl_khr_spir cl_intel_accelerator cl_intel_driver_diagnostics cl_khr_priority_hints cl_khr_throttle_hints cl_khr_create_command_queue cl_intel_subgroups_char cl_intel_subgroups_long cl_khr_subgroups cl_khr_il_program cl_intel_spirv_media_block_io cl_intel_spirv_subgroups cl_khr_spirv_no_integer_wrap_decoration cl_intel_unified_shared_memory_preview cl_khr_mipmap_image cl_khr_mipmap_image_writes cl_intel_planar_yuv cl_intel_packed_yuv cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_image2d_from_buffer cl_khr_depth_images cl_intel_media_block_io cl_khr_3d_image_writes cl_intel_subgroup_local_block_io Number of devices: 1 CL_DEVICE_TYPE: CL_DEVICE_TYPE_GPU CL_DEVICE_VENDOR_ID: 32902 CL_DEVICE_MAX_COMPUTE_UNITS: 80 CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS: 3 CL_DEVICE_PLATFORM: 0x55d7e36650b0 CL_DEVICE_NAME: Intel(R) Gen12LP HD Graphics NEO CL_DEVICE_VENDOR: Intel(R) Corporation CL_DRIVER_VERSION: 1.0.0 CL_DEVICE_PROFILE: FULL_PROFILE CL_DEVICE_VERSION: OpenCL 2.1 NEO CL_DEVICE_OPENCL_C_VERSION: OpenCL C 2.0 CL_DEVICE_EXTENSIONS: cl_khr_byte_addressable_store cl_khr_fp16 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_icd cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_intel_subgroups cl_intel_required_subgroup_size cl_intel_subgroups_short cl_khr_spir cl_intel_accelerator cl_intel_driver_diagnostics cl_khr_priority_hints cl_khr_throttle_hints cl_khr_create_command_queue cl_intel_subgroups_char cl_intel_subgroups_long cl_khr_subgroups cl_khr_il_program cl_intel_spirv_media_block_io cl_intel_spirv_subgroups cl_khr_spirv_no_integer_wrap_decoration cl_intel_unified_shared_memory_preview cl_khr_mipmap_image cl_khr_mipmap_image_writes cl_intel_planar_yuv cl_intel_packed_yuv cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_image2d_from_buffer cl_khr_depth_images cl_intel_media_block_io cl_khr_3d_image_writes cl_intel_subgroup_local_block_io

下载链接:https://github.com/bgaster/opencl-book-samples/blob/master/src/Chapter_3/OpenCLInfo/OpenCLInfo.cpp 五、相关扩展 AMD家显卡应该跟Intel家显卡类似,不论集成还是独立显卡。--未验证 Nvidia家显卡,感觉CUDU比OpenCL还出名,这里就不介绍了。 六、总结 这次因为工作需要开始学习OpenCL,网上查询了很多关于OpenCL环境搭建的资料,都不太合适Ubuntu20.04版本,希望这篇文章可以给后来者一点参考和帮助。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有