NVIDIA Home NVIDIA Home Menu Menu icon Menu Menu icon Close Close icon Close Close icon Close Close icon Caret down icon Accordion is closed, click to open. Caret down icon Accordion is closed, click to open. Caret up icon Accordion is open, click to close. Caret right icon Click to expand Caret right icon Click to expand Caret right icon Click to expand menu. Caret left icon Click to collapse menu. Caret left icon Click to collapse menu. Caret left icon Click to collapse menu. Shopping Cart Click to see cart items Search icon Click to search
Skip to main content
NVIDIA 引领人工智能计算
  • 云服务
    BioNeMo

    适用于生命科学研究和发现的 AI 驱动平台

    DGX Cloud

    基于领先平台的完全托管式端到端 AI 平台

    NeMo

    构建、自定义和部署多模态生成式 AI

    Omniverse Cloud

    将先进的仿真和 AI 技术集成到复杂的 3D 工作流中

    NVIDIA NGC

    加速的、容器化的 AI 模型和 SDK

    数据中心
    概览

    借助 AI 和加速计算实现数据中心现代化

    DGX 平台

    用于模型开发和部署的企业 AI 工厂

    Grace CPU

    用于将数据转化为智能的数据中心架构

    HGX 平台

    专为 AI 和 HPC 打造的超级计算机

    IGX 平台

    适用于边缘 AI 的高级功能安全与信息安全

    MGX 平台

    使用模块化服务器进行加速计算

    OVX 系统

    适用于高性能 AI 的可扩展数据中心基础设施

    嵌入式系统
    Jetson

    适用于自主机器和嵌入式应用的领先平台

    DRIVE AGX

    强大的车载计算能力,适用于 AI 驱动的自动驾驶汽车系统

    Clara AGX

    适用于创新型医疗设备和成像的 AI 计算

    游戏和创作
    GeForce 显卡

    RTX 显卡带来颠覆性的 AI 功能

    笔记本电脑

    经 Max-Q 技术优化的轻薄耐用 RTX 笔记本电脑

    G-SYNC 显示器

    借助 NVIDIA G-SYNC 显示器,畅享流畅、无撕裂的游戏体验

    DLSS

    可提升帧率并增强画质的神经网络渲染技术

    RTX. It's On.

    先进的全景光线追踪和神经网络渲染技术平台

    Reflex

    出色的响应速度,可加快反应速度并提高瞄准精度

    RTX AI PC

    用于游戏、创作、生产力和开发的 AI PC

    NVIDIA Studio

    专为创作者打造的高性能笔记本电脑和台式机

    NVIDIA App

    优化游戏、直播和 AI 赋能的创意

    NVIDIA Broadcast 应用

    AI 增强的语音和视频,适用于更高级的流式传输、视频和通话

    显卡
    Blackwell 架构

    新工业革命的引擎

    Hopper 架构

    为每个数据中心提供高性能、可扩展性和安全性

    Ada Lovelace 架构

    性能和能效带来无限可能

    GeForce

    RTX 显卡带来颠覆性的 AI 功能

    NVIDIA RTX PRO

    加速专业 AI、图形、渲染和计算工作负载

    虚拟 GPU

    适用于可扩展高性能计算的虚拟解决方案

    笔记本电脑
    GeForce 笔记本电脑

    搭载 RTX GPU 的笔记本电脑,专为游戏玩家和创作者打造

    Studio 设计本

    专为创作者打造的高性能笔记本电脑

    NVIDIA RTX PRO 笔记本电脑

    随时随地加速专业 AI 和视觉计算

    网络
    概览

    适用于现代工作负载的加速网络

    DPU 和 SuperNIC

    软件定义的硬件加速器, 适用于网络、存储和安全

    以太网

    以太网在各种应用中的性能、可用性和易用性

    InfiniBand

    适用于超级计算机、AI 和云数据中心的高性能网络

    网络软件

    用于优化性能和可扩展性的网络软件

    网络加速

    适用于现代 GPU 加速数据中心的 IO 子系统

    专业工作站
    DGX Spark

    桌面上的 Grace Blackwell AI 超级计算机

    NVIDIA RTX PRO AI 工作站

    加速 AI 工作流的创新和生产力

    NVIDIA RTX PRO 台式机

    强大的 AI、图形、渲染和计算工作负载

    NVIDIA RTX PRO 笔记本电脑

    随时随地加速专业 AI 和视觉计算

    软件
    代理式 AI — Agent Intelligence Toolkit

    AI Blueprint

    AI 推理 — Dynamo

    AI 推理微服务 — NIM

    AI 微服务 — CUDA-X

    汽车 — DRIVE

    虚拟形象 — Tokkio

    汽车 — DRIVE

    网络安全 — Morpheus

    数据科学 — Apache Spark

    数据科学 — RAPIDS

    决策优化 — cuOpt

    生成式 AI — NeMo

    医疗健康 — Clara

    工业 AI — Omniverse

    智能视频分析 — Metropolis

    NVIDIA Mission Control

    NVIDIA AI Enterprise 平台

    物理 AI — Cosmos

    NVIDIA Run:ai

    机器人 — Isaac

    电信行业 — Aerial

    查看所有软件

    工具
    AI Workbench

    借助 GPU 上的 NVIDIA AI Workbench 简化 AI 开发

    API Catalog

    探索面向开发者的 NVIDIA AI 模型、Blueprint 和工具

    数据中心管理

    适用于数据中心加速的 AI 和 HPC 软件解决方案

    GPU 监控

    监控和管理集群环境中的 GPU 性能

    Nsight

    探索适用于 AI、图形和 HPC 的 NVIDIA 开发者工具

    NGC 目录

    探索 GPU 优化的 AI、HPC 和数据科学软件

    适用于笔记本电脑的 NVIDIA App

    优化企业 GPU 管理

    NVIDIA NGC

    借助 NVIDIA GPU Cloud 解决方案加速 AI 和 HPC 工作负载

    桌面管理器

    借助 NVIDIA RTX Desktop Manager 提高多显示器工作效率

    RTX 加速的创意应用

    专为艺术家和设计师打造的创意工具和 AI 赋能的应用

    视频会议

    AI 赋能的音频和视频增强

  • 人工智能
    概览

    借助 AI 和机器学习提高业务的智能和效率

    代理式 AI

    构建用于推理、规划和行动的 AI 智能体

    AI 数据

    为适用于 AI 的新型企业基础架构提供支持

    对话式 AI

    借助实时语音 AI 实现自然、个性化的交互

    网络安全

    AI 驱动的解决方案,可增强网络安全和 AI 基础设施

    数据科学

    在大型数据集上进行迭代,更频繁地部署模型,并降低总成本

    生成式 AI

    即时运行和部署生成式 AI

    推理

    借助 AI 赋能的应用和服务实现突破性性能

    云和数据中心
    概览

    借助 NVIDIA 为 AI、HPC 和现代工作负载提供支持

    面向企业的 AI 数据平台

    将企业存储带入代理式 AI 时代

    加速计算

    加速计算使用专用硬件来提升 IT 性能

    云计算

    按需提供 IT 资源和服务,实现可扩展性和智能见解

    托管

    加速 AI 在整个组织中的扩展

    MLOps

    借助 MLOps 加速 AI

    网络

    高速以太网互连解决方案和服务

    可持续计算

    借助 AI 和加速计算节省能源并降低成本

    可视化

    NVIDIA 虚拟 GPU 软件提供强大的 GPU 性能

    设计和仿真
    概览

    简化元宇宙应用的构建、运营和连接

    计算机辅助工程

    使用 AI 加速的实时数字孪生开发实时交互式设计

    数字孪生开发

    利用基于物理性质的大规模 OpenUSD 仿真的强大功能

    渲染

    将先进的渲染技术引入专业工作流程

    机器人仿真

    创新解决方案,助您应对机器人开发、边缘和视觉 AI 挑战

    科学可视化

    使研究人员能够以交互式速度可视化其大型数据集

    汽车仿真

    AI 定义的汽车正在改变移动出行的未来

    扩展现实

    通过在虚拟环境中进行沉浸式、可扩展的交互,转变工作流

    高性能计算
    概览

    探索适用于 AI、模拟和加速计算的 NVIDIA HPC 解决方案

    HPC 和 AI

    借助 GPU 加速的 HPC 和 AI 提高准确性

    科学可视化

    使研究人员能够以交互式速度可视化大型数据集

    仿真和建模

    加速仿真工作负载

    量子计算

    借助 QPU 快速推进科学创新

    机器人和边缘AI
    概览

    用于应对机器人、边缘端和视觉 AI 挑战的创新解决方案

    机器人

    GPU 加速的 AI 感知、仿真和软件进展

    边缘 AI

    将 NVIDIA AI 的强大功能带到边缘,提供实时决策解决方案

    视觉 AI

    借助视觉 AI 将数据转化为有价值的见解

    自动驾驶汽车
    概览

    AI 增强型汽车正在改变移动出行的未来

    基础设施

    安全自动驾驶汽车开发所需的数据中心工具

    模拟

    探索用于安全自动驾驶汽车开发的高保真传感器仿真

    车载计算

    开发自动驾驶功能和沉浸式车内体验

    安全

    从云端到车端的先进自动驾驶汽车安全系统

  • 行业
    概览
    建筑、工程、施工和运营
    汽车
    消费互联网
    网络安全
    能源
    金融服务
    医疗健康和生命科学
    高等教育
    游戏开发
    全球公共部门
    制造业
    媒体和娱乐
    餐饮
    零售和快速消费品
    机器人
    智慧城市
    超级计算
    电信
    交通运输
  • 驱动
  • 支持
  • 0
  • 登录 登出
