安装torch(GPU版本)并在Pycharm中配置

news2024/11/30 2:42:42

零.前置环境

1.NVIDIA GPU Computing Toolkit已安装

版本为:11.6

已添加到环境变量

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6\libnvvp

在cmd中查看cuda版本

方法1:nvidia-smi

方法2:nvcc -V

2.安装pycharm

我安装的是专业版,自行安装

3.相关信息

windows版本

一、安装Anaconda

anaconda镜像网站

我下载的是:Anaconda3-2023.09-0-Windows-x86_64

一般情况一直next按默认设置,但是注意下面:

(1)选ALL Users

(2)放在 E:\Anaconda\

(3)下面两个可以选,也可以不选,都没大问题,因为我卸载过anaconda所以我全勾上了

安装完成后,在开始界面能看到

二、修改创建新env的地址 + 镜像

(1)env地址设置

因为我想要默认创建的新环境在 E:\Anaconda\envs 下

在下面地址中,找到.condarc文件

C:\Users\15850\.condarc

添加以下内容:

envs_dirs:
  - E://Anaconda//envs

(2)镜像设置(也可以在anaconda prompt中以命令行设置)

show_channel_urls: true
channels:
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
  - defaults

 或者在anaconda prompt中以命令行设置

conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --set show_channel_urls yes

三、安装torch

0.版本说明

PS:这步骤可以先不看,先1,等装torch时再来看

因为我的cuda版本是11.6,所以需要查看安装的 pytorch版本是多少在官网查看 

 pytorch官网

因为的cuda版本是11.6并没有显示,所以去 更多版本里查看

更多版本链接

找到我的cuda对应的版本

conda install pytorch==1.12.0 torchvision==0.13.0 torchaudio==0.12.0 cudatoolkit=11.6 -c pytorch -c conda-forge

pytorch1.12.0

torchvision0.13.0

torchaudio0.12.0

cudatoolkit11.6

python3.8(我想要安装的python版本是3.8)

1.创建环境

打开anacaonda prompt,创建环境并激活,创建了一个名字为:py38,python环境为3.8的conda环境

conda create -n py38 python=3.8

 查看拥有的conda环境,base是默认环境,py38是刚刚创建的环境

conda env list

在文件夹下也能查看文件创建成功

进入到py38这个环境

conda activate py38

2.安装torch(GPU版本) 

根据【0.版本说明】,我们知道了想要下载的版本

torchvision0.13.0

pytorch1.12.0

torchaudio0.12.0

cudatoolkit11.6

那么就在下面的链接下可以下载

pytorch下载镜像

我的cuda版本:11.6,所以在界面中搜索:cu116(快捷键:CTRL+F)

有两种安装方法,一是下载后安装,二是直接在anaconda prompt中安装,下面分别举例介绍

(1)下载后安装(torchvision0.13.0)

下载下来之后,进入到anaconda prompt中安装

文件放在:D:\Code\atools

D:
cd Code
cd atools
pip install "torchvision-0.13.0+cu116-cp38-cp38-win_amd64.whl"

查看是否安装成功

conda list

(2)直接在anaconda prompt中安装 (pytorch1.12.0)

pip install torch==1.12.0+cu116 -f https://download.pytorch.org/whl/torch_stable.html

查看是否安装成功

 安装:torchaudio==0.12.0

pip install torchaudio==0.12.0+cu116 -f https://download.pytorch.org/whl/torch_stable.html

3.在anaconda prompt中测试安装是否成功

python
import torch
torch.__version__
print(torch.cuda.is_available())
exit()

四、在pycharm中配置

可以新建,也可以修改原来代码的编译环境。我在此演示后者

因为conda的环境在下面的文件中

E:\Anaconda\Scripts\conda.exe

所以进行以下设置

 

设置完成

 编写以下代码

import torch
print(torch.cuda.is_available()) # 查看GPU是否可用
print(torch.__version__)

 

运行之后的结果 

PS:新建项目,完成下面的步骤就和上面步骤一样,我就不演示了

 

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

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

相关文章

基于Matlab的各种图像滤波Filter算法(代码开源)

前言:本文为手把手教学 Matlab 平台下的各种图像滤波算法的教程,将编程代码与图像滤波知识相联系,以实战为例!博客中图像滤波算法包含:均值滤波、中值滤波、高斯滤波、双边滤波、引导滤波。图像滤波算法是计算机视觉领…

极速文件搜索工具Everything结合内网穿透实现远程搜索本地文件

