AIGC | 在机器学习工作站安装NVIDIA CUDA® 并行计算平台和编程模型

317581c0fdfdbe8818d3297088546ed8.gif

[ 知识是人生的灯塔,只有不断学习,才能照亮前行的道路 ]

0x02.初识与安装 CUDA 并行计算平台和编程模型

什么是 CUDA?

CUDA(Compute Unified Device Architecture)是英伟达(NVIDIA)推出的并行计算平台和编程模型。它允许开发者利用 NVIDIA GPU 的并行计算能力进行通用计算任务,而不仅限于图形处理。CUDA 提供了一个统一的编程接口和软件环境,使开发者可以使用类似于 C 的编程语言来编写并行计算程序。

主要特点和功能:

  • 并行计算能力:CUDA 允许开发者利用 GPU 的大规模并行处理单元来加速各种类型的计算任务,包括科学计算、机器学习、深度学习、图像处理等。

  • 编程模型:CUDA 提供了一个基于 C/C++ 的编程模型,开发者可以使用类似于传统 CPU 编程的方式来编写 GPU 加速的代码。此外,CUDA 还支持 Fortran 和 Python 等语言的接口。

  • 软件工具集:NVIDIA 提供了包括 CUDA Toolkit 在内的一系列开发工具和库,帮助开发者在 CUDA 平台上进行开发、调试和优化。

  • 性能优化:CUDA 具备优化性能的工具和技术,包括并行算法、内存管理、线程调度等,使得开发者能够充分利用 GPU 的硬件并行性能。

  • 生态系统:CUDA 已经成为广泛使用的 GPU 计算平台,支持多种操作系统和编程环境,为科学计算和工业应用提供了强大的支持。

原文链接:

AIGC | 在机器学习工作站安装NVIDIA CUDA® 并行计算平台和编程模型CUDA(Compute Unified Device Architecture)是英伟达(NVIDIA)推出的并行计算平台和编程模型。它允许开发者利用 NVIDIA GPU 的并行计算能力进行通用计算任务,而不仅限于图形处理。icon-default.png?t=N7T8https://mp.weixin.qq.com/s/zGQ3I7Z0PmtoHIYpSGdTHQ

总体而言,CUDA 已经成为科学计算和各种数据密集型应用的重要工具之一,通过利用 GPU 的并行计算能力,显著提高了计算速度和效率。

官方地址:https://developer.nvidia.com/cuda-toolkit

温馨提示:每个 CUDA 工具包版本都有与之对应开发 NVIDIA GPU 驱动程序版本(例如,上面可以看到作者的 Driver Version: 550.90.07),如下所示作者应该选择CUDA 12.4 Update 1或者CUDA 12.4版本。

ed729281d81a7451992d27ab70d31521.png

weiyigeek.top-CUDA 工具包版本对应表图

CUDA 工具包版本对应参考链接: https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html

安装步骤:

Step 1.访问【CUDA】工具包页面(developer.nvidia.com/cuda-toolkit-archive),选择对应版本进行下载,如作者选择支持550.90.07最新的CUDA 12.4 Update 1版本进行下载,选择对应操作系统版本,然后安装类型有三种,请根据需求选择。

c9786d4640f906b4fc1f8972feaa0d11.png

weiyigeek.top-CUDA版本页面图

温馨提示:由于 NVIDIA 官方暂时没有给 Ubunut 24.04 LTS 提供对应的CUDA Toolkit安装包,但是我们仍然可以使用 22.04 版本的安装包,但是可能会遇到一些问题,可以参考作者后续的解决办法。

Step 2.此处作者建议选择deb(local)安装,即直接执行如下命令进行安装。

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin
sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/12.4.1/local_installers/cuda-repo-ubuntu2204-12-4-local_12.4.1-550.54.15-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu2204-12-4-local_12.4.1-550.54.15-1_amd64.deb
sudo cp /var/cuda-repo-ubuntu2204-12-4-local/cuda-*-keyring.gpg /usr/share/keyrings/# 解决 24.04 版本由于 libtinfo5 无法安装 cuda-toolkit-12-4 的问题
tee -a /etc/apt/sources.list.d/Ubuntu.sources<< EOFTypes: deb
URIs: http://archive.ubuntu.com/ubuntu/
Suites: lunar
Components: universe
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
EOF# 刷新软件包目录
sudo apt-get update# 安装 cuda-toolkit-12-4
sudo apt-get -y install cuda-toolkit-12-4

fad9e478618243b72c6216c41d61fabe.png

weiyigeek.top-cuda-toolkit-12-4图

Step 3.安装完成后,设置CUDA-Toolkit环境变量,在~/.bashrc或者/etc/profile中添加如下内容,非常重要否则nvcc命令不能执行。

tee -a ~/.bashrc <<'EOF'
# CUDA ENV
export CUDA_HOME=/usr/local/cuda
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${CUDA_HOME}/lib64
export PATH=${CUDA_HOME}/bin:${PATH}
EOF# 更新环境变量
source ~/.bashrc

