NVIDIA颁布最新禁令,GeForce不能再行深度学习了!
圣诞节前后,国外本应该是一片祥和的气氛,但是总有几家公司喜欢搞事情。老黄就在今天给大家送了个礼物,让不少喜欢AI的用户遭受了晴天霹雳。NVIDIA更新了显卡的用户协议,所有的GeForce系列显卡以后不能在数据中心进行深度学习了。
也就是说,基于GeForce和Titan芯片的深度学习云服务器,就此别过。目前,NVIDIA已经开始在全球范围内开始了禁止活动。日本的的樱花公司已经收到了NVIDIA的通知并且发出了通告,表示马上就会停止提供Quad GPU服务的购买,而这个服务使用的就是Titan X处理器。
可能大家不太理解GeForce、Quadro、Tesla三者的关系,其实这三种产品采用的是同样的GPU,但是根据具体需求的不同,所开放的功能也不一样,也就是老黄的手术刀阉掉的地方也不一样。GeForce作为游戏显卡,其价格在三个产品线当中是最便宜的,而关于游戏性能方面最重要的流处理器数量、单精度运算能力、DirectX的支持度等,都是完整的,但少了一些高级功能。而Quadro显卡相较于GeForce显卡,加入了完整的OpenGL支持,并且在顶级型号上加入了ECC显存。Tesla系列相较于GeForce系列则是去掉了显示接口,并且在高端型号上使用了支持双精度运算的GPU以及ECC显存。
然而理论计算性能方面,采用相同GPU的Quadro显卡和GeForce显卡在计算能力上与昂贵的Tesla计算卡并没有什么区别,只是GeForce系列的显存容量一般相对较少。这样一来,许多预算吃紧的深度学习用户就会选择相对便宜的GeForce显卡来用作深度学习计算使用。目前GeForce 1080 Ti的价格为699美元,国内售价一般在6000元上下。Titan Xp的价格1200美元,国内售价一般为12000元左右。但是Tesla的价格可就不这么美丽了,入门款的 K80的价格都要高达3399美元,大约是40000左右人民币,而高端一点的Tesla P100的价格是5150美元,国内售价在50000元左右。
这一改动影响最大的就是广大的深度学习研究者和开发人员,而日本作为首先做出改动的国家,日媒WWN就评论道:“为什么将游戏用的GPU用在数据中心价格就要涨10倍?学生实验和缺乏实际应用的商业研究怎么继续做下去?这种改变实在太过分了!”并且日本公司Ubiquitous Entertainment的总裁兼CEO清水亮也撰文指责NVIDIA悄然修改终端用户使用协议,并称这一改动将会影响广大的深度学习研究者和开发人员。
不久前有人专门做了对比测试,在训练时间相同的情况下,Tesla最高级别的显卡在标准测试中的成绩为GeForce最高几倍显卡的的 1.25倍,整体差距不是很大,但是在价格方面,Tesla却是GeForce的5倍,所以综合来看,GeForce无疑是最具性价比的方案,好在此次限制的只是商业用户,研究所或者是高校不会受什么影响,但是商业用户可能就要难受了。
虽然数据中心的深度学习被禁止了,但是在禁令的最后一句却说区块链业务仍是允许的,也就是说如果在数据中心使用Geforce挖矿,NVIDIA还是允许的,看来老黄心里还是有点B数的,知道推动NVIDIA游戏卡部门Q3的营收增长的重要原因还是比特币的功劳,不过目前唯一的好消息是国内的用户条例还没有发生改变,也不排除老黄想对中国网开一面的可能。
看来对于许多热爱深度学习的小伙伴来说,这是一个不小的打击,可能在以后进行相关项目时的最低选择也得是一块采用GV100核心的TITAN V了。不过这一举措其实对个人用户没有什么影响,毕竟这个举措只是针对商用市场而言的,你自己用GeForce做深度学习也没有人会管你。
不管怎么说,虽然吃相有些难看,但是NVIDIA确实有权利这么做,毕竟在目前的12家AI芯片公司中,NVIDIA毫无疑问的拿下了第一的头牌,可能这就是传说中的滥用市场支配地位吧,如果老黄还想进一步统一市场,可能还会有后续的手段,对深度学习有兴趣的同学不妨多关注一下吧~
- JavaWeb三大组件之Filter学习详解
- JavaWeb三大组件之Servlet学习
- Android App瘦身实战
- [先行者周末课程] 日历组件的开发思路讲解&&日历组件在实际工作中的使用方式
- Batik渲染png图片异常的bug修复
- SpringMVC支持跨域的两种姿势
- SpringMVC返回图片的几种方式
- Redis实现分布式锁相关注意事项
- React Native调用Android相机图库
- SpringMVC之请求参数的获取方式
- 糖大夫--测量流程性能监控自动化方案设计
- ReactNative调用Android原生模块
- jvm调优的工具介绍
- Python时间序列预测案例研究:巴尔的摩年度用水量
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 玩转dnmp之自定义容器
- python那些实用且不为人知的技巧
- 实现接口的契约测试
- java泛型总结
- 彻底搞懂 etcd 系列文章(九):etcd compact 和 watch API
- lru算法和redis的lru
- ThreadLocal
- 前端开发:font属性与font-variant如何使用?
- spring-boot使用aop进行多数据源切换
- CRC校验原来这么简单
- centos7安装kubernetes教程
- spring-boot自定义starter
- 实操 | kafka如何手动异步提交offset
- 解惑 | 为什么我根据时间戳获得的offset为空呢?
- spring-boot使用aop进行日志记录