当前位置: 首页 > news >正文

Linux下非root用户安装CUDA

目录

前言

参考链接

步骤

一. 首先,需要查看系统版本:

二. 安装包下载。

下载CUDA:

 cuDNN下载

三. 开始安装CUDA和cuDNN 

安装CUDA

修改环境变量

安装 cuDNN

 查看是否安装成功,输入nvcc -V 


前言

由于一些代码实现(CUDA写的外部扩展包)对cuda版本要求比较高,因此,我在实验室Linux系统下默认的cuda版本上,没办法编译扩展包。需要重新安装特定版本的cuda。

参考链接

非root用户安装cuda与cudnn

非root用户在linux下安装CUDA10.1

步骤

一. 首先,需要查看系统版本:

lsb_release -a

  • 查看GPU信息
nvidia-smi

 GPU驱动版本为525.147.05
  最高支持CUDA版本12.0,不可以下载高于此版本的CUDA,否则需要升级驱动。

二. 安装包下载。

下载CUDA:

CUDA Toolkit Archive | NVIDIA Developer

 此时你可以选择在服务器上输入

wget https://developer.download.nvidia.com/compute/cuda/11.1.0/local_installers/cuda_11.1.0_455.23.05_linux.run

在服务器上进行下载,也可以选择在浏览器中输入wget后面的网址,然后在本地进行下载再上传至服务器。

 cuDNN下载

通过cuDNN Download下载CUDNN,这个下载需要注册账号(简单几步注册登录即可),登录以后,如下图选择合适的CUDA版本对应的CUDNN并选择CUDNN Library for Linux,开始下载。

 下载好以后可以将文件解压缩后压缩为zip格式后上传至服务器。

三. 开始安装CUDA和cuDNN 

现在在我们的服务器中已经有了CUDA和cuDNN的安装包了

安装CUDA

cuda可执行权限

chmod +x cuda_11.1.0_455.23.05_linux.run

运行run文件

./ cuda_11.1.0_455.23.05_linux.run

通过键盘方向键(↑,↓)和Enter键可以进行选择和进入(确定)。选择Continue并进入

 输入accept进入

 利用上下键与Enter勾选对话框,只安装CUDA Toolkit。

选择Options并进入,然后我们需要修改Toolkit Options 、Library install path这两项的路径。

 修改Toolkit Options路径,选择Change Toolkit Install Path 

 将默认路径修改至个人目录下,点击Enter确认

将下面的选项取消选定,选择Done,确认退出

 选择Library install path (Blank for system default)

 添加之前一样的路径并Enter确认退出

选择Done返回上一层目录,修改路径完成,选择Install开始安装 

 出现如下所示的安装信息则说明安装成功

修改环境变量

输入vim ~/.bashrc进行环境变量的修改;

添加一下信息(每个人的路径是不同的,我的是/data/dwl/cuda-11.1.0/)并保存退出。

export CUDA_HOME=$CUDA_HOME:/data/dwl/cuda-11.1.0
export PATH="/data/dwl/cuda-11.1.0/bin:$PATH"
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/data/dwl/cuda-11.1.0/lib64

 

输入source ~/.bashrc 

注意 :

vim编辑器使用指南:

  • vi XXX //打开并编辑文件
  • 按i进入编辑模式
  • 编辑好文本后按Esc,退出插入状态。
  • 保存退出:输入冒号,输入WQ(write,quit)或X(x==wq)回车,或者按了ESC后,直接按shift+zz,或者切换到大写模式按ZZ
  • 文本没改动退出:Esc+冒号+q
  • 不保存退出:Esc+冒号+q!

安装 cuDNN

解压cuDNN

复制文件到CUDA安装目录

cp cudnn-*-archive/include/cudnn*.h /data/dwl/cuda-11.1.0/include
$ cp -P cudnn-*-archive/lib/libcudnn* /data/dwl/cuda-11.1.0/lib64
$ chmod a+r /data/dwl/cuda-11.1.0/include/cudnn*.h /data/dwl/cuda-11.1.0/lib64/libcudnn*

 最后一句是修改权限,cudnn安装完成

 查看是否安装成功,输入nvcc -V 

 可使用which nvcc查看cuda的安装路径

相关文章:

Linux下非root用户安装CUDA