10ef10bf1396af6373b389cb0150c64a.png

weiyigeek.top-设置CUDA-Toolkit环境变量图

Step 4.验证 CUDA 安装是否成功,执行nvcc -V命令可以查看当前 CUDA 版本。

$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2024 NVIDIA Corporation
Built on Thu_Mar_28_02:18:24_PDT_2024
Cuda compilation tools, release 12.4, V12.4.131
Build cuda_12.4.r12.4/compiler.34097967_0

4794aea4ca22941c0f7a8b83083fd3c0.png

weiyigeek.top-查看当前 CUDA 版本图

温馨提示:假如系统中存在多个 CUDA 版本,可以通过update-alternatives命令进行多版本切换,或者是使用软连接来切换指定版本的CUDA,例如sudo ln -snf /usr/local/cuda-12.5 /usr/local/cuda

参考链接:

  • "installing-cuda-on-ubuntu-23-10-libt5info-not-installable" https://askubuntu.com/questions/1491254/installing-cuda-on-ubuntu-23-10-libt5info-not-installable

文章都看完了,都不关注一下作者吗?


如果此篇文章对你有帮助,请你将它转发给更多的人!

 学习推荐 往期文章

  • 🔥【最新】AIGC | Ubuntu24.04桌面版安装后必要配置

  • 💡【相关】好玩免费Ai工具,实现将老图片转为动态视频!

  • 💡【相关】AIGC | Ubuntu24.04桌面版必备软件安装

96152bc954646f3caa8e219daeda7e6a.gif

802d021f5c1d54139786151bf3801f75.gif

感觉文章不错的童鞋,请帮忙转发,点 👍、在看,若有疑问的小伙伴,可在评论区留言你想法哟💬!

原文链接:AIGC | 在机器学习工作站安装NVIDIA CUDA® 并行计算平台和编程模型

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/42345.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

idea提交代码或更新代码一直提示token然后登陆失败无法提交或者更新代码

最近因为换了电脑需要对开发环境做配置&#xff0c; 遇到了这个问题&#xff0c; 应该是因为我们用到了gitlab&#xff0c;默认的最新的idea会有gitlab插件 强制录入gitlab的token&#xff0c;如果gitlab不支持token的验证那么问题就来了 &#xff0c; 不管怎么操作都无法提交或…

Spring MVC深入理解之源码实现

1、SpringMVC的理解 1&#xff09;谈谈对Spring MVC的了解 MVC 是模型(Model)、视图(View)、控制器(Controller)的简写&#xff0c;其核心思想是通过将业务逻辑、数据、显示分离来组织代码。 Model&#xff1a;数据模型&#xff0c;JavaBean的类&#xff0c;用来进行数据封装…

单链表详解(2)

三、函数定义 查找节点 //查找结点 SLTNode* SLTNodeFind(SLTNode* phead, SLTDataType x) {assert(phead);SLTNode* pcur phead;while (pcur){if (pcur->data x){return pcur;}pcur pcur->next;}return NULL; } 查找节点我们是通过看数据域来查找的&#xff0c;查…

【MySQL05】【 undo 日志】

文章目录 一、前言二、undo 日志&#xff08;回滚日志&#xff09;1. 事务 id2. undo 日志格式2.1 INSERT 对应的 undo 日志2.2 DELETE 对应的 undo 日志2.3 UPDATE 对应的 undo 日志2.3.1 不更新主键2.3.2 更新主键 2.3 增删改操作对二级索引的影响2.4 roll_pointer 3. FIL_PA…

layui项目中的layui.define、layui.config以及layui.use的使用

第一步:创建一个layuiTest项目&#xff0c;结构如下 第二步&#xff1a;新建一个test.js,利用layui.define定义一个模块test,并向外暴露该模块&#xff0c;该模块里面有两个方法method1和method2. 第三步&#xff1a;新建一个test.html&#xff0c;在该页面引入layui.js&#x…

neo4j 图数据库:Cypher 查询语言、医学知识图谱

neo4j 图数据库&#xff1a;Cypher 查询语言、医学知识图谱 Cypher 查询语言创建数据查询数据查询并返回所有节点查询并返回所有带有特定标签的节点查询特定属性的节点及其所有关系和关系的另一端节点查询从名为“小明”的节点到名为“小红”的节点的路径 更新数据更新一个节点…

python爬虫和用腾讯云API接口进行翻译并存入excel,通过本机的Windows任务计划程序定时运行Python脚本!

项目场景&#xff1a; 提示&#xff1a;这里简述项目相关背景&#xff1a;定时爬取外网的某个页面&#xff0c;并将需要的部分翻译为中文存入excel 接下了的&#xff0c;没学过的最好看一下 基本爬虫的学习 【爬虫】requests 结合 BeautifulSoup抓取网页数据_requests beauti…

Vue CoreVideoPlayer 一款基于 vue.js 的轻量级、优秀的视频播放器组件