Skip to main content
  • 0
  • Login LogOut
NVIDIA NVIDIA logo
BioNeMo

适用于生命科学研究和发现的 AI 驱动平台

DGX Cloud

基于领先平台的完全托管式端到端 AI 平台

NeMo

构建、自定义和部署多模态生成式 AI

Omniverse Cloud

将先进的仿真和 AI 技术集成到复杂的 3D 工作流中

NVIDIA NGC

加速的、容器化的 AI 模型和 SDK

概览

借助 AI 和加速计算实现数据中心现代化

DGX 平台

用于模型开发和部署的企业 AI 工厂

Grace CPU

用于将数据转化为智能的数据中心架构

HGX 平台

专为 AI 和 HPC 打造的超级计算机

IGX 平台

适用于边缘 AI 的高级功能安全与信息安全

MGX 平台

使用模块化服务器进行加速计算

OVX 系统

适用于高性能 AI 的可扩展数据中心基础设施

Jetson

适用于自主机器和嵌入式应用的领先平台

DRIVE AGX

强大的车载计算能力,适用于 AI 驱动的自动驾驶汽车系统

Clara AGX

适用于创新型医疗设备和成像的 AI 计算

GeForce 显卡

RTX 显卡带来颠覆性的 AI 功能

笔记本电脑

经 Max-Q 技术优化的轻薄耐用 RTX 笔记本电脑

G-SYNC 显示器

借助 NVIDIA G-SYNC 显示器,畅享流畅、无撕裂的游戏体验

DLSS

可提升帧率并增强画质的神经网络渲染技术

RTX. It's On.

先进的全景光线追踪和神经网络渲染技术平台

Reflex

出色的响应速度,可加快反应速度并提高瞄准精度

RTX AI PC

用于游戏、创作、生产力和开发的 AI PC

NVIDIA Studio

专为创作者打造的高性能笔记本电脑和台式机

NVIDIA App

优化游戏、直播和 AI 赋能的创意

NVIDIA Broadcast 应用

AI 增强的语音和视频,适用于更高级的流式传输、视频和通话

Blackwell 架构

新工业革命的引擎

Hopper 架构

为每个数据中心提供高性能、可扩展性和安全性

