1 概述

Windows下Python+CUDA+PyTorch安装,步骤都很详细,特此记录下来,帮助读者少走弯路。

2 Python

Python的安装还是比较简单的,从官网下载exe安装包即可:

因为目前最新的torch版本只支持到Python 3.8,因此为了不会出现版本兼容问题建议安装Python 3.8。

下载中间的那个executable installer并安装,打开会建议选择自定义:

选择需要的组件:

选择位置:

安装完后可以从命令行查看是否安装成功(一般默认会把路径添加到环境变量中):

python --version

由于该安装包会自动把pip也一起安装,因此在使用时会提示pip需要升级,请使用如下命令升级pip:

python -m pip install --upgrade pip

在安装前建议添加国内源,在用户目录下新建一个pip文件夹,并在其中新建一个叫pip.ini的文件,输入如下内容:

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host = https://pypi.tuna.tsinghua.edu.cn

3 CUDA

CUDA的安装也不难,一般Windows会在装系统的时候自动安装好对应的N卡驱动,从官网下载对应的CUDA Toolkit:

下载好后打开(实际上是一个压缩包,这里是解压路径):

解压完成后会自动打开安装界面:

没特殊需求可以直接使用默认安装选项,否则请选择自定义组件进行安装:

由于笔者没有安装VS,这里会提示找不到VS,忽略即可:

接下来就是等待安装:

安装完成:

打开cmd输入nvcc --version,显示版本号即为安装成功:

4 PyTorch

4.1 下载

PyTorch建议使用离线方式手动安装,戳这里下载对应CUDA版本与对应Python版本的torch以及torchvision:

最前面的cu110表示cuda 11.0,接着是torch/torchvision,再接着是版本,后面的cp表示Python版本,比如cp36表示Python 3.6,接着是系统和架构。

4.2 安装

下载完成后使用pip安装即可:

pip install torch-1.7.0+cu110-cp38-cp38-win_amd64.whl
pip install torchvision-0.8.1+cu110-cp38-cp38-win_amd64.whl

注意如果是Windows 2004版本可能会出现如下问题:

这是numpy 19.0.4版本的问题,详情可以戳这里。

解决方法是安装19.0.3版本:

pip uninstall numpy
pip install numpy==19.0.3

接着进行测试,打开python:

python
import torch
print(torch.__version__)

输出torch版本即表示成功:

Window下Python+CUDA+PyTorch安装的更多相关文章

  1. window下python 扩展库安装 使用第三方镜像源

    0.前言     由于python的官方镜像位于国外,若使用pip或者easy_install安装第三方插件时或许会被限制,甚至连easy_install或pip也无法安装,例如在windows环境下 ...

  2. 【转】android 最新 NDK r8 在window下开发环境搭建 安装配置与使用 详细图文讲解,完整实际配置过程记录(原创)

    原文网址:http://www.cnblogs.com/zdz8207/archive/2012/11/27/android-ndk-install.html android 最新 NDK r8 在w ...

  3. ubuntu系统下Python虚拟环境的安装和使用

    ubuntu系统下Python虚拟环境的安装和使用        前言:进行python项目开发的时候,由于不同的项目需要使用不同的资源包和相关的配置,因此创建多个python虚拟环境,在虚拟环境下开 ...

  4. android 最新 NDK r8 在window下开发环境搭建 安装配置与使用 详细图文讲解,完整实际配置过程记录(原创)

      android 最新 NDK r8 在window下开发环境搭建 安装配置与使用 详细图文讲解,完整实际配置过程记录(原创) 一直想搞NDK开发却一直给其他事情耽搁了,参考了些网上的资料今天终于把 ...

  5. Window下MySql 5.6 安装后内存占用很高的问题

    Window下MySql 5.6 安装后内存占用很高的问题 刚刚准备玩一把mysql,初学者 环境是window 7和window sever 2008, mysql是最新的5.6, 发现的问题是安装 ...

  6. python学习:Windows 下 Python easy_install 的安装

    Windows 下 Python easy_install 的安装     下载安装python安装工具下载地址:http://pypi.python.org/pypi/setuptools 可以找到 ...

  7. Android NDK r8 Cygwin CDT 在window下开发环境搭建 安装配置与使用 具体图文解说

    版权声明:本博客全部文章均为原创.欢迎交流.欢迎转载:转载请勿篡改内容,而且注明出处,谢谢! https://blog.csdn.net/waldmer/article/details/3272500 ...

  8. Window 下 MySQL 环境的安装

    Window 下 MySQL 环境的安装 简介: MySQL 是最流行的关系型数据库管理系统,在WEB应用方面 MySQL 是最好的RDBMS(Relational Database Manageme ...

  9. Windows下Python 3.6 安装BeautifulSoup库

    - - 下载安装 安装方法如下: 到 - PIP安装 如果上一种方法安装不成功,可以用第二种方法,记住,Python3.6下是pip3. 安装方法如下: pip3 install beautifuls ...

随机推荐

  1. 02.Fancy Indexing

    import numpy as np x = np.arange(16) index = [3,5,8] x[index] array([3, 5, 8]) X = x.reshape(4,-1) X ...

  2. Python数据结构与算法_搜索插入位置(07)

    给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于数组中,返回它将会被按顺序插入的位置. 你可以假设数组中无重复元素. 示例 1: 输入: [1,3,5,6], 5输出 ...

  3. node_puppeteer无界爬虫

    环境:node----v14.5.0 vscode----2019 依赖库 (需要自行设置好目录结构,否则会报目录错误) const puppeteer = require("puppete ...

  4. Java线程池 ExecutorService了解一下

    本篇主要涉及到的是java.util.concurrent包中的ExecutorService.ExecutorService就是Java中对线程池的实现. 一.ExecutorService介绍 E ...

  5. Java基本概念:面向对象

    一.简介 面向过程的思维模式是简单的线性思维,思考问题首先陷入第一步做什么.第二步做什么的细节中. 面向对象的思维模式说白了就是分类思维模式.思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独 ...

  6. fastjson 请求dnslog

    目录 payload 利用java.net.Inet[4|6]Address 参考 Fastjson <= 1.2.47 远程命令执行漏洞利用工具及方法记录 payload rmi://.lda ...

  7. 基于CameraLink的逻辑综合和版图设计

    前期接口设计用的是Vivado18.3+Modelsim10.6,逻辑综合及版图生成的环境是Ubuntu16,逻辑综合用的工具Design Compiler,生成版图用的工具是Encounter. 下 ...

  8. 第01章-Java SE8的流库

    从迭代到流的操作 流表面上看起来和集合很类似,都可以让我们转换和获取数据,但是它们之间存在着显著的差异 流并不存储其元素,这些元素可能存储在底层的集合中,或者是按需生成的 流的操作不会修改其数据源 流 ...

  9. Apache配置 5.访问日志不记录静态文件

    介绍:项目中的CSS.图片.js都是静态文件.一般会将静态文件放到一个单独的目录中,以方便管理. 1. 配置 # vim /usr/local/apache2.4/conf/extra/httpd-v ...

  10. Java volatile关键字详解

    Java volatile关键字详解 volatile是java中的一个关键字,用于修饰变量.被此关键修饰的变量可以禁止对此变量操作的指令进行重排,还有保持内存的可见性. 简言之它的作用就是: 禁止指 ...