大家好,我是程序视点的小二哥!今天小二哥给大家推荐一款非常优秀的视频播放组件 效果欣赏 介绍 Vue-CoreVideoPlayer 一款基于vue.js的轻量级的视频播放器插件。 采用Adobd XD进行UI设计&#xff0c;支持移动端适配,不仅功能强大&#xff0c;颜值也是超一流&#xff01; Vue-…

第一次构建一个对话机器人流程解析(二)

1. 问答机器人的组成-基于知识图谱的搜索 在教育场景下&#xff0c;若学生有关于学习内容的提问&#xff0c;或业务层面的提问&#xff0c;则要求问答机器人的回答必须精准&#xff0c;来满足业务的要求因此需要通过知识图谱来快速检索&#xff0c;所提内容的相关信息&#xf…

数字系统与进制转换

数字系统 数字逻辑是计算机科学的基础&#xff0c;它研究的是如何通过逻辑门电路&#xff08;与门、或门、非门等&#xff09;实现各种逻辑功能。数字系统则是由数字逻辑电路组成的系统&#xff0c;可以实现各种复杂的运算和控制功能。在计算机科学中&#xff0c;数字逻辑和数…

自定义波形图View,LayoutInflater动态加载控件保存为本地图片

效果图: 页面布局: <?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="…

Kubernetes基于helm部署jenkins

Kubernetes基于helm安装jenkins jenkins支持war包、docker镜像、系统安装包、helm安装等。在Kubernetes上使用Helm安装Jenkins可以简化安装和管理Jenkins的过程。同时借助Kubernetes&#xff0c;jenkins可以实现工作节点的动态调用伸缩&#xff0c;更好的提高资源利用率。通过…

MySQL Innodb存储引擎中,当页默认的大小是16K时,页中最多存放多少行的记录?

1、题目引入 Innodb存储引擎是面向行的(row-oriented)&#xff0c;也就是说数据的存放按行进行&#xff0c;每页存放的行记录是有硬性定义的&#xff0c;当页默认的大小是16K时&#xff0c;页中最多存放多少行的记录&#xff1f; A、1600 行B、8192 行C、16383 行D、7992 行 …

基于Python协同过滤的旅游景点推荐系统,采用Django框架,MySQL数据存储,Bootstrap前端,echarts可视化实现

随着旅游业的迅速发展&#xff0c;个性化旅游推荐系统成为提升用户体验和促进旅游市场增长的重要工具。本研究旨在设计并实现一种基于Python协同过滤的旅游景点推荐系统&#xff0c;结合Django框架、MySQL数据库存储、Bootstrap前端框架以及echarts数据可视化技术&#xff0c;为…

【粉丝福利 | 第8期】值得收藏!推荐10个好用的数据血缘工具

⛳️ 写在前面参与规则&#xff01;&#xff01;&#xff01; ✅参与方式&#xff1a;关注博主、点赞、收藏、评论&#xff0c;任意评论&#xff08;每人最多评论三次&#xff09; ⛳️本次送书1~4本【取决于阅读量&#xff0c;阅读量越多&#xff0c;送的越多】 目前市面上绝…

数据迁移探索

概念 数据迁移是指将数据从一个计算环境或存储系统移动到另一个计算环境或存储系统。 随着公司业务的发展&#xff0c;出于成本优化、系统升级、分库分表、整合数据等原因。数据迁移工作在日常工作中会陆续出现。 我们可以将数据迁移分成两个部分&#xff0c;第一部分是数据…

springboot高职院校毕业生信息管理系统-计算机毕业设计源码27889

摘 要 基于Java语言开发的高职院校毕业生信息管理系统旨在提供一个便捷、高效的方式来管理毕业生的相关信息。系统包括学生基本信息管理、成绩管理、就业信息管理等模块&#xff0c;通过界面友好、操作简单的设计&#xff0c;方便管理员快速查询和更新学生信息。系统还提供数据…

采用前后端分离技术架构+java语言开发的全套产科信息管理系统源码 可与医院HIS、LIS、PACS、RIS等系统进行对接

采用前后端分离技术架构java语言开发的全套产科信息管理系统源码 可与医院HIS、LIS、PACS、RIS等系统进行对接 什么是产科信息管理系统-建档管理&#xff1f; 产科信息管理系统建档管理通过信息技术实现了孕产妇健康信息的电子化、网络化和智能化管理&#xff0c;提高了医疗服…

Riscv 架构的合规测试

为啥直接关注riscv-arch-test&#xff0c;是因为RISCOF 测试框架使用的是riscv-arch-test 1. The architectural test 架构测试是一个单一的测试&#xff0c;代表了可编译和运行的最小测试代码。它是用汇编代码编写的&#xff0c;其产品是test signature。一个架构测试可能由…

微信小程序推送消息java版

需求背景 使用springboot2微信小程序推送消息。百度了一下看了一篇文章整体还可以&#xff0c;这里推荐一下。 教程解析 1、微信平台开通订阅消息。 2、添加模板。 3、springboot后台接口开发 微信平台验证地址接口开发&#xff0c;然后部署到公网服务器。 4、微信平台验…