PyTorch在64位Windows下的Conda包

昨天发了一篇PyTorch在64位Windows下的编译过程的文章,有朋友觉得能不能发个包,这样就不用折腾了。于是,这个包就诞生了。感谢@晴天1494598013779为conda包的安装做了测试。

更新:已经添加了对所有Compute Capability>=2.0的显卡的支持

先别急着激动。如果要直接使用的话,你需要满足以下条件:

  • Anaconda3 (with Python 3.6)
  • Windows 10 64位系统(其他由于CUDA二进制文件不一致所以不行)
  • CUDA 8.0.61
  • cuDNN v5以上(包中已经自带了v6, cuDNN v5用户亦可放心使用)

这四个条件个人感觉还算比较OK,如果不想放弃Anaconda2也可以创建虚拟环境来使用。

要安装的话,如果你不嫌弃anaconda cloud的网速的话,只需键入下面一条命令:

conda install -c peterjc123 pytorch=0.1.12复制代码

如果不能忍受conda那蜗牛爬般的网速的话,那我为大家将包上传至公有云中,可以尝试七牛云或者百度云,大家下载之后,键入如下几条指令:

conda install numpy mkl cffi
conda install --offline path/to/tar/pytorch-0.1.12-py36_0.1.12cu80.tar.bz2复制代码

安装之后,也千万要注意,要在主代码的最外层包上

if __name__ == '__main__':复制代码

这个判断,可以参照我昨天文章中的例子,因为PyTorch的多线程库在Windows下工作还不正常。

更新:经网友提醒,若import torch时发生如下错误:

Traceback (most recent call last):
File "test.py", line 2, in <module>
import torch
File "C:\Anaconda3\lib\site-packages\torch\__init__.py", line 41, in <module>
from torch._C import *
ImportError: DLL load failed: The specified module could not be found.复制代码

请将Anaconda的Python版本从3.6.0升级至3.6.1。

附一段简单测试CUDA与cuDNN是否工作正常的代码:

# CUDA TEST
import torch
x = torch.Tensor([1.0])
xx = x.cuda()
print(xx) # CUDNN TEST
from torch.backends import cudnn
print(cudnn.is_acceptable(xx))复制代码

如果CUDA工作不正常,那就不能使用.cuda()将模型和数据通过GPU进行加速了。而如果cuDNN不能正常工作,那就使用如下代码关掉它:

cudnn.enabled = False复制代码

以上,就是文章的全部内容啦,如果感觉还意犹未尽的话,可以给我的Github 主页或者项目加个watch或者star之类的(滑稽),以后说不定还会再分享一些相关的经验。

PyTorch在64位Windows下的Conda包(转载)的更多相关文章

  1. 在64位windows下使用instsrv.exe和srvany.exe创建windows服务

    在64位windows下使用instsrv.exe和srvany.exe创建windows服务   在32位的windows下,包括windows7,windows xp以及windows 2003, ...

  2. Winio驱动在64位windows下无法使用的解决方法

    C#在使用WinIo的驱动开发类似按键精灵一类工具的时候,需要对相关的驱动进行注册才能正常启动,找了下资料,资料来自: http://jingyan.baidu.com/article/642c9d3 ...

  3. 在64位windows下使用instsrv.exe和srvany.exe创建windows服务[转]

    本文转自:https://www.iflym.com/index.php/computer-use/201205020001.html 在32位的windows下,包括windows7,windows ...

  4. 【转】在64位windows下使用instsrv.exe和srvany.exe创建windows服务

    本文转自:https://www.iflym.com/index.php/computer-use/201205020001.html 在32位的windows下,包括windows7,windows ...

  5. [转] 64位windows下添加postgreSQL odbc数据源

    系统环境:windows7 64位 postgreSQL9.0(64bit)   ps:安装postgreSQL时确定安装了odbc驱动.   问题:点击“开始->控制面板->管理工具-& ...

  6. 64位Windows下安装Redis教程

    转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/104.html?1455868495 Redis对于Linux​是官方支持 ...

  7. 64位windows下mysql安装

    登入mysql官网https://www.mysql.com/downloads/,点击Community,选择MySQL on Windows,选择MySQL Installer,选择MySQL S ...

  8. 64位linux下rpm安装mysql的5.5.55版本

    昨天同事开了个阿里云环境,让我帮他安装mysql数据库,本想着很简单的一件事,结果还是折腾了一番.坑很多,一路趟过,一个接一个,只能硬着头皮冲. 首先是下载压缩包,因为采用了rpm安装方式,所以下载的 ...

  9. 无光驱在32位windows系统下安装64位windows系统

    位的系统. 大家都知道,32位的操作系统最多只能支持3.2G的内存,现在内存白菜价,很多人都在原有基础上购入新内存,这样最少也有4G了,为了让内存不浪费,我 们只有升级到64位操作系统.但是很多朋友又 ...

随机推荐

  1. jeeplus中两个项目redis冲突问题

    修改端口号[两个项目使用不同的database]

  2. VSM(Virtual Storage Manager For Ceph)安装教程

    转载注明出处,陈小跑 http://www.cnblogs.com/chenxianpao/p/5770271.html 一.安装环境 OS:CentOS7.2 VSM:v2.1 released 二 ...

  3. Linux C 面试题总结

    1.进程和线程的区别,及优劣性比较 进程和线程的主要差别在于它们是不同的操作系统资源管理方式.进程有独立的地址空间,一个进程崩溃后,在保护模式下不会对其它进程产生影响,而线程只是一个进程中的不同执行路 ...

  4. 《深入理解Java虚拟机》笔记2

    都知道Java对内存是自动垃圾回收的,什么样的内存是可以回收的? 这个问题是值得思考的. 对象已死的判定方法有两种: (1)引用计数器法 给对象添加一个引用计数器,有一个地方用到此对象,计数器加一. ...

  5. SVN回到历史版本--转载

    svn回到历史的某个版本 在代码的编写过程中,难免有些错误需要修改,或者想从以前的文件进行代码修改,这样就涉及到版本的追踪,如果你以前提交时日志写的非常清楚,那版本追踪回滚起来就事半功倍.得心应手.下 ...

  6. MoveSessionRestore.bat for firefox

    move "c:\Documents and Settings\leon\Application Data\Mozilla\Firefox\Profiles\eyr6cp34.default ...

  7. vue手机端横屏竖屏切换

    1.建一个空白的vue文件,添加上如下代码 data() { this.$router.go(-1) return {} }   2.在需要横屏竖屏切换的页面中加入如下代码: beforeMount( ...

  8. select * from (select user())a 为什么是查询user()的意思?

    步骤:1.先查询 select user() 这里面的语句,将这里面查询出来的数据作为一个结果集 取名为 a2.然后 再 select * from a 查询a ,将 结果集a 全部查询出来

  9. 实现乐鑫esp8266的无线OTA升级,实现远程在线升级固件

    代码地址如下:http://www.demodashi.com/demo/12994.html 一.前言: 写了这么多的8266博文,一直以满意100%的心态去敲写代码固件烧录,以致很少出现 bug ...

  10. SHOW CREATE DATABASE Syntax

    SHOW CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name Shows the CREATE DATABASE statement that cre ...