从思路上说,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. 用java语言将数据库中的数据表转换为xml文件的通用程序(细化)

    转自:https://www.cnblogs.com/wudage/p/7650685.html 总是在网络上copy别人的源代码,今天我也贴出自己今天写的源码,相信这个程序会对大家在平时的工作中需要 ...

  2. Koa2 和 Express 中间件对比

    koa2 中间件 koa2的中间件是通过 async await 实现的,中间件执行顺序是"洋葱圈"模型. 中间件之间通过next函数联系,当一个中间件调用 next() 后,会将 ...

  3. Hive Lateral View

    一.简介 1.Lateral View 用于和UDTF函数[explode,split]结合来使用. 2.首先通过UDTF函数将数据拆分成多行,再将多行结果组合成一个支持别名的虚拟表. 3.主要解决在 ...

  4. PHP Lumen Laravel 解决validate方法自定义message无效的问题

    /** * 由于 \Laravel\Lumen\Routing\ProvidesConvenienceMethods::validate 在验证不通过时, * 抛出 \Illuminate\Valid ...

  5. SpringBoot整合定时任务和异步任务处理

    SpringBoot定时任务schedule讲解 简介:讲解什么是定时任务和常见定时任务区别 1.常见定时任务 Java自带的java.util.Timer类 timer:配置比较麻烦,时间延后问题, ...

  6. 【Spring Boot】Spring Boot之自定义配置参数绑定到Java Bean

    一.@Value方式 1.我的配置文件:application-dev.yml # 自定义项目配置 startproject: pro1: pro2: pro3: pro4: lists: - ' - ...

  7. Apache:编译和安装

    1.在Fedora / CentOS / Red Hat Enterprise Linux上安装 sudo yum install httpd sudo systemctl enable httpd ...

  8. node基础学习——path的处理与路径转换

    处理与转换路径path normalize该方法将非标准路径字符串转换为标准路径字符串,在转换过程中执行以下操作: ①解析路径字符串中的’..’字符串与’.’字符串,返回解析后的标准路径. ②将多个斜 ...

  9. 使用Arduino开发板实现与MPU6050陀螺仪传感器连接的方法

    MPU6050陀螺仪传感器具有许多强大的功能,采用单芯片封装.它是由一个MEMS加速度计.一个MEMS陀螺仪和温度传感器组成.该模块在将模拟量转换为数字量时非常准确,因为每个通道都有一个16位的模数转 ...

  10. Java精通并发-通过openjdk源码分析ObjectMonitor底层实现

    在我们分析synchronized关键字底层信息时,其中谈到了Monitor对象,它是由C++来实现的,那,到底它长啥样呢?我们在编写同步代码时完全木有看到该对象的存在,所以这次打算真正来瞅一下它的真 ...