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; 不管怎么操作都无法提交或…

FPGA之术语

FPGA之术语 IOSTANDARDDIFF_SSTL12:LVCMOS33:sys_clk_p/n:rst_n:UART时钟JTAG:GPIOONFIPCIe IOSTANDARD 在电子工程领域&#xff0c;DIFF_SSTL12和LVCMOS33是两种不同的电气标准&#xff0c;用于定义信号的电压级别和特性。 IOSTANDARD是一个在FPGA&#xff08;现场可编程门阵…

Spring MVC深入理解之源码实现

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

【cocos2dx】【iOS工程】如何保存用户在游戏内的绘画数据,并将数据以图像形式展示在预览界面

【cocos2dx】【iOS工程】如何保存用户在应用内的操作数据&#xff0c;并将数据以图像形式展示在预览界面 设备/引擎&#xff1a;Mac&#xff08;11.6&#xff09;/Mac Mini 开发工具&#xff1a;Xcode&#xff08;15.0.1&#xff09; 开发需求&#xff1a;如何保存用户在应用…

富格林:抓住正规稳健出金思路

富格林指出&#xff0c;凡事要学会抓住正规思路避繁就简&#xff0c;才会顺利达到终点。在现货黄金市场中&#xff0c;投资者必须学会抓对正规趋势&#xff0c;才是走向盈利出金的根本保障。以下是富格林投资总结的几个观点和建议&#xff0c;希望能帮助投资者实现稳健出金。 …

算法基础之分治法

算法原理 对于一个规模为 n n n 的子问题&#xff0c;若该问题可以容易地解决则直接解决&#xff0c;否则将其分解为 k k k 个规模较小的子问题&#xff0c;这些子问题相互独立且与原问题形式相同。递归地解决这些子问题&#xff0c;然后将各子问题的解合并得到原问题的解&a…

单链表详解(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;查…

Arm64 基础指令集介绍

按照字母排序顺序&#xff1a; ● ADC&#xff1a;带进位加法。 ● ADCS&#xff1a;带进位加法&#xff0c;设置标志位。 ● ADD (extended register)&#xff1a;扩展寄存器加法。 ● ADD (immediate)&#xff1a;立即数加法。 ● ADD (shifted register)&#xff1a;移位寄存…

【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…

Windows 网络重置

netsh int ip reset 命令是用于重置 Windows 操作系统中的网络设置和配置的命令。 在网络故障排除、修复网络连接问题以及清除可能存在的网络配置冲突时非常有用。 命令详解&#xff1a; netsh: 用于配置各种网络设置 int: 用于管理网络接口 ip: 用于管理网络接口的 IP 配…

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…

基于FPGA的LDPC编译码算法设计基础知识

基于FPGA的LDPC编译码算法设计基础知识 数字电路&#xff08;数电&#xff09;知识模拟电路&#xff08;模电&#xff09;知识1. 放大器1.1. 晶体管放大器1.2. 运算放大器1.3. 管子放大器&#xff08;真空管放大器&#xff09;微处理器/单片机知识其他相关知识 基于FPGA的算法设…

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;数字逻辑和数…

C++ 假设今天是星期日,那么过a^b天之后是星期几?

题目 假设今天是星期日&#xff0c;那么过a^b天之后是星期几&#xff1f; 【输入】 两个正整数a&#xff0c;b&#xff0c;中间用单个空格隔开。0<a≤100,0<b≤10000。 【输出】 一个字符串&#xff0c;代表过a^b天之后是星期几。 其中&#xff0c;Monday是星期一&…

自定义波形图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="…

C#多线程并行计算实例

在C#中实现多线程并行计算可以通过使用 Task 和 Parallel 类来实现。这里给出两个简单的示例&#xff0c;一个是使用 Task&#xff0c;另一个是使用 Parallel.ForEach。 使用 Task 进行多线程并行计算 using System; using System.Threading.Tasks;class Program {static voi…