Ada Lovelace 架构

性能和能效带来无限可能

GeForce

RTX 显卡带来颠覆性的 AI 功能

NVIDIA RTX PRO

加速专业 AI、图形、渲染和计算工作负载

虚拟 GPU

适用于可扩展高性能计算的虚拟解决方案

GeForce 笔记本电脑

搭载 RTX GPU 的笔记本电脑,专为游戏玩家和创作者打造

Studio 设计本

专为创作者打造的高性能笔记本电脑

NVIDIA RTX PRO 笔记本电脑

随时随地加速专业 AI 和视觉计算

概览

适用于现代工作负载的加速网络

DPU 和 SuperNIC

软件定义的硬件加速器, 适用于网络、存储和安全

以太网

以太网在各种应用中的性能、可用性和易用性

InfiniBand

适用于超级计算机、AI 和云数据中心的高性能网络

网络软件

用于优化性能和可扩展性的网络软件

网络加速

适用于现代 GPU 加速数据中心的 IO 子系统

DGX Spark

桌面上的 Grace Blackwell AI 超级计算机

NVIDIA RTX PRO AI 工作站

加速 AI 工作流的创新和生产力

NVIDIA RTX PRO 台式机

强大的 AI、图形、渲染和计算工作负载

NVIDIA RTX PRO 笔记本电脑

随时随地加速专业 AI 和视觉计算

代理式 AI — Agent Intelligence Toolkit

AI Blueprint

AI 推理 — Dynamo

AI 推理微服务 — NIM

AI 微服务 — CUDA-X

汽车 — DRIVE

虚拟形象 — Tokkio

汽车 — DRIVE

网络安全 — Morpheus

数据科学 — Apache Spark

数据科学 — RAPIDS

决策优化 — cuOpt

生成式 AI — NeMo

医疗健康 — Clara

工业 AI — Omniverse

智能视频分析 — Metropolis

NVIDIA Mission Control

NVIDIA AI Enterprise 平台

物理 AI — Cosmos

NVIDIA Run:ai

机器人 — Isaac

电信行业 — Aerial

查看所有软件

AI Workbench

借助 GPU 上的 NVIDIA AI Workbench 简化 AI 开发

API Catalog

探索面向开发者的 NVIDIA AI 模型、Blueprint 和工具

数据中心管理

适用于数据中心加速的 AI 和 HPC 软件解决方案

GPU 监控

监控和管理集群环境中的 GPU 性能

Nsight

探索适用于 AI、图形和 HPC 的 NVIDIA 开发者工具

NGC 目录

探索 GPU 优化的 AI、HPC 和数据科学软件

适用于笔记本电脑的 NVIDIA App

优化企业 GPU 管理

NVIDIA NGC

借助 NVIDIA GPU Cloud 解决方案加速 AI 和 HPC 工作负载

桌面管理器

借助 NVIDIA RTX Desktop Manager 提高多显示器工作效率

RTX 加速的创意应用

专为艺术家和设计师打造的创意工具和 AI 赋能的应用

视频会议

AI 赋能的音频和视频增强

概览

借助 AI 和机器学习提高业务的智能和效率

代理式 AI

构建用于推理、规划和行动的 AI 智能体

AI 数据

为适用于 AI 的新型企业基础架构提供支持

对话式 AI

借助实时语音 AI 实现自然、个性化的交互

网络安全

AI 驱动的解决方案,可增强网络安全和 AI 基础设施

数据科学

在大型数据集上进行迭代,更频繁地部署模型,并降低总成本

生成式 AI

即时运行和部署生成式 AI

推理

借助 AI 赋能的应用和服务实现突破性性能

概览

借助 NVIDIA 为 AI、HPC 和现代工作负载提供支持

面向企业的 AI 数据平台

将企业存储带入代理式 AI 时代

加速计算

加速计算使用专用硬件来提升 IT 性能

云计算

按需提供 IT 资源和服务,实现可扩展性和智能见解

托管

加速 AI 在整个组织中的扩展

MLOps

借助 MLOps 加速 AI

网络

高速以太网互连解决方案和服务

可持续计算

借助 AI 和加速计算节省能源并降低成本

可视化

NVIDIA 虚拟 GPU 软件提供强大的 GPU 性能

概览

简化元宇宙应用的构建、运营和连接

计算机辅助工程

使用 AI 加速的实时数字孪生开发实时交互式设计

数字孪生开发

利用基于物理性质的大规模 OpenUSD 仿真的强大功能

渲染

将先进的渲染技术引入专业工作流程

机器人仿真

创新解决方案,助您应对机器人开发、边缘和视觉 AI 挑战

科学可视化

使研究人员能够以交互式速度可视化其大型数据集

汽车仿真

AI 定义的汽车正在改变移动出行的未来

扩展现实

通过在虚拟环境中进行沉浸式、可扩展的交互,转变工作流

概览

探索适用于 AI、模拟和加速计算的 NVIDIA HPC 解决方案

HPC 和 AI

借助 GPU 加速的 HPC 和 AI 提高准确性

科学可视化

使研究人员能够以交互式速度可视化大型数据集

仿真和建模

加速仿真工作负载

量子计算

借助 QPU 快速推进科学创新

概览

用于应对机器人、边缘端和视觉 AI 挑战的创新解决方案

机器人

GPU 加速的 AI 感知、仿真和软件进展

边缘 AI

将 NVIDIA AI 的强大功能带到边缘,提供实时决策解决方案

视觉 AI

借助视觉 AI 将数据转化为有价值的见解

概览

AI 增强型汽车正在改变移动出行的未来

基础设施

安全自动驾驶汽车开发所需的数据中心工具

模拟

探索用于安全自动驾驶汽车开发的高保真传感器仿真

车载计算

开发自动驾驶功能和沉浸式车内体验

安全

从云端到车端的先进自动驾驶汽车安全系统

