关于GPU

Zivid SDK 需要主机上安装有 GPU 才能最佳地运行。集成 GPU 和独立 GPU 都可以与 Zivid 良好配合,其中的性能差异在于您获得的捕获时间。

GPU 的要求

为了获得最佳性能,独立或集成 GPU 应具有至少 3 GB 的可用 RAM。此外,要使用 Zivid,还需要 GPU 的 OpenCL 驱动程序(1.2 或更高版本)。请按照以下针对您的特定 GPU 的说明进行操作。

OpenCL 驱动程序通常与图形驱动程序一起安装,并且应该已经安装在 Windows 上。如果您想检查您已有的 GPU 驱动程序,请使用下面的下拉列表。如果没有,请从 Intel 下载并安装最新的显卡驱动程序。

检查 GPU 驱动程序

使用 Intel Driver & Support assistant 自动检测您的驱动程序版本或按照以下说明手动查找。

英特尔驱动程序和支持助手的屏幕截图 "英特尔驱动程序和支持助手" 中图形窗格的屏幕截图
  1. StartControl Panel

  2. 从列表中选择 Device Manager (如果需要,将 View 切换为 Small Icons

  3. 展开 Display Adapter 部分并右键单击 Intel® Display AdapterProperties

  4. 导航到 Driver 标签并记下显示的 Driver Version

    Windows 上 Intel 显卡的驱动程序属性的屏幕截图。

安装图形驱动程序后,打开 Zivid Studio 并验证不会发生 OpenCL 错误。

备注

NVIDIA GPU 的计算能力必须高于最低要求值 3.3。如果不满足此要求,SDK将抛出异常:

The compute capability X.Y of the NVIDIA compute device is lower than the minimum required compute capability 3.3 (or The minimum required SM version is 3.3. Device has version X.Y).

有关 NVIDIA GPU 及其相应计算能力的概述,请访问 https://developer.nvidia.com/cuda-gpus

OpenCL 驱动程序通常与图形驱动程序一起安装。如果您想检查您已有的 GPU 驱动程序,请使用下面的下拉列表。如果没有,请从 NVIDIA 下载并安装适用于您的 GPU 的相关显卡驱动程序。

检查 GPU 驱动程序

使用 NVIDIA Smart Scan 自动检测您的驱动程序版本或按照以下说明手动查找。

  1. 打开 NVIDIA Control Panel (右键单击 Desktop )。

  2. 单击 System Information (左下角)。

  3. 请记录 Driver version 中的 Details

    Windows 上 NVIDIA 系统信息的屏幕截图。

安装图形驱动程序后,打开 Zivid Studio 并验证不会发生 OpenCL 错误。

警告

自 SDK 2.10 起,由于驱动程序中的 OpenCL 稳定性问题,对 AMD 的支持已被移除。可以通过启用Config.yml 文件中的一个选项,来 选择使用不受支持的计算设备运行SDK 。然而,这样的设置可能会产生意外的结果和错误,并且未经 Zivid 测试。

警告

Radeon 在某些 GPU 上不再支持 SPIR,请验证您的 GPU 驱动程序是否支持 SPIR 以与 Zivid 兼容。

OpenCL 驱动程序通常与图形驱动程序一起安装。如果您想检查您已有的 GPU 驱动程序,请使用下面的下拉列表。如果没有,请从 AMD 下载并安装适用于您的 GPU 的相关显卡驱动程序。

检查 GPU 驱动程序

使用 AMD Driver Auto-detect tool 自动检测您的驱动程序版本或按照以下说明手动查找。

  1. 打开 AMD Radeon Settings (右键单击 Desktop )。

  2. 单击 System 可访问系统概述、软件和硬件详细信息。

  3. 选择 Software 标签以获取有关已安装图形驱动程序的详细信息。请记录 Driver Packaging Version

Windows 上 AMD 系统信息的屏幕截图。

安装图形驱动程序后,打开 Zivid Studio 并验证不会发生 OpenCL 错误。

为了获得最佳性能,独立或集成 GPU 应具有至少 3 GB 的可用 RAM。此外,要使用 Zivid,还需要 GPU 的 OpenCL 驱动程序( 1.2 或更高版本)。请按照以下针对您的特定 GPU 的说明进行操作。

Ubuntu 上应该已经安装了 Intel 的显卡驱动程序,但不一定包含 OpenCL 驱动程序。如果您想检查您的图形驱动程序是否存在,请使用下面的下拉菜单。

检查 GPU 驱动程序

按键盘上的 Ctrl + Alt + T 键打开终端窗口,并检查驱动程序是否存在。

lspci -k | grep -EA3 'VGA|3D|Display'

欲了解更多信息,请访问官方 Intel pages

  1. 按键盘上的 Ctrl + Alt + T 键打开终端窗口,然后安装 OpenCL 驱动程序。

    sudo apt update
    sudo apt install intel-opencl-icd
    
    sudo apt update
    sudo apt install intel-opencl-icd
    
    sudo apt update
    sudo apt install intel-opencl-icd
    

    备注

    自 SDK 2.10 起,移除了对 Ubuntu 18.04 的支持。如需查看早期 SDK 版本的 Ubuntu 18.04 说明,请更改左上角的知识库版本。

  2. 打开 Zivid Studio 并验证不会出现 OpenCL 错误。

备注

如果您碰到 OpenCL 错误,您可能必须 将您的用户添加到视频组

备注

NVIDIA GPU 的计算能力必须高于最低要求值 3.3。如果不满足此要求,SDK将抛出异常:

The compute capability X.Y of the NVIDIA compute device is lower than the minimum required compute capability 3.3 (or The minimum required SM version is 3.3. Device has version X.Y).

有关 NVIDIA GPU 及其相应计算能力的概述,请访问 https://developer.nvidia.com/cuda-gpus

适用于 NVIDIA 的 OpenCL 驱动程序与图形驱动程序一起安装。如果您想检查您的图形驱动程序是否存在,请使用下面的下拉菜单,或者继续为您的系统安装最新的驱动程序。

检查 GPU 驱动程序

按键盘上的 Ctrl + Alt + T 键打开终端窗口,然后执行以下命令:

nvidia-smi

这将打印驱动程序版本。

  1. 将 NVIDIA GPU 驱动程序 PPA 添加到您的系统:

    按键盘上的 Ctrl + Alt + T 键打开终端窗口,然后添加图形驱动程序 PPA。

    sudo add-apt-repository ppa:graphics-drivers/ppa
    

    这将提供有关当前长期分支版本 nvidia-xxx 的信息。

  2. 为您的系统安装最新的驱动程序:

    sudo apt update
    sudo apt install nvidia-driver-xxx
    
    sudo apt update
    sudo apt install nvidia-driver-xxx
    
    sudo apt update
    sudo apt install nvidia-driver-xxx
    

    备注

    自 SDK 2.10 起,移除了对 Ubuntu 18.04 的支持。如需查看早期 SDK 版本的 Ubuntu 18.04 说明,请更改左上角的知识库版本。

    安装驱动程序后,重新启动系统。

    sudo reboot
    
  3. 打开 Zivid Studio 并验证不会出现 OpenCL 错误。

备注

如果您碰到 OpenCL 错误,您可能必须 将您的用户添加到视频组

警告

自 SDK 2.10 起,由于驱动程序中的 OpenCL 稳定性问题,对 AMD 的支持已被移除。可以通过启用Config.yml 文件中的一个选项,来 选择使用不受支持的计算设备运行SDK 。然而,这样的设置可能会产生意外的结果和错误,并且未经 Zivid 测试。

警告

Radeon 在某些 GPU 上不再支持 SPIR,请验证您的 GPU 驱动程序是否支持 SPIR 以与 Zivid 兼容。

  1. 下载并解压适用于 Linux 的正确 Radeon 软件:

    按键盘上的 Ctrl + Alt + T 键打开终端窗口,然后创建一个临时文件夹。

    mkdir amd && cd amd
    

    如果您访问 https://www.amd.com/en/support/kb/release-notes/rn-amdgpu-unified-linux-22-20,您会发现一个指向已损坏版本的 AMD GPU 驱动程序安装程序的链接。在以下说明中,我们将使用经过测试且有效的版本。在撰写本文时,版本为 22.20.3。 AMD 有一个 /latest 路径,但它仍然指向 22.20,该路径已损坏。

    wget --referer http://support.amd.com http://repo.radeon.com/amdgpu-install/22.20.3/ubuntu/jammy/amdgpu-install_22.20.50203-1_all.deb
    

    使用 apt 安装此软件包:

    sudo apt update
    sudo apt install ./amdgpu-install_22.20.50203-1_all.deb
    

    检查您的 Linux 内核版本:

    uname -r
    

    对于 Linux Kernel version 5.4 (Ubuntu LTS),请下载适用于 Ubuntu 20.04 的 Radeon Software 20.45:

    wget --referer http://support.amd.com https://drivers.amd.com/drivers/linux/amdgpu-pro-20.45-1188099-ubuntu-20.04.tar.xz
    

    提取内容:

    tar -Jxvf amdgpu-pro-20.45-1188099-ubuntu-20.04.tar.xz
    cd amdgpu-pro-20.45-1188099-ubuntu-20.04
    

    对于 Linux Kernel version 5.8 (Ubuntu LTS HWE stacks),请下载适用于 Linux 20.04 的 Radeon Software 20.50:

    wget --referer http://support.amd.com https://drivers.amd.com/drivers/linux/amdgpu-pro-20.50-1234664-ubuntu-20.04.tar.xz
    

    提取内容:

    tar -Jxvf amdgpu-pro-20.50-1234664-ubuntu-20.04.tar.xz
    cd amdgpu-pro-20.50-1234664-ubuntu-20.04
    

    备注

    自 SDK 2.10 起,移除了对 Ubuntu 18.04 的支持。如需查看早期 SDK 版本的 Ubuntu 18.04 说明,请更改左上角的知识库版本。

  2. 安装图形堆栈:

    AMD的官方说明

    amdgpu-install --usecase=graphics,opencl --no-32 --no-dkms
    

    备注

    如果您需要安全启动,则可能必须包含 DKMS(在上述命令中删除 --no-dkms )。更多相关信息,请参阅 secure-boot-support

    现在将您的用户添加为 rendervideo 组的成员。

    sudo gpasswd -a $USER render
    sudo gpasswd -a $USER video
    

    您可能必须重新启动才能使更改生效。

    sudo reboot
    

    您现在可以尝试打开 Zivid Studio 。如果失败,请执行以下步骤。

    AMD 的官方说明

    ./amdgpu-pro-install --opencl=pal
    

    备注

    自 SDK 2.10 起,移除了对 Ubuntu 18.04 的支持。如需查看早期 SDK 版本的 Ubuntu 18.04 说明,请更改左上角的知识库版本。

  3. 按照步骤配置安全启动(如果出现提示):

    ../../_images/secure_boot_1.png
    ../../_images/secure_boot_2.png
    ../../_images/secure_boot_3.png

    如果您无法启动,请检查 安装AMD OpenCL驱动程序后系统启动错误

  4. 打开 Zivid Studio 并验证不会出现 OpenCL 错误。

备注

如果您碰到 OpenCL 错误,您可能必须 将您的用户添加到视频组

Nvidia Jetson Orin 具有支持 CUDA 的 Nvidia GPU。所有必需的 GPU 驱动程序均随操作系统一起安装。

要使用 Zivid Studio 或 SDK 中的可视化工具 需要 GPU 的 OpenGL 程序(3.0 或更高版本)。这些应该与 GPU 驱动程序一起安装,但如果您有旧驱动程序,它们可能使用 3.0 以下的版本。按照下面下拉列表中的说明检查您已有的 OpenGL 版本。

检查 OpenGL 驱动程序
  1. 下载 OpenGL Extensions Viewer

  2. 安装、启动并检查 OpenGL 版本:

    ../../_images/opengl_version_windows_screenshot.png

如果版本低于3.0,则需要安装最新的GPU驱动。请按照上面安装 OpenCL 驱动程序的说明进行操作。

按键盘上的 Ctrl + Alt + T 键打开终端窗口,然后执行以下命令:

sudo apt install mesa-utils
glxinfo | grep "OpenGL version"

这将打印 OpenGL 版本。

如果版本低于3.0,则需要安装最新的GPU驱动。请按照上面安装 OpenCL 驱动程序的说明进行操作。

Jetson Linux 系统自带兼容的 OpenGL 版本,因此无需执行任何操作。

性能考虑因素

如果 GPU 将用于 Zivid 以外的计算,这也是最佳选择。为获得最佳性能,需要至少具有 3 GB 内存的中高端 NVIDIA GPU。这是 Zivid 的首选解决方案。

建议:

  • NVIDIA GeForce GTX 1060 或更高配置(台式机)

  • NVIDIA GeForce MX150 或更高配置(笔记本电脑)

集成 GPU 的好处是从 GPU 到 CPU 的数据传输速度很快。它也有利于需要低功耗的应用,例如电池供电的移动平台。为了获得最佳性能,则需要具有至少 3 GB 可用内存的高端集成 GPU。

建议:

  • 配备 HD630 或更好 GPU 的 Intel i7

Zivid 建议使用具有至少 16GB RAM 的 Jetson Orin 主板来运行 Zivid SDK 和其他软件。

虽然 Zivid SDK 支持 Jetson Orin Nano,但 Orin Nano 的总 RAM 只有 4GB/8GB,由 CPU 和 GPU 共享。4GB 通常不足以运行使用 Zivid SDK 的任何应用程序,而 8GB 在实践中对于许多用例而言是不够的,尤其是进行较长时间的捕获、使用 Stripe/Omni 引擎和/或启用许多过滤器时。因此,在使用 Orin Nano 时,必须仔细评估应用程序中的 RAM 使用情况。

选择计算设备

如果您有多个 GPU 并且希望 Zivid SDK 使用特定的 GPU,您可以在 配置文件 中指定计算设备。如果您想将 Zivid SDK 与 CPU 一起使用,情况也是如此。

如果该文件不存在,请下载 Config.yml 文件并将其放置在以下目录中:

mkdir %LOCALAPPDATA%\Zivid\API
move %HOMEPATH%\Downloads\Config.yml %LOCALAPPDATA%\Zivid\API\
mkdir --parents "${XDG_CONFIG_HOME-$HOME/.config}"/Zivid/API
mv ~/Downloads/Config.yml "${XDG_CONFIG_HOME-$HOME/.config}"/Zivid/API/

通过更改配置文件中的 ComputeDevice 参数来分配所需的 GPU。

如果您有来自单个供应商的多个 GPU(例如两个 Nvidia GPU), SelectionFilter 必须指定要使用哪个 GPU。我们将使用 clinfo 列出所有计算设备。请按照下面的下拉列表了解有关 clinfo 、如何安装以及如何使用它的更多信息。

clinfo
  1. 下载 clinfo Windows 二进制文件。

  2. 按键盘上的 Win + R 键启动命令提示符,然后输入 cmd 并按 Enter

    ../../_images/run-cmd-windows.png
  3. 导航到包含下载文件 (clinfo.exe) 的目录并执行以下命令:

    clinfo.exe -l
    

    这将打印有关系统上所有 OpenCL 平台及其公开的设备的所有可用信息。

    ../../_images/cmd_cl_windows.png

    如果您的 GPU 未列出,您可能需要 安装 OpenCL 驱动程序和/或图形驱动程序

  4. 如需检查 OpenCL 驱动程序版本,请使用 clinfo 并搜索 OpenCL 平台版本:

    clinfo.exe | findstr "Platform\ Version"
    

    如果版本低于 OpenCL 1.2 ,您需要 更新您的图形驱动程序

  1. 按键盘上的 Ctrl + Alt + T 键打开终端窗口并安装 clinfo

    sudo apt install -y clinfo
    
  2. 运行 clinfo -l 列出所有 OpenCL 平台。

    sudo /usr/bin/clinfo -l
    

    这将打印有关系统上所有 OpenCL 平台及其公开的设备的所有可用信息。

    如果您的 GPU 未列出,您可能需要 安装 OpenCL 驱动程序和/或图形驱动程序

    ../../_images/no-platforms-ubuntu.png
  3. 如需检查 OpenCL 驱动程序版本,请使用 clinfo 并搜索 OpenCL 平台版本:

    sudo /usr/bin/clinfo | grep "Platform Version"
    

    如果版本低于 OpenCL 1.2 ,您需要 更新您的 OpenCL 驱动程序和/或图形驱动程序

如需查找特定的 GPU 名称,请运行 clinfo 来列出您的计算设备。

clinfo -l

将配置文件中的 SelectionFilter 更改为所需设备名称的任何唯一部分。例如,当输入内容如下时,选择 NVIDIA GeForce RTX 3060

../../_images/clinfo_multiple_gpu_single_vendor.png

您可以将 SelectionFilter 设置为

ComputeDevice:
    SelectionFilter: "RTX 3060"
    Type: Any
    Vendor: Any

如果您有来自多个供应商的多个 GPU(例如集成 Intel GPU 和独立 NVIDIA GPU),请将 Type 更改为 GPU 并将 Vendor 更改为 NVIDIAIntel ,例如

ComputeDevice:
    SelectionFilter: ""
    Type: GPU
    Vendor: NVIDIA

启用不受支持的计算设备

可以通过启用 配置文件 中的选项来运行不受支持的计算设备。然而,这样的设置可能会产生意外的结果和错误,并且未经 Zivid 测试。目前,不支持的计算设备是 CPU 和 AMD GPU。

如果该文件不存在,请下载 Config.yml 文件并将其放置在以下目录中:

mkdir %LOCALAPPDATA%\Zivid\API
move %HOMEPATH%\Downloads\Config.yml %LOCALAPPDATA%\Zivid\API\
mkdir --parents "${XDG_CONFIG_HOME-$HOME/.config}"/Zivid/API
mv ~/Downloads/Config.yml "${XDG_CONFIG_HOME-$HOME/.config}"/Zivid/API/

配置文件包含以下信息,其中 AllowUnsupported: yes 为启用不支持的计算设备:

__version__:
    serializer: 1
    data: 19
Configuration:
    ComputeDevice:
        AllowUnsupported: yes

启用CPU进行计算

警告

使用 CPU 进行计算时,捕获时间会大大增加,对于大多数应用来说,不推荐使用该模式。注意:这里的使用 CPU 进行计算不是指使用 CPU 自带的集成 GPU 进行计算。

可以使用 CPU Runtime for OpenCL 在 Intel 芯片组上运行 Zivid SDK。将 Config.yml 中的计算设备的 Type 更改为 CPU

__version__:
    serializer: 1
    data: 19
Configuration:
    ComputeDevice:
        Type: CPU
        AllowUnsupported: yes

版本历史

SDK

变更

2.12.0

增加了 Jetson Orin 的支持。