从思路上说,GPU相当于火车,一个车头带几十节车厢,一下子把成千上万吨货全给你拉目的地;CPU相当于汽车,拉货旅游样样能干。因此,如果单纯比运力,一列火车比得过成百上千辆汽车;但如果几百人有几百个目的地,你再让几十节车厢跑几百趟,把他们一个个送达……这显然就不合适了。
GPGPU不过相当于铺设了更多铁路线,使得火车也可以开到过去只有汽车可以开到的地方而已。再怎么优化,火车也是不可能优化成汽车的:成本太高(每节车厢甚至每个座位都自带发动机驾驶室驾驶员,这得是多大的浪费)、效率太低(当只有一人时,其它海量座位/运力只能闲着)。
同样,汽车也没法代替火车:过去都是单座的,后来的MMX/3D NOW/SSE指令集把汽车升级成了8座——现在,如果只需要拉一两个人,就把多余的座位拆了、座位间距拉大;需要拉更多人,又要重新安装座位、缩短座位间距(CPU执行MMX指令集需要切换模式,这个切换比较耗时;切换后类似GPU,可以并行——可怜巴巴的8字节并行都麻烦到这个程度,像GPU那样的海量并行你敢想?)。
“个性化”和“借批量提高效率”是一对矛盾,不可能两者兼顾。为了方便大家理解,小编再说一个比喻,CPU的核心是大学生,4核就是4个大学生,GPU的核心是小学生,上千个就处理器就是上千个小学生他们一起参加一场考试,试卷是一百万道四则运算和四道高数。两个小时过后,大学生奔溃了,这一百万道四则运算太多了。再看小学生,全都懵了,四则运算都做完了,剩下的数学题里面怎么全是字母?
其实我们可以想一想:CPU之所以叫CPU不是因为好听,而是取决于它设计时所针对的工作类型,GPU也是一样的道理。应用的领域和工作性质的迥然不同就导致各自结构的巨大差异。如果有一天GPU也能干CPU的活甚至可以取代CPU的时候,那个时候他也不该叫GPU了 ......所以不存在GPU取代CPU一说。就像有人问为什么不可以把手机做大取代平板呢?答:因为变大的手机叫“通话平板”(搞笑一下)。GPU性能越来越强大,为何直到现在还是不能取代CPU?以上就是小编个人的看法,对此,您有什么不同的意见吗

GPU性能越来越强大,为何直到现在还是不能取代CPU?的更多相关文章

  1. AI模型运维——GPU性能监控NVML和DCGM

    最近一年负责运维的GPU主机越来越多,发现现有的监控项无法很好的了解GPU的性能和负载情况,研究了下官方文档,在此记录. 一.NVML和DCGM NVML:https://developer.nvid ...

  2. 主流手持设备GPU性能比较

    设备 GPU CPU 每秒像素填充率 每秒三角形生成 内存 iPhone4 PowerVR SGX 535 ARM Cortex-A8 800M     512M iPod touch 4 Power ...

  3. CPU VS GPU(性能调优 12.1)

    CPU VS GPU 关于绘图和动画有两种处理的方式:CPU(中央处理器)和GPU(图形处理器).在现代iOS设备中,都有可以运行不同软件的可编程芯片,但是由于历史原因,我们可以说CPU所做的工作都在 ...

  4. Chrome 的应用功能越来越强大

    Chrome 的应用功能越来越强大 升级到 版本 70.0.3538.77 最早的时候是看到 http 显示地址,现在可以在快捷应用中显示扩展了,还可以看到显示的站点. 现在越来越强大了.

  5. GPU和显卡是什么关系?GPU会取代CPU吗?

      一.GPU是什么?与显卡是什么关系?安装在什么地方?有单独的GPU板卡吗? GPU就是图像处理芯片,外表与CPU有点相似.显卡的芯片,AMD的一个技术,相当于电脑的处理器CPU,只不过它是显卡的大 ...

  6. Qunar机票技术部就有一个全年很关键的一个指标:搜索缓存命中率,当时已经做到了>99.7%。再往后,每提高0.1%,优化难度成指数级增长了。哪怕是千分之一,也直接影响用户体验,影响每天上万张机票的销售额。 在高并发场景下,提供了保证线程安全的对象、方法。比如经典的ConcurrentHashMap,它比起HashMap,有更小粒度的锁,并发读写性能更好。线程安全的StringBuilder取代S

    Qunar机票技术部就有一个全年很关键的一个指标:搜索缓存命中率,当时已经做到了>99.7%.再往后,每提高0.1%,优化难度成指数级增长了.哪怕是千分之一,也直接影响用户体验,影响每天上万张机 ...

  7. CPU与GPU性能的比较报告

    运行时间分析 不同的模型在cpu和gpu下的时间差异较大,一般来说gpu会比cpu快5-20倍.我们选用了最常用的inception v3的分类模型,输入图片尺寸为:3x299x299. GPU 在一 ...

  8. CPU和GPU性能对比

    计算20000次10000点的fft,分别使用CPU和GPU,得 the running time of cpu is : 2.3696s the running time of gpu is : 0 ...

  9. GPU性能:光栅化、图层混合、离屏渲染

    So, shouldRasterize will not affect the green/red you see using Instruments. In order to have everyt ...

