OpenCL 主机应用 - 2022.1 简体中文

Vitis 统一软件平台文档 应用加速开发 (UG1393)

Document ID
UG1393
Release Date
2022-05-25
Version
2022.1 简体中文

Vitis™ 核开发套件中,主机代码是使用赛灵思的 Xilinx Runtime (XRT) API 或业界标准 OpenCL™ API 以 C 或 C++ 语言编写的。如需了解有关 XRT 本机 API 的说明,请访问 XRT 网站,网址为:https://xilinx.github.io/XRT/master/html/xrt_native_apis.htmlVitis 核开发套件支持 OpenCL 1.2 API,如 https://www.khronos.org/registry/OpenCL/specs/opencl-1.2.pdf 中所述。如需了解有关 OpenCL 的 XRT 扩展的说明,请访问 https://xilinx.github.io/XRT/master/html/opencl_extension.html

提示: 此处文本中所示代码示例使用的是 OpenCL C 语言 API。

总之,主机代码结构可分为 3 个部分:

  1. 设置环境。
  2. 核命令执行包括执行一个或多个内核。
  3. 资源的后处理和发布。
提示: Vitis 核开发套件支持 OpenCL 可安装客户端驱动 (ICD) 扩展 (cl_khr_icd)。此扩展支持在同一系统上共存多个 OpenCL 实现。如需了解详细信息以及安装指示信息,请参阅 OpenCL 可安装客户端驱动程序加载器
注释: 要对主机程序启用多线程,从 Vitis 核开发套件应用调用 fork() 系统调用时请谨慎处理。fork() 不会复制所有运行时线程。因此,在 Vitis 核开发套件中,子进程无法作为完整应用来运行。建议使用 posix_spawn() 系统调用从 Vitis 软件平台应用启动另一个进程。