目录 前言 参考链接 步骤 一. 首先,需要查看系统版本: 二. 安装包下载。 下载CUDA: cuDNN下载 三. 开始安装CUDA和cuDNN 安装CUDA 修改环境变量 安装 cuDNN 查看是否安装成功,输入nvcc -V 前言 由于一些代码实现&…...

【bugfix】安装 flash-attn 报错

目录 1. 报错信息 2. 解决方法 安装 flash attention 报错 1. 报错信息 Building wheel for flash-attn (setup.py) ... error error: subprocess-exited-with-error 或者 Building wheel for flash-attn (pyproject.toml) did not run successfully 甚至更多问题。 2. 解…...

技术实践|高斯集群服务器双缺省网关故障分析

导语:当前国产化数据库使用范围越来越广泛,在GaussDB数据库的使用过程中难免会遇到一些问题,有的问题是由于在安装过程中没有注意细节而产生的,多数隐患问题都是在特定场景下才会暴露出来,且暴露的时间未知&#xff0c…...

手把手教你搭建Maven私服

Java全能学习面试指南:https://javaxiaobear.cn 1. Maven私服简介 ①私服简介 Maven 私服是一种特殊的Maven远程仓库,它是架设在局域网内的仓库服务,用来代理位于外部的远程仓库(中央仓库、其他远程公共仓库)。 当然…...

LeetCode 面试题 16.25. LRU 缓存

文章目录 一、题目二、C# 题解 一、题目 设计和构建一个“最近最少使用”缓存,该缓存会删除最近最少使用的项目。缓存应该从键映射到值(允许你插入和检索特定键对应的值),并在初始化时指定最大容量。当缓存被填满时,它应该删除最近最少使用的…...

LaTeX 数学公式常见问题及解决方案

本文汇总了博主在使用 LaTeX 写文档过程中遇到的所有数学公式常见问题及对应的 LaTeX 解决方案 持续更新... 目录 1. 连等式2. 公式重新开始编号2.1 图片/表格重新编号 1. 连等式 在数学公式推导过程中常常会遇到如 Figure 1 所示的连等式,一般需要保证等号或者不等…...

2023最新软件测试20个基础面试题及答案

什么是软件测试? 答案:软件测试是指在预定的环境中运行程序,为了发现软件存在的错误、缺陷以及其他不符合要求的行为的过程。 软件测试的目的是什么? 答案:软件测试的主要目的是保证软件的质量,并尽可能大…...

JMeter-BeanShell预处理程序和BeanShell后置处理程序的应用

一、什么是BeanShell? BeanShell是用Java写成的,一个小型的、免费的、可以下载的、嵌入式的Java源代码解释器,JMeter性能测试工具也充分接纳了BeanShell解释器,封装成了可配置的BeanShell前置和后置处理器,分别是 BeanShell Pre…...

Java声明式事务实战!工作中用这几种就够了!

文章目录 1.几种常用的事务传播行为1.1 REQUIRED1.2 REQUIRES_NEW1.2 NESTED 2. 事务问题2.1 事务不生效?2.2 事务不回滚? 文章会分为两个部分来讲解,第一部分是声明式事务的几种使用场景。第二部分包含事务没有生效,没有回滚的情…...

Abp6.0 使用 appsettings.json配置Serilog.Sinks.MariaDB

Abp6.0中已经启用Serilog,使用Serilog.Sinks.MariaDB包可以保存到MariaDB,mysql中 一种做法是在var loggerConfiguration new LoggerConfiguration( )后使用WriteTo.MariaDB扩展方法来配置,这样在代码中配置不够灵活,修改起来也不方便 其实…...

关于Flume-Kafka-Flume的模式进行数据采集操作

测试是否连接成功: 在主节点flume目录下输入命令: bin/flume-ng agent -n a1 -c conf/ -f job/file_to_kafka.conf -Dflume.root.loggerinfo,console # 这个file_to_kafka.conf文件就是我们的配置文件 然后在另一台节点输入命令进行消费数据: kafka-cons…...

WeTab--颜值与实力并存的浏览器插件