随机推荐

  1. Excel内部编码查看与验证工具

    Excel 2007 以前版本 MS-XLS内部结构:BIFF格式 https://docs.microsoft.com/en-us/openspecs/office_file_formats/ms- ...

  2. ES读写索引内幕分析

    一.简介 ES中的索引都进行分片,每个分片都会保存多个副本.这些副本称为复制组,在添加或删除索引时必须同步副本.如果不这样,从不同的副本中读取的索引可能截然不同.保持分片副本同步并从中提供读取的过程被 ...

  3. JavaScript: 详解正则表达式之一

    正则表达式是一个精巧的利器,经常用来在字符串中查找和替换,JavaScript语言参照Perl,也提供了正则表达式相关模块,开发当中非常实用,在一些类库或是框架中,比如jQuery,就存在大量的正则表 ...

  4. 多线程之美6一CAS与自旋锁

    1.什么是CAS CAS 即 compare and swap 比较并交换, 涉及到三个参数,内存值V, 预期值A, 要更新为的值B, 拿着预期值A与内存值V比较,相等则符合预期,将内存值V更新为B, ...

  5. Django的Form另类实现SelectMultiple

    昨天花了一天才解决,遇到的问题如下: 在forms.py里有一个如下的字段: jira_issue = forms.CharField( required=False, label=u"Ji ...

  6. python3中用HTMLTestRunner.py报ImportError: No module named 'StringIO'的解决方法:

    全文转载至:http://www.cnblogs.com/testyao/p/5658200.html python3中用HTMLTestRunner.py报ImportError: No modul ...

  7. 微信小程序~上拉加载onReachBottom

    代码: //页面上拉触底事件的处理函数 onReachBottom(e) { console.log("底部")// 滚动到页面执行 该 方法 wx.showToast({ tit ...

  8. asp.net 访问局域网共享文件

    最近有个项目ASP.NET的项目,要读写一个局域网里的共享文件夹上的文件,记录如下: 1.访问共享文件 在这里我定义了一个方法,SaveFileExist(filesrc,filename),这个方法 ...

  9. GSM/GPRS模块 AT指令集C语言编程——基于有方M660+和MSP430单片机

    GSM/GPRS芯片是手机中负责收发短信.拨打电话以及访问GPRS网络的核心器件.有方M660+为深圳有方公司生产的一款超小封装的GSM/GPRS工业无线模块,可以提供高品质的语音.短信.数据业务等功 ...

  10. Sql语句中Like嵌套用法

    一般的Like用法: SELECT U_NAME FROM T_USER WHERE U_NAME LIKE '%A%' 但是,我此次like关键字后面的对应值是一个变量,需要用select语句来实现 ...