具有 Spatial Analyst 的 GPU 处理

需要 Spatial Analyst 许可。

通过针对一些工具使用图形处理器 (GPU),Spatial Analyst 现在可提供增强的性能。 该技术利用现代计算机中的图形卡的计算能力来改善某些操作的性能。

目前,以下工具支持 GPU 处理:

什么是 GPU 处理?

GPU 是计算机中的硬件组件,其主要作用是在屏幕显示中加速图形的渲染。 最近,已将 GPU 的处理能力用于执行常规计算任务。

对于启用已加速 GPU 的工具,栅格处理任务将定向至 GPU,而非中央处理器 (CPU)。 某些类型的操作可从此方法中获益。 在此类情况下,软件可将处理任务划分为多个小部分并将其发送到 GPU 以进行计算。 然后,GPU 会以更快的速率并行执行所有小部分的计算。 将生成的数据发送回后,软件会将单个部分重新组成最终完成的产品。

支持的 GPU 卡和驱动程序

市场上存在多种适用于 GPU 处理的解决方案。 目前,仅支持具有 CUDA 计算能力的 3.0 版本或更高版本的 NVIDIA GPU。 您的系统必须安装相应的图形卡,才能具有访问此功能的权限。

要检查 Windows 计算机上的图形卡类型,请打开系统的“设备管理器”,然后展开“显示适配器”。 随即列出图形卡的品牌名称和类型。 如果未列出 NVIDIA 品牌的图形卡,则无法访问此功能,并且此工具将仅使用 CPU。

如果存在 NVIDIA 图形卡,则需要使用 NVIDIA 控制面板来检查系统上安装的 GPU 类型:

  1. 右键单击桌面上的空白区域。 在快捷菜单中,单击 NVIDIA 控制面板
  2. 在控制面板窗口中,转至“帮助”菜单并单击系统信息。 随即显示所有 NVIDIA 图形卡、其驱动程序版本以及其他属性。

确定 NVIDIA GPU 卡的类型后,可以从 NVIDIA CUDA GPU 帮助页面 nvidia.com 查看其 CUDA 计算能力。 在相关部分中,定位特定 GPU 卡,然后记下列出的其“计算机能力”值。 该值必须为 3.0 或更高的值,工具才支持此卡。

在计算机上安装 GPU 卡后,会随附默认驱动程序。 执行使用 GPU 的分析工具前,必须从 NVIDIA 驱动程序更新页面 nvidia.com 将 GPU 卡驱动程序更新为最新可用版本。

GPU 配置

此工具将仅使用一个 GPU 进行计算。 但是,如果计算机仅具有一个 GPU,则其将同时用于显示和计算。 在此情况下,将在工具执行时报告一条警告消息,指示显示可能出现无响应状态。 因此,对于空间分析,建议使用两个 GPU:一个用于显示,另一个用于计算。

如果系统中存在多个 GPU,将默认使用 TCC(Tesla 计算集群)驱动模式下的第一个 GPU。 如果 TCC 驱动模式下无可用 GPU,除非另外指定,否则将使用第一个 GPU(索引为 0)。 要指定或禁用 GPU,请参阅以下内容:

  • 要使用其他 GPU,可以通过系统环境变量 CUDA_VISIBLE_DEVICES 进行指定。 为此,请先创建此环境变量(如果系统中不存在)。 然后,将其值设置为表示要使用的 GPU 设备的索引值(0 表示第一个,1 表示第二个,以此类推),然后重启应用程序。
  • 如果不希望分析使用系统中安装的任何 GPU 设备,则可将系统环境变量 CUDA_VISIBLE_DEVICES 设置为 -1,然后重启应用程序。 在此之后,该工具将仅使用 CPU 进行执行。
  • 要启用工具再次使用 GPU 设备,可以删除系统环境变量 CUDA_VISIBLE_DEVICES 或者将此环境变量的值设置为要使用的 GPU 设备的索引值,然后重启应用程序。

有关环境变量 CUDA_VISIBLE_DEVICES 的详细信息,请参阅 CUDA 工具包程序设计指南 nvidia.com

以下各小节介绍了使用 GPU 功能时要达到最佳执行性能的建议配置步骤。

设置 TCC 驱动模式

对于 NVIDIA GPU,应将用于计算的 GPU 设置为使用 TCC 驱动程序,而非默认 Windows 显示驱动模型 (WDDM) 驱动程序。 TCC 模式允许 GPU 更有效地运行。

要启用 TCC 驱动模式,请使用通常位于 C:\Program Files\NVIDIA Corporation\NVSMI\nvidia-smi.exe 的 NVIDIA 系统管理接口控制程序。 例如,命令 'nvidia-smi -dm 1 -i 2' 可将设备 ID 为 2 的卡切换为显示模式 1 (TCC)。

注:

如果运行 ArcGIS Server,则用于计算的 GPU 必须处于 TCC 驱动模式。

禁用 ECC 模式

禁用用于计算的 GPU 错误检查和纠正 (ECC) 模式,因为该模式会减少 GPU 上的可用内存。

要禁用 ECC 模式,请使用通常位于 C:\Program Files\NVIDIA Corporation\NVSMI\nvidia-smi.exe 的 NVIDIA 系统管理接口 (nvidia-smi) 控制程序。 例如,命令 'nvidia-smi -e 0 -i 1' 应禁用设备 ID 为 1 的 GPU 的 ECC 模式。

增大 TDR 设置

如果用于计算的 GPU 处于 WDDM 驱动模式,则当计算花费时间超过几秒钟时,Windows 显示设备驱动程序将重启 GPU。 这称为 Windows 超时检测和恢复 (TDR) 条件。 如果出现这种情况,则工具将无法完成执行,并且将返回 GPU 错误。

可以对注册表项 TdrDelay 进行修改以避免出现上述情况。 通过将其设置为相应的值(例如,60 秒),将在触发 TDR 条件前保留足够时间以完成较长的操作。 在大部分 Windows 系统中,到注册表中 TdrDelay 项的路径为 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers。 如果 TdrDelay 项不存在,则必须在此路径中创建该项。 请注意,创建或更改此注册表值时,应首先对注册表进行备份。 必须重新启动计算机才能使更改生效。 Microsoft Developers Network 中包括关于设置 TDR 延迟 microsoft.com 的详细信息。

警告:

Esri 不对因错误修改注册表而导致的任何系统问题承担责任。 确保执行适当步骤以保证具有有效注册表备份,以便在遇到任何问题时用于恢复,或者由资深系统分析人员来执行此更改。

相关主题