V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
winglight2016
V2EX  ›  程序员

最近买了 1080ti 的显卡想搭一个深度学习的环境,结果发现个蛋疼的问题

  •  
  •   winglight2016 · 2017-12-13 20:29:44 +08:00 · 21211 次点击
    这是一个创建于 2571 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我想 keras+tensorflow 是比较常见的方案了,但是,有以下蛋疼的问题:

    1.tensorflow 不支持 nvidia cuda 和 cudnn 的最新版本——这问题其实还好了,唯一的麻烦就是:我先在 ubuntu 上安装了最新的版本,结果又要卸载安装低版本

    2.我还是比较习惯 mac 环境,但是 tensorflow 新版本不支持 mac,只支持 ubuntu 和 windows

    3.照说 python 选择 3.7 版本比较合理,但是很多教程和库选择的是 2.7

    不知道有没有高手来指点一下,最好是能在 mac 下统一开发环境

    第 1 条附言  ·  2017-12-14 10:14:12 +08:00
    可能我表达都问题不是很清楚,现在 keras+tf 环境是可以搭建,只是个人觉得 windows 下面日常使用太不方便,所以有两个途径来解决:
    1.在 Mac 上搭建 keras+other 框架,目前看起来 theano 已经被淘汰了,也没有 tf 之外的选择
    2.在 windows 上搭建开发环境,忍着~~~
    第 2 条附言  ·  2017-12-23 00:39:33 +08:00
    呵呵,终于把 tensoflow-gpu 在 Mac 上编译通过了,真是不容易啊!
    62 条回复    2018-01-23 19:03:10 +08:00
    winglight2016
        1
    winglight2016  
    OP
       2017-12-13 20:36:33 +08:00
    补充个问题:在 windows 上的 ubuntu 子系统是否支持 cuda/cudnn 这一套 gpu 库呢?
    qq976739120
        2
    qq976739120  
       2017-12-13 20:49:42 +08:00
    等等,python 出 3.7 了?
    diggerdu
        3
    diggerdu  
       2017-12-13 20:55:15 +08:00
    最简单的方法是用 docker
    你初学的话这点性能损失也不打紧
    Biggoldfish
        4
    Biggoldfish  
       2017-12-13 20:58:46 +08:00 via iPad
    winglight2016
        5
    winglight2016  
    OP
       2017-12-13 21:16:35 +08:00
    @qq976739120 哦呵呵,和 2 搞反了
    @diggerdu 你是说在 mac 上用 docker 安装全部的 cuda 驱动和 tensorflow、keras ?这有现成的 docker 吗?自己 build 不是很熟悉 docker 啊
    @Biggoldfish 哦,看来这条路还很漫长啊
    winglight2016
        6
    winglight2016  
    OP
       2017-12-13 21:28:10 +08:00
    @diggerdu 刚去找了一圈,发现 nvidia-docker 安装条件:
    GNU/Linux x86_64 with kernel version > 3.10
    Docker >= 1.12
    NVIDIA GPU with Architecture > Fermi (2.1)
    NVIDIA drivers ~= 361.93 (untested on older versions)

    这样做只是为了容器化,并不能解决 Mac 下安装 tensorflow 的问题
    zmj1316
        7
    zmj1316  
       2017-12-13 22:09:29 +08:00
    @winglight2016 1080ti 本身也装不了 macos 吧?
    ysc3839
        8
    ysc3839  
       2017-12-13 23:36:43 +08:00 via Android
    @zmj1316 黑苹果是有可能的。
    ysc3839
        9
    ysc3839  
       2017-12-13 23:37:08 +08:00 via Android
    @zmj1316 老款 Mac Pro 也可以换显卡。
    ihuguowei
        10
    ihuguowei  
       2017-12-13 23:37:45 +08:00 via Android
    @zmj1316 有驱动的,我的 1070 可以
    20015jjw
        11
    20015jjw  
       2017-12-14 03:32:58 +08:00 via Android
    @zmj1316 可以
    zhaoyulee
        12
    zhaoyulee  
       2017-12-14 03:39:35 +08:00
    根据我几个月的折腾,还是放弃 Mac 吧,会有各种问题
    inflationaaron
        13
    inflationaaron  
       2017-12-14 05:44:33 +08:00 via iPhone   ❤️ 1
    mac 真的是二等公民,别想了。不如在 MacBook 上开 ssh 连到 workstation 上。话说最新的 cudnn 应该是支持的吧,我在 aws 上的 V100 编译过了。
    am241
        14
    am241  
       2017-12-14 06:39:27 +08:00 via Android
    @inflationaaron 不支持吧?前几天看还需要打补丁自己编译安装
    brickyang
        15
    brickyang  
       2017-12-14 06:45:57 +08:00 via iPhone
    Python 3.5,TF 1.4,CUDA 8 即可
    congeec
        16
    congeec  
       2017-12-14 07:05:03 +08:00
    @brickyang 歪个楼,头像很好玩儿
    p2pCoder
        17
    p2pCoder  
       2017-12-14 07:50:11 +08:00 via Android
    深度学习环境搭建 版本是个大问题,Python 版本,cuda 版本,tf 版本,各种不支持
    系统最好选 Ubuntu,其他各种问题
    tlday
        18
    tlday  
       2017-12-14 08:13:21 +08:00 via Android
    看到网上说专业卡和游戏卡的区别在于对准确度的要求,想知道有没有用游戏卡跑深度学习经验的说说游戏卡的准确度差到什么程度,对学习过程有多大影响呢?
    northisland
        19
    northisland  
       2017-12-14 08:21:41 +08:00
    炼丹玩,黑苹果还真不如 linux
    northisland
        20
    northisland  
       2017-12-14 08:29:17 +08:00
    夏天升级了个 1.1 版本,和 1080Ti 挺配 CUDA8.0,docker 17.03.1
    FindHao
        21
    FindHao  
       2017-12-14 08:30:21 +08:00
    docker 当然可以啊。https://www.findhao.net/easycoding/2262 容器化以后还有什么环境问题?直接就隔离开就是了。开发可以用 volume 挂文件夹啊。
    nyanyh
        22
    nyanyh  
       2017-12-14 08:31:13 +08:00
    @tlday 1080ti 也是游戏卡,随便翻点帖子就能找到性能对比,只是速度差异和有些多层网络因为显存不足无法训练,准确度没影响的
    douglas1997
        23
    douglas1997  
       2017-12-14 08:31:36 +08:00 via iPhone
    ……居然不用服务器…
    chenchangjv
        24
    chenchangjv  
       2017-12-14 08:38:43 +08:00 via Android
    ubuntu 还是要好一点,Mac 上的好像可以自己编译,怎么弄的时候刚停更 Mac,这是我写的一个记录。仅供参考。http://www.lyyccj.club/index.php/2017/07/23/mactfgpu/
    secsilm
        25
    secsilm  
       2017-12-14 08:42:28 +08:00 via Android
    Python 最好选择 3.5,其他就帮不了你了,没用过 Mac,另外你说很多教程都是用的 2.7 这句话如果你指的教程是官方教程的话,那么人家是为了兼容,你不用管这个
    azh7138m
        26
    azh7138m  
       2017-12-14 08:47:41 +08:00 via Android
    @qq976739120 3.7,测试版本确实有了一段时间了
    realpg
        27
    realpg  
       2017-12-14 08:49:55 +08:00
    本机搞……
    这玩意正确用法应该是弄个服务器,24h 的跑
    如果就扔公司啥的,就弄个塔式服务器就够了
    neosfung
        28
    neosfung  
       2017-12-14 08:50:05 +08:00 via iPhone
    机器学习界里的很多工具,Mac 真的是二等公民,因为 cuda 问题
    tlday
        29
    tlday  
       2017-12-14 09:29:34 +08:00 via Android
    @nyanyh 我看到的说法主要是对计算准确度的差异,以及长期运行的稳定性差异,如果准确度不错的话确实可以试试。专业卡动辄几万一张起步,个人用户实在不划算啊。
    pensz
        30
    pensz  
       2017-12-14 09:30:38 +08:00 via iPhone   ❤️ 1
    建议楼主还是用 ubuntu,cuda cudnn 也用相应的版本,这个配合 1080 ti 是没问题的,网上一搜一大把教程。你的目的是搞深度学习,而不是倒腾 tensorflow on mac。
    aaronzjw
        31
    aaronzjw  
       2017-12-14 09:43:53 +08:00
    ubuntu,然后用 docker ;或者 windows,但是没法用 docker,不支持 windows 的 gpu。 然后 mac 远程就好了。cuda 最新版的没法用,用前一个版本的。python 建议 3.6
    prondtoo
        32
    prondtoo  
       2017-12-14 09:44:26 +08:00
    谁说不支持的,我用 archlinux,天天在滚我的 TS 开发环境和 N 卡、CUDA 驱动,没见说过不兼容的问题。而且也不用什么额外配置,一条命令就安装的事情。
    Leafove
        33
    Leafove  
       2017-12-14 09:45:54 +08:00   ❤️ 1
    要啥自行车,买了 1080ti 基本就告别学习了好吗..😁
    blakejia
        34
    blakejia  
       2017-12-14 09:48:27 +08:00
    回到家马上说一句,
    老婆,那。。个。最近深度学习很火,我需要一个 1080Ti 搞学习,家里那台电脑配置不行了,
    ipwx
        35
    ipwx  
       2017-12-14 09:49:43 +08:00
    1. TensorFlow >= 1.2 不支持 Mac + CUDA
    2. TensorFlow 1.4.0 编译环境是 Python 3.5
    3. Docker 在 Linux 上很好用,Nvidia 给了个基础镜像 nvidia/cuda:8.0-cudnn6-devel-ubuntu16.04
    4. TensorFlow 1.4.0 支持 Windows 下面直接原生 CUDA + Python 3.5。当然 Windows 不支持 Docker,为了方便安装各类包,推荐 Anaconda。
    winglight2016
        36
    winglight2016  
    OP
       2017-12-14 10:09:39 +08:00
    @zmj1316 可以安装,我已经在用了,有官方驱动
    @zhaoyulee
    @inflationaaron
    cuda 和 cudnn 在 mac 上的确是支持的,但是 tensorflow 不支持,就没多少意义了
    @p2pCoder 我在 windows 上全部都安装起来了,只是个人极其讨厌 windows,所以不想在 windows 上开发
    @tlday 网上有评测了,1080 都性能就已经超过 k80 很多了,只是显存没有那么高

    @FindHao 你仔细看一下文章和官方文档啊,大兄弟,nvidia-docker 只能运行在 ubuntu 上

    @secsilm 自己开发的确可以随便选,但是想要跑教程提供都代码就必须用 2.7 了,很蛋疼
    @realpg 本人无业游民,没那个条件搞多台机器,之前用 ec2,那个一小时一美元,用着好心疼,所以才想在本地搭环境

    @neosfung cuda 支持 Mac 都,这个是没问题的

    @ipwx 看来还是只能在 windows 和 ubuntu 之间选一下了,只是目前装了 mac 和 windows 双系统,没法再搞一个 ubuntu 了
    tangyou
        37
    tangyou  
       2017-12-14 10:18:11 +08:00
    https://github.com/norman-thomas/tensorflow-gpu-mac 这里有 1.4 版的 tf,我就是 rmbp2016+外置 1070 用的这个包
    yopming
        38
    yopming  
       2017-12-14 10:20:34 +08:00
    那啥,还是不要黑苹果了,显存不知道在哪个时刻被哪个程序用掉好多
    找个有稳定 Desktop 环境的 Linux,比如 openSUSE 的 KDE,装个 pytorch 也是不错的选择,前几天 pytorch 就支持 cuda9 了,Python3.6 下直接 pip 安装就可以,mac 下面还需要编译,clang 版本太新还不行
    UnknownR
        39
    UnknownR  
       2017-12-14 10:23:32 +08:00
    @Leafove 配个好显示器就行了,当初买了 1080 又怕忍不住玩游戏,就买了 5k 的显示器,分辨率太高游戏跑不起来,只能乖乖学习了
    inflationaaron
        40
    inflationaaron  
       2017-12-14 13:59:26 +08:00 via iPhone
    @am241 嗯,刚看 issue cuda 似乎修复了 nvcc 的 bug,我应该是用的不是最新的
    winglight2016
        41
    winglight2016  
    OP
       2017-12-14 14:24:36 +08:00
    @tangyou 这库看起来没几个人在用啊,不会成为小白鼠吧。。。
    silencefent
        42
    silencefent  
       2017-12-14 14:29:14 +08:00
    深度学习机器学习一边去,我要吃鸡了!落机场落机场!我好肥,我装备好的一逼,哇,空投落我旁边了!
    ballshapesdsd
        43
    ballshapesdsd  
       2017-12-14 14:29:40 +08:00
    有钱人
    BadMan
        44
    BadMan  
       2017-12-14 15:36:54 +08:00
    Ubuntu 16.04 + Python 3.5 + cuda 8 + Cudnn v6 + tf 1.4 + opencv 3.2
    BadMan
        45
    BadMan  
       2017-12-14 15:37:49 +08:00
    现在也有蛮多项目用 Pytorch 的
    winglight2016
        46
    winglight2016  
    OP
       2017-12-14 15:46:27 +08:00
    @BadMan 好的,这是比较主流的环境了吧
    @silencefent 哈哈,很多年不玩 pc 游戏了,有空可能还试一下
    @ballshapesdsd 当作生产力工具就不算贵啦
    ixiaohei
        47
    ixiaohei  
       2017-12-14 16:43:18 +08:00
    昨天晚上我还在 win10 上 970 显卡,装 cuda8 Cudnn6,然后 tensorflow1.4 成功啊
    ihciah
        48
    ihciah  
       2017-12-14 16:47:37 +08:00
    ubuntu+pytorch 美滋滋,windows 上可以用 pycharm 配置远程解释器,和在本地基本没区别(需要可视化出门左转 XManager+XShell
    realkenshinji
        49
    realkenshinji  
       2017-12-14 17:01:07 +08:00 via iPhone
    @winglight2016 GCP 有试过么
    MiguelValentine
        50
    MiguelValentine  
       2017-12-14 17:03:47 +08:00
    看标题我还以为是显卡太好打游戏上瘾不可自拔呢
    winglight2016
        51
    winglight2016  
    OP
       2017-12-14 17:18:04 +08:00
    @ixiaohei windows 的确可以装,而且比 ubuntu 上方便快速

    @ihciah pytorch 和 tf 相比有什么优势吗?
    @realkenshinji 曾经试过免费版,感觉相对 ec2 很难用,放弃了
    @MiguelValentine 可以给推荐几个容易上瘾的游戏啊——最好是免费的
    ethankoo
        52
    ethankoo  
       2017-12-14 17:42:25 +08:00
    winglight2016
        53
    winglight2016  
    OP
       2017-12-14 18:17:23 +08:00
    @ethankoo 这页面加载速度有点感人啊,似乎域名无法解析?
    ihciah
        54
    ihciah  
       2017-12-14 18:29:08 +08:00 via iPhone
    @winglight2016 tensorflow 语法一点不 pythonic,pytorch 挺好学,对动态图支持也很好。
    janxin
        55
    janxin  
       2017-12-14 18:32:59 +08:00
    奉劝一句 gpu 用 Ubuntu,别折腾 mac,从长远考虑官方也会不支持...
    winglight2016
        56
    winglight2016  
    OP
       2017-12-14 20:53:37 +08:00
    @ihciah pytorch 我看了一下,问题更多:
    1.不支持 windows
    2.# macOS Binaries dont support CUDA, install from source if CUDA is needed
    我要是方便安装 Ubuntu 也没这么多问题了
    weakish
        57
    weakish  
       2017-12-14 21:45:27 +08:00
    @tlday 深度学习用不上科学计算卡的那些精度。稳定的话,配好一点的电源(以防烧掉)。
    bukip
        58
    bukip  
       2017-12-14 21:47:11 +08:00   ❤️ 1
    你不知道有一种语言叫 python 2.7 吗?
    afpro
        59
    afpro  
       2017-12-14 22:08:00 +08:00
    开发环境是开发环境 训练机器是训练机器
    likuku
        60
    likuku  
       2017-12-14 23:08:09 +08:00
    ubuntu 上 opencl 支持的很顺溜,CUDA 没测过,不知道。

    py3.7 ... 还是处于开发分支的试验版本,您也是够猛的。
    fyooo
        61
    fyooo  
       2018-01-22 15:57:55 +08:00
    看起来楼主是黑苹果+tensorflow-gpu ?
    winglight2016
        62
    winglight2016  
    OP
       2018-01-23 19:03:10 +08:00
    @fyooo 是的,安装很困难,装好了还是不错的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   940 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 21:05 · PVG 05:05 · LAX 13:05 · JFK 16:05
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.