概览
建筑、工程、施工和运营
汽车
消费互联网
网络安全
能源
金融服务
医疗健康和生命科学
高等教育
游戏开发
全球公共部门
制造业
媒体和娱乐
餐饮
零售和快速消费品
机器人
智慧城市
超级计算
电信
交通运输
    • 驱动
    • 支持
  • 人工智能
    行业
    解决方案
    • 概览
    • 代理式 AI
    • AI 数据
    • AI 推理
    • 对话式 AI
    • 网络安全
    • 数据科学
    • 生成式 AI
    软件
    • AI 企业平台
    • 代理式 AI - NVIDIA Agent Intelligence Toolkit
    • AI Blueprint
    • AI Foundry
    • AI 推理 - Dynamo
    • AI 推理微服务 - NIM
    • AI 微服务 - CUDA-X
    • 虚拟形象 - Tokkio
    • 网络安全 - Morpheus
    • 数据科学 - RAPIDS
      • 概览
      • Apache Spark
    • 决策优化 - cuOpt
    • 生成式 AI - NeMo
    • 物理 AI - Cosmos
    • 语音 AI – Riva
    • 开始体验
      • API 目录
      • NGC 概述
      • NGC 软件目录
      • 开源软件
      • AI Workbench
    产品
    • 笔记本电脑和工作站
    • 数据中心
    • 云计算
    • DGX Cloud
    资源
    • AI 博客
    • AI Podcast
    • 内容库
    • 客户案例
    • 开发者教育
    • 文档
    • 术语表
    • GTC AI 大会
    • Kaggle Grandmaster
    • 专业服务
    • 研究
    • 初创公司和 VC
    • 技术博客
    • NVIDIA 培训和认证
    • 面向 IT 专业人员培训和认证
    • 可信任 AI
    • 用例
    • 行业
    • 解决方案
      • 代理式 AI
      • AI 数据
      • AI 推理
      • 对话式 AI
      • 网络安全
      • 数据科学
      • 生成式 AI
    • 软件
      • AI 企业平台
      • 代理式 AI - NVIDIA Agent Intelligence Toolkit
      • AI Blueprint
      • AI Foundry
      • AI 推理 - Dynamo
      • AI 推理微服务 - NIM
      • AI 微服务 - CUDA-X
      • 虚拟形象 - Tokkio
      • 网络安全 - Morpheus
      • 数据科学 - RAPIDS
      • 决策优化 - cuOpt
      • 生成式 AI - NeMo
      • 物理 AI - Cosmos
      • 语音 AI – Riva
      • 开始体验
    • 产品
      • 笔记本电脑和工作站
      • 数据中心
      • 云计算
      • DGX Cloud
    • 资源
      • AI 博客
      • AI Podcast
      • 内容库
      • 客户案例
      • 开发者教育
      • 文档
      • 术语表
      • GTC AI 大会
      • Kaggle Grandmaster
      • 专业服务
      • 研究
      • 初创公司和 VC
      • 技术博客
      • NVIDIA 培训和认证
      • 面向 IT 专业人员培训和认证
      • 可信任 AI
      • 用例
    • 行业
    • 解决方案
      • 解决方案
      • 概览
      • 代理式 AI
      • AI 数据
      • AI 推理
      • 对话式 AI
      • 网络安全
      • 数据科学
      • 生成式 AI
    • 软件
      • 软件
      • AI 企业平台
      • 代理式 AI - NVIDIA Agent Intelligence Toolkit
      • AI Blueprint
      • AI Foundry
      • AI 推理 - Dynamo
      • AI 推理微服务 - NIM
      • AI 微服务 - CUDA-X
      • 虚拟形象 - Tokkio
      • 网络安全 - Morpheus
      • 数据科学 - RAPIDS
        • 数据科学 - RAPIDS
        • 概览
        • Apache Spark
      • 决策优化 - cuOpt
      • 生成式 AI - NeMo
      • 物理 AI - Cosmos
      • 语音 AI – Riva
      • 开始体验
        • 开始体验
        • API 目录
        • NGC 概述
        • NGC 软件目录
        • 开源软件
        • AI Workbench
    • 产品
      • 产品
      • 笔记本电脑和工作站
      • 数据中心
      • 云计算
      • DGX Cloud
    • 资源
      • 资源
      • AI 博客
      • AI Podcast
      • 内容库
      • 客户案例
      • 开发者教育
      • 文档
      • 术语表
      • GTC AI 大会
      • Kaggle Grandmaster
      • 专业服务
      • 研究
      • 初创公司和 VC
      • 技术博客
      • NVIDIA 培训和认证
      • 面向 IT 专业人员培训和认证
      • 可信任 AI
      • 用例
    数据科学电子书
    • 关于本书
    • 前言:GPU 正在推动数据科学发展
      • 概览
      • 数据分析的发展
      • 大数据的开端
      • 适用于大数据的 Apache Spark
      • GPU 加快处理速度
      • GPU 加速的数据科学
      • RAPIDS 数据科学框架
      • GPU 的实际应用
    • Spark 简介
      • 概览
      • Spark 如何执行
      • 根据文件创建 DataFrame
      • DataFrame transformation 和 action 操作
      • DataFrame 依赖项
    • Spark 应用程序的执行
      • 概览
      • 查看物理规划
      • 在集群上执行任务
    • Spark SQL 和 DataFrame
      • 概览
      • DataFrame 和 Spark SQL 的优势
      • 优化内存使用率
      • 查询优化
      • 使用 Spark SQL 探索数据
      • 从文件加载数据
      • 使用 Spark SQL
      • 使用 Spark Web UI
      • 总结
    • GPU 加速的 Spark 3
      • 概览
      • Spark 3 和 GPU
      • Spark 中加速的 ETL 和 AI
      • 新的 GPU 加速库
      • GPU 加速的 Spark DataFrame
      • 总结
    • 开始使用 Spark 3
      • 概览
      • 安装和配置
      • 使用物理规划进行监控
      • 调试
      • GPU 显存不足
      • 总结
    • 利用 ML 预测房价
      • 概览
      • 分类和回归
      • 回归
      • 决策树
      • 随机森林
      • 机器学习工作流程
      • 使用 Spark ML 流程
      • 用例数据集示例
      • 将文件中的数据加载到 DataFrame
      • 汇总统计
      • 特征提取和流程
      • 训练模型
      • 预测和模型评估
      • 保存模型
      • 概要
    • 利用 XGBoost 预测出租车费用
      • 概览
      • XGBoost
      • GPU 加速的 XGBoost
      • 定义特征数组
      • 保存模型
      • 总结
    • 附录:代码、资源和作者

    开始使用 GPU 加速的 Apache Spark 3

    我们在第 3 章讨论了 Spark 3.x 中的 GPU 加速功能。本章将介绍用于 Apache Spark 3 的新 RAPIDS 加速器的使用入门基础知识,以便您利用 GPU 通过 RAPIDS 库加快处理速度(详情请参阅用于 Apache Spark 的 RAPIDS 加速器使用入门)。

    用于 Apache Spark 的 RAPIDS 加速器具有以下功能和限制:

    • 支持在 GPU 上通过列式处理运行 Spark SQL
    • 不需要用户更改 API
    • 支持行与列之间的转换处理
    • 使用 RAPIDS cuDF 库
    • 在 GPU 上运行支持的 SQL 操作,如果未执行某项操作或操作不兼容 GPU,它会回退以使用 Spark CPU 版本。
    • 插件无法加速直接操控 RDD 的操作。
    • 加速器库还提供了 Spark shuffle 操作的具体实现,该操作可以利用 UCX 优化 GPU 数据传输(尽可能多地将数据保留在 GPU 上,并绕过 CPU 执行 GPU 到 GPU 传输)。

    要启用此 GPU 加速功能,您将需要:

    • Apache Spark 3.0+
    • 配置有 GPU 的 Spark 集群,而且这些 GPU 符合 RAPIDS Dataframe 库 cuDF 的版本要求。
      • 每个执行程序一个 GPU。
    • 添加以下 jar:
      • 与集群上可用的 CUDA 版本相对应的 cudf jar。
      • RAPIDS Spark 加速器插件 jar。
    • 将配置 spark.plugins 设置为 com.nvidia.spark.SQLPlugin

    安装和配置

    安装和设置 Spark 以及用于 Spark 的 RAPIDS 加速器时,所需执行的步骤受 Spark 部署方式的影响。部署 Spark 的主要方式如下:

    • 本地模式:驱动程序和任务在同一 Java 虚拟机中运行。此模式仅适用于开发和测试,不宜运行生产应用程序。  
    • 在配备集群管理器的集群中:
      • Standalone 部署模式:在私有集群中部署 Spark 的至简方式
      • Hadoop YARN
      • Kubernetes

    安装

    安装时,您需要在每个工作节点上提供 Spark 3.x、用于 Spark 的 RAPIDS 加速器 jar 文件和 GPU 发现脚本。对于本地模式,您需要在本地安装这些程序。对于 Spark Standalone 模式,您需要在要使用的所有节点上安装这些程序。对于 Yarn 模式,您需要在启动程序节点上安装这些程序,YARN 会根据需要将这些程序传输到相关节点。  对于 Kubernetes 模式,您既可将所需程序放入 Docker 映像,也可将其放到运行 Spark 应用程序时所挂载的驱动器上。有关安装的详细信息,请参阅开始使用用于 Apache Spark 的 RAPIDS 加速器。

    配置

    Spark shell 和 ./bin/spark-submit 通过 --conf 等命令行选项,或通过从 conf/spark-defaults.conf 读取配置选项来支持动态加载配置属性。(请参阅 Spark 配置指南,了解有关 Spark 配置的概述和详情。)

    On startup use: --conf [conf key]=[conf 值]。例如:

    ${SPARK_HOME}/bin/spark --jars 'rapids-4-spark_2.12-0.1.0.jar,cudf-0.14.jar' \
          --conf spark.plugins=com.nvidia.spark.SQLPlugin \
          --conf spark.rapids.sql.incompatibleOps.enabled=true

    在运行时使用:spark.conf.set("[conf 键]", [conf 值])。例如:

       scala> spark.conf.set("spark.rapids.sql.incompatibleOps.enabled", true)

    GPU 调度

    您可以使用 --conf 键值对请求 GPU 并将其分配给相关任务。您使用的具体配置因集群管理器而异。分配 GPU 时所用的几个配置键值属性如下:

    • 请求您的执行程序拥有 GPU:
    • --conf spark.executor.resource.gpu.amount=1 

    • 指定每个任务的 GPU 数量:
    • --conf spark.task.resource.gpu.amount=1

    • 指定 discoveryScript(在 YARN 和 K8S 上需要):
    • --conf spark.executor.resource.gpu.discoveryScript=./getGpusResources.sh

    Note that spark.task.resource.gpu.amount can be a decimal amount, so if you want multiple tasks to be run on an executor at the same time and assigned to the same GPU you can set this to a decimal value less than 1. You would want this setting to correspond to the spark.executor.cores setting. For instance, if you have spark.executor.cores=2 which would allow 2 tasks to run on each executor and you want those 2 tasks to run on the same GPU then you would set spark.task.resource.gpu.amount=0.5.

    调优

    以下配置是建议使用的入门配置,但必须根据具体集群和应用程序进行配置:

    • Run with one Executor per GPU. Do not try to run with multiple GPUs per executor. Each executor can run with multiple tasks, this depends on the number of cores and number of GPUs on each of your boxes. Run one executor per GPU and you can evenly divide your cores among your executors. For instance, if you have 24 cores and four GPUs per host, you can run with six cores (--conf spark.executor.cores=6)。这样可以控制 Spark 在执行程序上一次加入的任务数量。若要控制 GPU 上一次同时运行的任务数量,您可以配置 spark.rapids.sql.concurrentGpuTasks。一开始最好允许两个任务同时在 GPU 上运行:

      (--conf spark.rapids.sql.concurrentGpuTasks=2), 

      如果遇到显存不足或性能缓慢问题,则将其更改为 1。造成这种差异的原因在于这类任务仍可使用 CPU,而其他任务则是在 GPU 上运行。目前在 GPU 上一次运行多个任务不会带来性能优势,而且每个任务都会消耗内存,因此我们通常会限制 GPU 上一次运行的任务数量。
    • 设置输入大小。在 GPU 上运行大批数据时,您会发现性能有所提升。  但是,输入大小取决于所读取文件的类型以及所执行的操作。
      • 如果使用 Spark 数据源 api (spark.read…),请使用:
      •  --conf spark.sql.files.maxPartitionBytes=512m

      • 如果使用 Spark/Hive api 读取 Hive 表中的数据,请使用:
      • ---conf
        spark.hadoop.mapreduce.input.fileinputformat.split.minsize=536870912
        --conf spark.hadoop.mapred.min.split.size=536870912

    • 配置 spark.sql.shuffle.partitions 的数量。Spark 设置的默认值为 200,很多时候此设置会导致分区很小。若想增加每个分区的数据大小,以提高 GPU 的处理效率,请尝试尽可能减少分区的数量。您可根据应用程序数据调整此设置以及输入大小。
      如果将 KryoSerializer 用于 Spark
    • (--conf spark.serializer=org.apache.spark.serializer.KryoSerializer)

      则必须注册 GpuKryoRegistrator 类,例如:

       --conf spark.kryo.registrator=com.nvidia.spark.rapids.GpuKryoRegistrator

    • 配置执行程序内存量,就像为普通 Spark 应用程序配置内存量一样。

    一般建议

    • 与使用大量小文件相比,使用少量的大型输入文件效果更佳。您可能无法控制输入文件的大小,但有必要了解一下。  
    • Larger input sizes spark.sql.files.maxPartitionBytes=512m 通常效果更好,前提是数据大小适合 GPU。
    • The GPU does better with larger data chunks as long as they fit into memory.  When using the default spark.sql.shuffle.partitions=200 时,设置较小的分区或许有益。  此设置需基于任务中所读取的数据量。每个任务的数据块大小从 512MB 开始设置。

    高级配置

    除以上配置以外,我们还提供其他特定于插件的配置;只要符合某些要求,这些配置就有助于提高性能。这些配置可控制能够在 GPU 上运行的操作(参见下表)。启用这些配置有助于优化并在 GPU 上运行更多对象,但您务必要了解这些配置的具体功能。例如,GPU 无法与 CPU 版本完全兼容。又如,浮点数可能略有不同。有关配置的更多详细信息,请参阅用于 Spark 的 RAPIDS 加速器配置。

    使用物理规划进行监控

    用于 Spark 的 RAPIDS 加速器不需要用户更改 API,而且它会将支持的 SQL 操作替换为 GPU 操作。为了解已将哪些操作替换为 GPU 操作,您可以调用 explain 方法打印出特定 DataFrame 的物理规划,其中所有以 GPU 为前缀的操作均是在 GPU 上执行。 

    现在,我们针对第 1 章介绍的某些查询来比较通过 GPU 处理的特定 DataFrame 的物理规划。在下方的物理规划中,DAG 包含 GpuBatchScan、针对 hour 的 GpuFilter 以及针对 hour、fare_amount 和 day_of_week 的 GpuProject(选择列)。使用 CPU 处理时,DAG 包含 FileScan、Filter 和 Project。

    // select 和 filter 是窄依赖 transformation
    df.select($"hour", $"fare_amount").filter($"hour" === "0.0" ).show(2)

    result:
    +----+-----------+
    |hour|fare_amount|
    +----+-----------+
    | 0.0|       10.5|
    | 0.0|       12.5|
    +----+-----------+

    df.select($"hour", $"fare_amount").filter($"hour" === "0.0" ).explain

    result:
    == Physical Plan ==
    *(1) GpuColumnarToRow false<
    +- !GpuProject [hour#10, fare_amount#9]
       +- GpuCoalesceBatches TargetSize(1000000,2147483647)
          +- !GpuFilter (gpuisnotnull(hour#10) AND (hour#10 = 0.0))
          +- GpuBatchScan[fare_amount#9, hour#10] GpuCSVScan Location:
    InMemoryFileIndex[s3a://spark-taxi-dataset/raw-small/train], ReadSchema: struct<fare_amount:double,hour:double>

    请注意,原始计划中的大多数节点如何被 GPU 版本替换。RAPIDS 加速器插入数据格式转换节点(如 GpuColumnarToRow 和 GpuRowToColumnar),以在两种处理之间转换:将在 GPU 上执行的节点的列式处理和将在 CPU 上执行的节点的行处理。  为了解某部分查询未在 GPU 上运行的原因,您可将 spark.rapids.sql.explain 配置设置为 true。系统会将此输出记录到驱动日志中,或以交互模式将其显示在屏幕上。

    使用 Spark Web UI 进行监控

    “SQL”选项卡

    了解 GPU 上所运行对象的至简方式是在 Spark Web UI 中查看“SQL”选项卡。在“SQL”选项卡有关下方查询的 DAG 图中,我们看到物理规划中包含 GPUBatchScan、Project、GPUHashAggregate 和 GPUHashAggregate。使用 CPU 处理时,Spark 先对每个分区执行哈希聚合,然后再混洗 Exchange 中的数据以进行宽依赖 transformation 操作。Exchange 之后是对先前的子聚合执行哈希聚合。请注意,GPU 处理期间无需执行 Exchange shuffle 操作。

    val df3 = df2.groupBy("month").count
    .orderBy(asc("month"))show(5)

    “Stages”(阶段)选项卡

    您可以通过阶段详情页面查看阶段详情 DAG,其中蓝顶框(方框)表示 RDD 或 DataFrame,边缘(方框之间的箭头)表示对 DataFrame 执行的操作。

    “Environment”(环境)选项卡

    您可以使用“Environment”(环境)选项卡查看并确认 GPU 配置的属性设置是否正确,例如 Spark.executor.resource.gpu.amount 和 spark.executor.resource.gpu.discoveryScript 属性。您还可在此查看系统属性类路径条目,确认插件 jar 文件是否位于 JVM 类路径下。

    表 1.     Spark 属性

    名称 值
    spark.executor.resource.gpu.amount 1
    spark.executor.resource.gpu.discoveryScript /home/ubuntu/getGpusResources.sh

    “Executors”(执行程序)选项卡

    您可以使用“Executors”(执行程序)选项卡查看已分配给应用程序执行程序的资源。此实例中已分配一个 GPU。

    调试

    For now, the best way to debug is how you would normally do it on Spark. Look at the UI and log files to see what failed. If you have a seg fault from the GPU find the hs_err_pid.log file. To make sure your hs_err_pid.log file goes into the YARN application log directory, you can add in the config: --conf spark.executor.extraJavaOptions="-XX:ErrorFile=<LOG_DIR>/hs_err_pid_%p.log"。

    If you want to see why an operation did not run on the GPU, turn on the configuration: --conf spark.rapids.sql.explain=NOT_ON_GPU。随后系统会在驱动日志中输出一条日志消息,说明 Spark 操作未能在 GPU 上执行的原因。

    GPU 显存不足

    系统会通过多种方式反映 GPU 显存不足的问题。  或许是显示显存不足错误,也可能表现为崩溃问题。通常这意味着分区过大,因此需要返回配置部分调整分区大小和/或分区数量。您也可减少 GPU 并发任务的数量,将其设置为 1。Spark UI 可能会提供有关数据大小的信息。您可以针对失败的阶段查看输入数据或 shuffle 数据的大小。

    总结

    本章介绍了 Apache Spark 3.x 全新 RAPIDS API 插件的使用入门基础知识,可助您利用 GPU 加快处理速度。有关更多信息,请参阅用于 Spark 的 RAPIDS 加速器指南。

    请您注册以阅读全文

    Welcome back. Not you? 登出
    Welcome back. Not you? Clear form
    1. Section
    • Section
    Section
    中国大陆
    • 地点
    • 阿富汗
    • 奥兰群岛
    • 阿尔巴尼亚
    • 阿尔及利亚
    • 美属萨摩亚
    • 安道尔
    • 安哥拉
    • 安圭拉
    • 南极洲
    • 安提瓜和巴布达
    • 阿根廷
    • 亚美尼亚
    • 阿鲁巴
    • 澳大利亚
    • 奥地利
    • 阿塞拜疆
    • 巴哈马
    • 巴林
    • 孟加拉国
    • 巴巴多斯
    • 白俄罗斯
    • 比利时
    • 伯利兹
    • 贝宁
    • 百慕大
    • 不丹
    • 玻利维亚
    • 博奈尔岛、圣尤斯特歇斯岛和萨巴岛
    • 波斯尼亚和黑塞哥维那
    • 博茨瓦纳
    • 布韦岛
    • 巴西
    • 英属印度洋领地
    • 英属维尔京群岛
    • 文莱达鲁萨兰国
    • 保加利亚
    • 布基纳法索
    • 布隆迪
    • 柬埔寨
    • 喀麦隆
    • 加拿大
    • 佛得角
    • 开曼群岛
    • 中非共和国
    • 乍得
    • 智利
    • 中国大陆
    • 圣诞岛
    • 科科斯(基林)群岛
    • 哥伦比亚
    • 科摩罗
    • 刚果(布)
    • 刚果(金)
    • 库克群岛
    • 哥斯达黎加
    • 科特迪瓦
    • 克罗地亚
    • 古巴
    • 库拉索
    • 塞浦路斯
    • 捷克共和国
    • 丹麦
    • 吉布提
    • 多米尼加
    • 多米尼加共和国
    • 厄瓜多尔
    • 埃及
    • 萨尔瓦多
    • 赤道几内亚
    • 厄立特里亚
    • 爱沙尼亚
    • 斯威士兰
    • 埃塞俄比亚
    • 福克兰群岛(马尔维纳斯群岛)
    • 法罗群岛
    • 斐济
    • 芬兰
    • 法国
    • 法属圭亚那
    • 法属波利尼西亚
    • 法属南部和南极领地
    • 加蓬
    • 冈比亚
    • 格鲁吉亚
    • 德国
    • 加纳
    • 直布罗陀
    • 希腊
    • 格陵兰
    • 格林纳达
    • 瓜德罗普岛
    • 关岛
    • 危地马拉
    • 根西岛
    • 几内亚
    • 几内亚比绍
    • 圭亚那
    • 海地
    • 赫德岛和麦克唐纳群岛
    • 洪都拉斯
    • 香港
    • 匈牙利
    • 冰岛
    • 印度
    • 印度尼西亚
    • 伊朗
    • 伊拉克
    • 爱尔兰
    • 马恩岛
    • 以色列
    • 意大利
    • 牙买加
    • 日本
    • 泽西岛
    • 约旦
    • 哈萨克斯坦
    • 肯尼亚
    • 基里巴斯
    • 朝鲜
    • 韩国
    • 科威特
    • 吉尔吉斯斯坦
    • 老挝人民民主共和国
    • 拉脱维亚
    • 黎巴嫩
    • 莱索托
    • 利比里亚
    • 利比亚
    • 列支敦士登
    • 立陶宛
    • 卢森堡
    • 澳门
    • 马达加斯加
    • 马拉维
    • 马来西亚
    • 马尔代夫
    • 马里
    • 马耳他
    • 马绍尔群岛
    • 马提尼克岛
    • 毛里塔尼亚
    • 毛里求斯
    • 马约特岛
    • 墨西哥
    • 密克罗尼西亚联邦
    • 摩尔多瓦共和国
    • 摩洛哥
    • 蒙古
    • 黑山
    • 蒙特塞拉特
    • 摩洛哥
    • 莫桑比克
    • 缅甸
    • 纳米比亚
    • 瑙鲁
    • 尼泊尔
    • 新喀里多尼亚
    • 新西兰
    • 尼加拉瓜
    • 尼日尔
    • 尼日利亚
    • 纽埃
    • 诺福克岛
    • 北马其顿
    • 北马里亚纳群岛
    • 挪威
    • 阿曼
    • 巴基斯坦
    • 帕劳
    • 巴勒斯坦国
    • 巴拿马
    • 巴布亚新几内亚
    • 巴拉圭
    • 秘鲁
    • 菲律宾
    • 皮特凯恩
    • 波兰
    • 葡萄牙
    • 波多黎各
    • 卡塔尔
    • 留尼汪
    • 罗马尼亚
    • 俄罗斯
    • 卢旺达
    • 圣赫勒拿岛
    • 圣基茨和尼维斯
    • 圣卢西亚
    • 圣皮埃尔和密克隆群岛
    • 圣文森特和格林纳丁斯
    • 圣巴泰勒米
    • 圣马丁(法属部分)
    • 萨摩亚
    • 圣马力诺
    • 圣多美和普林西比
    • 沙特阿拉伯
    • 塞内加尔
    • 塞尔维亚
    • 塞舌尔
    • 塞拉利昂
    • 新加坡
    • 荷属圣马丁
    • 斯洛伐克
    • 斯洛文尼亚
    • 所罗门群岛
    • 索马里
    • 南非
    • 南乔治亚和南桑威奇群岛
    • 南苏丹
    • 西班牙
    • 斯里兰卡
    • 苏丹
    • 苏里南
    • 斯瓦尔巴特群岛和扬马延岛
    • 瑞典
    • 瑞士
    • 叙利亚
    • 台湾
    • 塔吉克斯坦
    • 坦桑尼亚
    • 泰国
    • 荷兰
    • 东帝汶
    • 多哥
    • 托克劳
    • 汤加
    • 特立尼达和多巴哥
    • 突尼斯
    • 土耳其
    • 土库曼斯坦
    • 特克斯和凯科斯群岛
    • 图瓦卢
    • 乌干达
    • 乌克兰
    • 阿拉伯联合酋长国
    • 英国
    • 美国
    • 美国本土外小岛屿
    • 乌拉圭
    • 乌兹别克斯坦
    • 瓦努阿图
    • 梵蒂冈
    • 委内瑞拉
    • 越南
    • 美属维尔京群岛
    • 瓦利斯和富图纳群岛
    • 西撒哈拉
    • 也门
    • 赞比亚
    • 津巴布韦
    中文 (简体)
    • 首选语言
    • 中文 (简体)
    • 中文 (繁体)
    • 捷克语
    • 丹麦语
    • 荷兰语
    • 英语 (澳大利亚)
    • 英语 (英国)
    • 英语 (印度)
    • 英语 (马来西亚)
    • 英语 (菲律宾)
    • 英语 (新加坡)
    • 英语 (美国)
    • 芬兰语
    • 法语
    • 法语 (比利时)
    • 德语
    • 德语 (奥地利)
    • 印度尼西亚语
    • 意大利语
    • 日语
    • 韩语
    • 荷兰语 (比利时)
    • 挪威语
    • 波兰语
    • 葡萄牙语 (巴西)
    • 西班牙语 (拉丁美洲)
    • 西班牙语 (西班牙)
    • 瑞典语
    • 泰语
    • 土耳其语
    • 越南语
    省/自治区/直辖市
    • 省/自治区/直辖市
    • 安徽
    • 北京
    • 重庆
    • 福建
    • 广东
    • 甘肃
    • 广西
    • 贵州
    • 海南
    • 湖北
    • 河北
    • 河南
    • 黑龙江
    • 湖南
    • 吉林
    • 江苏
    • 江西
    • 辽宁
    • 内蒙古
    • 宁夏
    • 青海
    • 四川
    • 山东
    • 上海
    • 陕西
    • 山西
    • 天津
    • 新疆
    • 西藏
    • 云南
    • 浙江

    NVIDIA 隐私政策

    Spark eBook Form Button (Visible on author only)
    产品
    • 笔记本电脑和工作站
    • 数据中心
    • 云计算
    • DGX Cloud
    软件
    • NVIDIA AI Enterprise 平台
    • 代理式 AI - NVIDIA Agent Intelligence Toolkit
    • AI Blueprint
    • AI Foundry
    • AI 基础模型
    • AI 推理 - Dynamo
    • AI 推理微服务 - NIM
    • AI 微服务 - CUDA-X
    • 虚拟形象 - Tokkio
    • 网络安全 - Morpheus
    • 数据科学 - RAPIDS
    • 数据科学 - Apache Spark
    • 决策优化 - cuOpt
    • 生成式 AI - NeMo
    • 物理 AI - Cosmos
    • 语音 AI – Riva
    资源
    • AI 博客
    • AI Podcast
    • API 目录
    • 内容库
    • 客户案例
    • 开发者教育
    • 文档
    • 术语表
    • GTC AI 大会
    • Kaggle Grandmaster
    • NGC 软件目录
    • 开源软件
    • 专业服务
    • 研究
    • 初创公司和 VC
    • 技术博客
    • NVIDIA 培训和认证
    • 面向 IT 专业人员培训和认证
    公司信息
    • 关于 NVIDIA
    • 公司概览
    • 投资者
    • Venture Capital (NVentures)
    • NVIDIA 基金会
    • 研究
    • 社会责任
    • 技术
    • 职业生涯
    关注 NVIDIA AI
    哔哩哔哩 抖音 微博

    扫描二维码关注
    NVIDIA 英伟达微信公众号

    微信
    NVIDIA
    CHN - 中国
    • 隐私声明
    • 管理我的隐私
    • 法律事宜
    • 无障碍访问
    • 产品安全性
    • 联系我们
    Copyright © 2025 NVIDIA Corporation
    Data Science ebook