一.前言 现在的浏览器花花绿绿,有大量的广告与信息,令人目不暇接。有没有一款好用的浏览器插件可以解决这个问题呢?我愿称WeTab为版本答案。 WeTab的界面: 干净又整洁。最最关键的是还有智能AI供你服务。 这个WeTabAI就像chatgp…...

2023/11/15JAVA学习(线程池,Executors,网络编程,InetAddress,UDP,TCP,DatagramSocket)

如何多开一个程序...

【整理】HTTP相关版本对比

1. HTTP/1 超文本传输协议,处于计算机网络中的应用层,HTTP是建立在TCP协议之上,所以HTTP协议的瓶颈及其优化技巧都是基于TCP协议本身的特性。 缺陷: 连接无法复用 ---------- 每次请求经历三次握手和慢启动HOLB(队头…...

spark性能调优 | 默认并行度

Spark Sql默认并行度 看官网,默认并行度200 https://spark.apache.org/docs/2.4.5/sql-performance-tuning.html#other-configuration-options 优化 在数仓中 task最好是cpu的两倍或者3倍(最好是倍数,不要使基数) 拓展 在本地 task需要自己设置&a…...

Python-pptx教程之二操作已有PPT模板文件

文章目录 简单的案例找到要修改的元素修改幻灯片中的文本代码使用示例 修改幻灯片的图片代码使用示例 删除幻灯片代码使用示例 获取PPT中所有的文本内容获取PPT中所有的图片总结 在上一篇中我们已经学会了如何从零开始生成PPT文件,从零开始生成较为复杂的PPT是非常消…...

生活总是自己的,请尽情打扮,尽情可爱,,

同色系拼接羽绒服了解一下 穿上时尚感一下子就突显出来了 90白鸭绒填充,不仅时尚还保暖 设计感满满的羽绒服不考虑一下吗?...

栈和队列的初始化,插入,删除,销毁。

目录 题外话 顺序表和链表优缺点以及特点 一.栈的特点 二. 栈的操作 2.1初始化 2.2 栈的销毁 2.3 栈的插入 2.3 输出top 2.4 栈的删除 2.5 输出栈 题外话 顺序表和链表优缺点以及特点 特点:顺序表,逻辑地址物理地址。可以任意访问&#xff0c…...

重温《Unix设计哲学》

重温Unix设计哲学 这个世界是复杂的,但往往本质的东西都是简单的。这些原则,不光是用在程序开发,也适用于架构设计,产品设计等等地方。 简洁原则:以简洁为美 不要为了满足自己的虚荣心,企图搞一些花哨的东…...

AIGC创作系统ChatGPT源码,AI绘画源码,支持最新GPT-4-Turbo模型,支持DALL-E3文生图

一、AI创作系统 SparkAi创作系统是基于OpenAI很火的ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统,支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如…...

K8S认证|CKS题库+答案| 11. AppArmor

目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...

工业安全零事故的智能守护者:一体化AI智能安防平台

前言: 通过AI视觉技术,为船厂提供全面的安全监控解决方案,涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面,能够实现对应负责人反馈机制,并最终实现数据的统计报表。提升船厂…...

家政维修平台实战20:权限设计

目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色&#xf…...

macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用

文章目录 问题现象问题原因解决办法 问题现象 macOS启动台(Launchpad)多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显,都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

Cinnamon修改面板小工具图标

Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...

Java线上CPU飙高问题排查全指南

一、引言 在Java应用的线上运行环境中,CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时,通常会导致应用响应缓慢,甚至服务不可用,严重影响用户体验和业务运行。因此,掌握一套科学有效的CPU飙高问题排查方法&…...

Go 并发编程基础:通道(Channel)的使用

在 Go 中,Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式,用于在多个 Goroutine 之间传递数据,从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...

Go语言多线程问题

打印零与奇偶数(leetcode 1116) 方法1:使用互斥锁和条件变量 package mainimport ("fmt""sync" )type ZeroEvenOdd struct {n intzeroMutex sync.MutexevenMutex sync.MutexoddMutex sync.Mutexcurrent int…...

【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看

文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...

ZYNQ学习记录FPGA(一)ZYNQ简介

一、知识准备 1.一些术语,缩写和概念: 1)ZYNQ全称:ZYNQ7000 All Pgrammable SoC 2)SoC:system on chips(片上系统),对比集成电路的SoB(system on board) 3)ARM:处理器…...