文章目录 前言1.软件安装完成后,打开Everything2.登录cpolar官网 设置空白数据隧道3.将空白数据隧道与本地Everything软件结合起来总结 前言 要搭建一个在线资料库,我们需要两个软件的支持,分别是cpolar(用于搭建内网穿透数据隧道…

ES6之Reflect详解

✨ 专栏介绍 在现代Web开发中,JavaScript已经成为了不可或缺的一部分。它不仅可以为网页增加交互性和动态性,还可以在后端开发中使用Node.js构建高效的服务器端应用程序。作为一种灵活且易学的脚本语言,JavaScript具有广泛的应用场景&#x…

基于斑点鬣狗算法优化的Elman神经网络数据预测 - 附代码

基于斑点鬣狗算法优化的Elman神经网络数据预测 - 附代码 文章目录 基于斑点鬣狗算法优化的Elman神经网络数据预测 - 附代码1.Elman 神经网络结构2.Elman 神经用络学习过程3.电力负荷预测概述3.1 模型建立 4.基于斑点鬣狗优化的Elman网络5.测试结果6.参考文献7.Matlab代码 摘要&…

新手小白:一文带你用vite从零搭建企业级开发环境

在这工作的半年时间里,开始接触了前端开发,技术栈主要用的是 vue2,但是自己利用时间也学习了 vue3,组合式 api 和 vue3 的各种生态比 vue2 好用太多了,特别是状态管理库 pinia 比 vuex 简介很多,构建工具也…

35--JDK新特性

1、新语法结构 新的语法结构,为我们勾勒出了 Java 语法进化的一个趋势,将开发者从复杂、繁琐的低层次抽象中逐渐解放出来,以更高层次、更优雅的抽象,既降低代码量,又避免意外编程错误的出现,进而提高代码质…

09 标准库软件模拟I2C时序

引言: 你需要的I2C知识这里都有, 本文涵盖了I2C的基本知识和在各个主流平台的开发实例, 总之, 你需要的,都在这里, 后续我也会继续更新在嵌入式开发中常见的通信协议。 一、I2C的基本知识 1. I2C介绍 IIC总…

【JVM】一文掌握JVM垃圾回收机制

作为Java程序员,除了业务逻辑以外,随着更深入的了解,都无法避免的会接触到JVM以及垃圾回收相关知识。JVM调优是一个听起来很可怕,实际上很简单的事。 感到可怕,是因为垃圾回收相关机制都在JVM的C++层实现,我们在Java开发中看不见摸不着;而实际很简单,是因为它说到底,也…

新能源汽车冷却系统的水道管口类型有哪些?格雷希尔针对这些管口密封的快速接头有哪些?

对于新能源汽车,不仅电池,还有电机、电控、充电单元部件,都需要处于适宜的工作温度,才能维持整车的正常运行。而这些部件在运行过程中会产生大量的热量,如果不及时散热会对汽车的性能、寿命产生影响,甚至可…

如何协调建筑技术集成、互操作性和安全性

尽管进行了大量时间和精力的准备和执行,但建筑集成通常无法按预期或根据需要进行工作,无法满足日益常见的能源报告要求或组织可持续发展目标。 当谈到运营技术 (OT) 部署的最终状态时,“这不是我所要求的”这句话太常见了。在许多情况下&…

Codeforces Round 917 (Div. 2) A~F

A.Least Product(思维) 题意: 给出一个数组 a 1 , a 2 , . . . , a n a_1, a_2, ..., a_n a1​,a2​,...,an​,你可以进行若干次以下操作: 选择数组中的一个元素 a i a_i ai​,将这个数字修改为 0 ∼ a i 0 \sim a_i 0∼ai​之…

java servlet软件缺陷库管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 java servlet软件缺陷库管理系统是一套完善的java web信息管理系统 系统采用serlvetdaobean(mvc模式),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOM…

约翰瑟尔的故事

约翰瑟尔的故事 你即将看到的是“瑟尔效能机”创始者,约翰瑟尔的故事 据瑟尔原话,该装置会是通向自由能源的关键 “他”拥有“会飞”等不可思议的特性相关说法还有待证实,此记录篇仅为告知观者 制片方对瑟尔技术持中立态度 以下是我们所搜集…

【最优化】从图形理解单纯形法——不用单纯形表来解线性规划问题 / 单纯形表的本质与直觉

66ccff 单纯形法是解线性规划问题(LP)的最经典方法,很多人都了解单纯形法是用单纯形表来进行求解的,但是不了解背后的原理。 这篇博文介绍单纯型表的直觉。 需要的前置知识 你需要了解: 单纯形法实际上是在“爬山”…

劫持 PE 文件:新建节表并插入指定 DLL 文件

PE格式简介 PE(Portable Executable)格式,是微软Win32环境可移植可执行文件(如exe、dll、vxd、sys和vdm等)的标准文件格式。PE格式衍生于早期建立在VAX(R)VMS(R)上的COFF(Common Object File Format)文件格式。 Portable 是指对于不同的Windows版本和不同的CPU类型上…

构建高效数据流转的 ETL 系统:数据库 + Serverless 函数计算的最佳实践

作者:柳下 概述 随着企业规模和数据量的增长,数据的价值越来越受到重视。数据的变化和更新变得更加频繁和复杂,因此及时捕获和处理这些变化变得至关重要。为了满足这一需求,数据库 CDC(Change Data Capture&#xff…

深入解析 可空值类型

前言: 问:为什么会有可空值类型的诞生? 答:应对在某些特定场景中获取的信息可能是不完整的。 C# 1中的可空值类型 在C#1中没有对应的表示Null值的方法。当时普遍都是采用其他方式。第一种在数据缺失的情况下给其一个默认值。第…

论文阅读: AAAI 2022行人重识别方向论文-PFD_Net

本篇博客用于记录一篇行人重识别方向的论文所提出的优化方法《Pose-Guided Feature Disentangling for Occluded Person Re-identification Based on Transformer》,论文中提出的PDF_Net模型的backbone是采用《TransReID: Transformer-based Object Re-Identificati…

【JavaWeb学习笔记】17 - ThreadLocal

项目代码 https://github.com/yinhai1114/JavaWeb_LearningCode/tree/main/threadlocal/src/com/yinhai/thread 目录 项目代码 一、什么是ThreadLocal? 二、ThreadLocal快速入门 三、源码解读 一、什么是ThreadLocal? 1. ThreadLocal的作用,可以实现在同一个线…

打破成本壁垒,免费SSL证书为中小企业保驾护航

HTTPS,这个曾经看似遥远的技术词汇,如今已与我们每个人的网络生活息息相关。而实现HTTPS加密传输的关键一环——SSL证书,正以其独特的安全性能,为网站筑起一道坚实的防护墙。更令人惊喜的是,免费SSL证书服务已经到来&a…