首页 > 其他分享 >在GPU实例上部署NGC环境

在GPU实例上部署NGC环境

时间:2024-12-08 16:28:08浏览次数:5  
标签:NGC sudo 实例 yum nvidia GPU docker

本文介绍如何在GPU云主机上部署NGC环境。

NVIDIA NGC 是用于深度学习、机器学习和HPC的GPU优化软件的中心,可提供容器、模型、模型脚本和行业解决方案,以便数据科学家、开发人员和研究人员可以专注于更快地构建解决方案和收集见解。

前提条件

图片4.png

  • GPU云主机配备弹性公网IP。

安装步骤

  1. 创建一台GPU云主机,操作方法请参见创建未配备GPU驱动的GPU云主机
  2. 安装GPU云主机驱动, 建议安装最新版本的操作系统驱动,操作方法请参见NVIDIA驱动安装指引
  3. 安装Docker和针对NVIDIA GPU的Docker Utility Engine,即nvidia-docker。

a. 在安装Docker新版本之前,请卸载所有的旧版本以及关联的依赖项。

sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

图片5.png

b. 设置Docker 存储库。

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

图片6.png

c. 安装Docker 引擎。

sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

图片7.png

d. 启动docker。

sudo systemctl start docker

图片8.png

e. 安装nvidia-docker。

  • 设置存储库和 GPG 密钥。
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
   && curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.repo | sudo tee /etc/yum.repos.d/nvidia-container-toolkit.repo

图片9.png

  • 更新包列表后安装nvidia-container-toolkit包(和依赖项)。
sudo yum clean expire-cache
sudo yum install -y nvidia-container-toolkit

图片10.png

图片11.png

  • 配置Docker 守护程序以识别 NVIDIA 容器运行时。
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker

图片12.png

  • 通过运行基本 CUDA 容器来测试工作设置。
sudo docker run --rm --runtime=nvidia --gpus all nvidia/cuda:11.6.2-base-ubuntu20.04 nvidia-smi

图片13.png

使用NVIDIA NGC

  1. 生成NGC的API key 。

a. 在NGC账号注册网站成功注册完NGC账号之后,需要生成账户的API key。

登录NGC页面,单击“账户名”,选择“Setup”,会进入Setup页面,然后单击“Get API Key”,进入生成API Key的页面。

图片14.png

图片15.png

图片16.png

b. 在API Key的页面,单击“Generate API Key”,进入确认对话框。

图片17.png

c. 在确认对话框,单击“Confirm”,页面会变为类似于下图所示的页面。

图片18.png

d. 在Password处会显示一连串密码,用户返回GPU实例的shell界面按照图中的操作即可。

$ docker login nvcr.io
Username: $oauthtoken
Password: 【输入生成的秘钥】

图片19.png

  1. 使用NGC中的镜像(以PyTorch为例)。

图片20.png

a. 进入NGC的CATALOG的目录部分,选择CONTAINERS分支,在Query查询中输入PyTorch,并单击“PyTorch”。

图片21.png

b. 单击“Get Container”,关于容器的拉取镜像的方法则会展示出来。

图片22.png

c. 按照上图中红色方框中的命令,可以获得最新版本的容器镜像,继续在GPU实例的命令行中输入以下命令。

$ docker pull nvcr.io/nvidia/pytorch:23.07-py3

图片23.png

这样,我们就可以用docker容器的方式去使用框架或软件产品了。

标签:NGC,sudo,实例,yum,nvidia,GPU,docker
From: https://blog.csdn.net/2404_89421557/article/details/144191597

相关文章

  • GPU云主机-安装CUDA
    本文为您介绍GPU云主机安装CUDA工具包的操作方法。CUDA是NVIDIA推出的通用并行计算架构,帮助您使用NVIDIAGPU解决复杂的计算问题。您可参考如下操作说明安装CUDA工具包。CUDA版本的选择请参见如何选择驱动及相关库、软件版本。前提条件GPU云主机配备弹性IP。在Linux操作系......
  • [利用NVIDIA AI模具加速开发:使用LangChain与NIM实现智能应用]
    引言在当今的AI开发中,高性能和可扩展性是关键因素。NVIDIA的NIM(NVIDIAInferenceMicroservice)提供了一个强大的解决方案,使开发者能够轻松集成NVIDIA优化的AI模型,提升应用性能。本篇文章旨在引导您如何使用LangChain与NVIDIA’sNIM构建高效的智能应用。主要内容NVIDIAN......
  • 在Intel GPU上使用IPEX-LLM进行本地BGE嵌入优化
    在IntelGPU上使用IPEX-LLM进行本地BGE嵌入优化引言在人工智能领域,嵌入技术广泛应用于信息检索、问答系统等任务中。对于许多开发者而言,了解如何在IntelGPU上利用IPEX-LLM进行优化以获得低延迟、高性能的嵌入操作,是一项非常有价值的技能。本文将以LangChain为例,演示如何......
  • CEF 浏览器内核的嵌入与实例化
    在实际的CEF浏览器应用开发中,如何高效地嵌入和实例化CefBrowser对象,如何管理浏览器的生命周期,以及如何实现浏览器进程和主程序进程之间的通信是至关重要的技术点。本节将深入探讨如何创建和管理CefBrowser实例,如何进行浏览器进程与主程序进程的通信,确保数据交互流畅且稳......
  • 实战 | C# 中使用YOLOv11实现实例分割 (步骤 + 源码)
    导 读    本文主要介绍在C#中使用YOLOv11实现实例检测,并给详细步骤和源码。C#YOLO11实例分割——本文实现效果:......
  • 大学生网页设计制作作业实例代码 (全网最全,建议收藏) HTML+CSS+JS (1)
    文章目录......
  • 探索 LangChain 0.2.0 版本中的最新改变:如何适应和转型
    探索LangChain0.2.0版本中的最新改变:如何适应和转型引言在快速发展的编程世界中,库和框架的更新是不可避免的。这篇文章将帮助您理解和适应LangChain0.2.0版本带来的重要变更。本次更新注重使LangChain变得更加集成不可知,这意味着用户需要明确指定使用的模型和工具......
  • [深入探索Brave Search API:使用实例和应用指南]
    #深入探索BraveSearchAPI:使用实例和应用指南##引言随着隐私保护和数据收集问题日益受到关注,越来越多的用户和开发者开始寻找替代传统搜索引擎的解决方案。BraveSearch作为一款新兴搜索引擎,凭借其独立的网络索引和隐私友好的设计,吸引了很多人的关注。本文将深入探讨......
  • 探索LangChain:构建智能应用的框架和工具
    引言在现代应用开发中,特别是在涉及自然语言处理的场景中,LangChain作为一个强大的框架,为开发者提供了丰富的工具和组件,用于创建智能和动态的应用。本文旨在引导您了解LangChain的核心架构,组件和一些使用示例,帮助初学者和专业人士都能迅速上手。主要内容1.LangChain的架构......
  • SpringCloud与Dubbo的区别
    在构建分布式系统时,SpringCloud和Dubbo是两个常用的框架。虽然它们都能帮助开发者实现服务之间的通信和治理,但在设计理念、使用场景和技术实现上,两者存在明显的区别。本文将详细探讨SpringCloud与Dubbo的不同之处,以帮助开发者更好地选择适合自己的框架。初始定位与架构设计Sp......