站在CPU角度 你才能发现这个世界有多慢

发布者:莫愁前路最新更新时间:2017-03-24 关键字:CPU 手机看文章 扫描二维码
随时随地手机看文章

  经常听到有人说磁盘很慢、网络很卡,这都是站在人类的感知维度去表述的,比如拷贝一个文件到硬盘需要几分钟到几十分钟,够我去吃个饭啦;而从网络下载一部电影,有时候需要几个小时,我都可以睡一觉了。下面就随网络通信小编一起来了解一下相关内容吧。

  最为我们熟知的关于计算机不同组件速度差异的图表,是下面这种金字塔形式:越往上速度越快,容量越小,而价格越高。

  这张图只是给了我们一个直观地感觉,并没有对各个速度和性能做出量化的说明和解释。而实际上,不同层级之间的差异要比这张图大的多。这篇文章就让你站在 CPU 的角度看这个世界,说说到底它们有多慢。

站在CPU角度 你才能发现这个世界有多慢

  希望你看完这篇文章能明白两件事情:磁盘和网络真的很慢,性能优化是个复杂的系统性的活。

  注:所有的数据都是来自网络。所有的数据会因为机器配置不同,或者硬件的更新而有出入,但是不影响我们直觉的感受。

数 据

  先来看看 CPU 的速度,就拿我的电脑来说,主频是 2.6G,也就是说每秒可以执行 2.6*10^9个指令,每个指令只需要 0.38ns(现在很多个人计算机的主频要比这个高,配置比较高的能达到 3.0G+)。我们把这个时间当做基本单位 1s,因为 1s 大概是人类能感知的最小时间单位。


站在CPU角度 你才能发现这个世界有多慢

  一级缓存读取时间为 0.5ns,换算成人类时间大约是 1.3s,大约一次或者两次心跳的时间。这里能看出缓存的重要性,因为它的速度可以赶上 CPU,程序本身的 locality 特性加上指令层级上的优化,cache 访问的命中率很高,这最终能极大提高效率。

  分支预测错误需要耗时 5ns,换算成人类时间大约是 13s,这个就有点久了,所以你会看到很多文章分析如何优化代码来降低分支预测的几率,比如这个得分非常高的 stackoverflow 问题。

  二级缓存时间就比较久了,大约在 7ns,换算成人类时间大约是 18.2s,可以看到的是如果一级缓存没有命中,然后去二级缓存读取数据,时间差了一个数量级。

  我们继续,互斥锁的加锁和解锁时间需要 25ns,换算成人类时间大约是 65s,首次达到了一分钟。并发编程中,我们经常听说锁是一个很耗时的东西,因为在微波炉里加热一个东西需要一分钟的话,你要在那傻傻地等蛮久了。

  然后就到了内存,每次内存寻址需要 100ns,换算成人类时间是 260s,也就是4分多钟,如果读一些不需要太多思考的文章,这么久能读完2-3千字(这个快阅读的时代,很少人在手机上能静心多这么字了)。看起来还不算坏,不多要从内存中读取一段数据,需要的时候很更多。到了内存之后,时间就变得一个量级,CPU 和内存之间的速度瓶颈被称为冯诺依曼瓶颈

  一次 CPU 上下文切换(系统调用)需要大约 1500ns,也就是 1.5us(这个数字参考了其他文章)。

  在 1Gbps 的网络上传输 2K 的数据需要 20us,换算成人类时间是 14.4小时,这么久都能把《星球大战》六部曲看完了!可以看到网络上非常少数据传输对于 CPU 来说,已经很漫长。而且这里的时间还是理论最大值,实际过程还要更慢一些。

  SSD 随机读取耗时为 150us,换算成人类时间大约是 4.5天。换句话说,SSD 读点数据,CPU 都能休假,报团参加周边游了。虽然我们知道 SSD 要比机械硬盘快很多,但是这个速度对于 CPU 来说也是像乌龟一样。I/O 设备 从硬盘开始速度开始变得漫长,这个时候我们就想起内存的好处了。尽量减少 IO 设备的读写,把最常用的数据放到内存中作为缓存是所有程序的通识。像 memcached 和 redis 这样的高速缓存系统近几年的异军突起,就是解决了这里的问题。

  从内存中读取 1MB 的连续数据,耗时大约为 250us,换算成人类时间是 7.5天,这次假期升级到国庆七天国外游了。

  同一个数据中心网络上跑一个来回需要 0.5ms,换算成人类时间大约是 15天,也就是半个月的时间。如果你的程序有段代码需要和数据中心的其他服务器交互,在这段时间里 CPU 都已经狂做了半个月的运算。减少不同服务组件的网络请求,是性能优化的一大课题。

  从 SSD 读取 1MB 的顺序数据,大约需要 1ms,换算成人类时间是 1个月。也就是说 SSD 读一个普通的文件,如果要等你做完,CPU 一个月时间就荒废了。尽管如此,SSD 已经很快啦,不信你看下面机械磁盘的表现。

  磁盘寻址时间为 10ms,换算成人类时间是 10个月,刚好够人类创造一个新的生命了。如果 CPU 需要让磁盘泡杯咖啡,在它眼里,磁盘去生了个孩子,回来告诉它你让我泡的咖啡好了。机械硬盘使用 RPM(Revolutions Per Minute/每分钟转速) 来评估磁盘的性能:RPM 越大,平均寻址时间更短,磁盘性能越好。寻址只是把磁头移动到正确的磁道上,然后才能读取指定扇区的内容。换句话说,寻址虽然很浪费时间,但其实它并没有办任何的正事(读取磁盘内容)。

  从磁盘读取 1MB 连续数据需要 20ms,换算成人类时间是 20个月。IO 设备是计算机系统的瓶颈,希望读到这里你能更深切地理解这句话!如果还不理解,不妨想想你在网上买的东西,快递送了将近两年,你的心情是怎么样的。

  而从世界上不同城市网络上走一个来回,平均需要 150ms(参考世界各地 ping 报文的时间CDN)。

  虚拟机重启一次大约要 4s 时间,换算成人类的时间是 3百多年。对于此,我想到了乔布斯要死命优化 Mac 系统开机启动时间。

  物理服务器重启一次需要 5min,换算成人类时间是 2万5千年,快赶上人类的文明史了。5 分钟人类都要等一会了,更别提 CPU 了,所以没事不要乱重启服务器啊,分分钟终结一个文明的节奏。

    以上是关于网络通信中-站在CPU角度 你才能发现这个世界有多慢的相关介绍,如果想要了解更多相关信息,请多多关注eeworld,eeworld电子工程将给大家提供更全、更详细、更新的资讯信息。

关键字:CPU 引用地址:站在CPU角度 你才能发现这个世界有多慢

上一篇:美高森美推出面向4G和5G移动网络的可扩展前传解决方案
下一篇:英特尔:下一代DNN到来时 未来FPGA能将败GPU

推荐阅读最新更新时间:2024-05-07 17:19

科学家使用弹跳水滴为CPU散热
来自杜克大学和英特尔的科学家们提出了一种保持电子产品高性能的新机制:用弹跳水滴填充内部空间。这听起来像是一个愚人节的笑话,但研究人员说,这样的系统可以通过有机地瞄准热点进行散热,来保持电子产品高性能全速运行。 科学家们在“应用物理学杂志”(Applied Physics Letters)上论文所述的技术,受到蝉类超疏水翅膀的启发,这种翅膀自然会排斥水分,当两只小水滴碰撞在蝉翼上时,它们连在一起形成一个更大的液滴。这种变化释放出足够的能量,将水从蝉翼表面上提起,吸收灰尘和污垢。这意味着蝉翼是自动清洁的,但工程师认为同样的原理也可以用来消除热量。 当然,没有人想要将水溅到敏感电路上,所以研究人员创建了一个密封的“蒸气室”,可以安装在电
[半导体设计/制造]
联发科X30 CPU性能解析:实力超越骁龙821
魅族PRO 7系列现已正式开卖,作为魅族的年度旗舰,它首次搭载了联发科Helio X30芯片,这是一颗10nm工艺制程的旗舰处理器,相信很多煤油关心联发科X30的性能究竟如何?下面就随嵌入式小编一起来了解一下相关内容吧。 此前魅族PRO 7不支持GeekBench跑分(GeekBench是一款知名的跑分软件,主要测试CPU的单核和多核性能),经过一次系统更新后,魅族PRO 7终于可以用GeekBench来测试了。 今天知名评测机构@爱否科技在微博上放出了魅族PRO 7 GeekBench的跑分详情,@爱否科技表示,魅族PRO 7和其它旗舰相比,其单核性能与骁龙835、麒麟960相比,相差100多分,拉不开差距,和骁龙821处
[嵌入式]
Intel近三年CPU集体曝漏洞:技嘉首发新BIOS修复
   Intel 最近发布声明承认,自家近三年来的CPU处理器几乎全部存在多达11个安全漏洞,可被用来加载、执行任意代码,导致设备不稳定甚至崩溃,而且整个攻击过程操作系统、用户都是看不见的,几乎不可能防御!下面就随手机便携小编一起来了解一下相关内容吧。   具体来说,本次受影响的 Intel 处理器包括:   - 六代酷睿Skylake、七代酷睿Kaby Lake、八代酷睿Coffee Lake系列   - Xeon E3-1200 v5/v6系列   - Xeon Scalable系列   - Xeon W系列   - Atom C3000系列   - Apollo Lake Atom E3900系列   - Apollo
[手机便携]
STM32/CPU地址映射的概念
1总线的由来 很多人对总线和地址映射的概念都是一头雾水,但是我们如果知道为何需要总线和地址映射,他们是在什么背景下被衍化出来的,自然而然对此概念就清清楚楚了。 我们知道CPU都是通过总线访问外设,例如STM32使用AMBA规范的总线和外设进行交互,那么在总线的概念没有被提出来的时候,外设是怎样被访问的呢? 其实在最早期还没有总线概念的时候,CPU设计者会直接把CPU内核和各种接口控制器设计到一起,如果要访问一个硬件,直接在内核里面对各种接口控制器进行操作,从而操作相应的硬件。我们看下图。 后来设计者发现如果每添加一个外设都要修改CPU内核,这样不具有很好的扩展性,为了使得外设的改变(增加、删除、修改)不影响CPU内核架
[单片机]
STM32/<font color='red'>CPU</font>地址映射的概念
CES 2022:英特尔发布一颗5.5GHz的CPU
1月7日上午消息,CES 2022大会期间,英特尔正式发布了多款12代酷睿芯片,其中参数最猛的当属i9-12900KS,一款台式机CPU。它是继9900KS之后的又一款“KS”结尾的酷睿产品,最高加速频率可以达到5.5GHz,一个非常惊人的数字。   5.5GHz相比于i9-12900K主频提高了300MHz,它可以在不大幅加电压的情况下达到更高频率,功耗也能控制在一个合理的水平。   但这颗芯片可能不会单独出售。英特尔执行副总裁格雷戈里·布莱恩特(Gregory Bryant)在演讲中提到,CPU将交付给“OEM客户”,也就是跟电脑整机一起出售。
[手机便携]
瑞萨科技发布与DrMOS相兼容的MOSFET
株式会社瑞萨科技(以下简称瑞萨)宣布推出R2J20653ANP,一款适用于笔记本电脑用CPU及存储器等器件中稳压器(VR)的Integrated Driver-MOSFET。它符合Integrated Driver-MOSFET (DrMOS)标准,并具有支持高达27V电压的高电压容限,具有业界最高、达到91%的高电源效率(当输入电压为20V时,输出电压为1.1V)。该产品已于2009年12月7日起投入量产。 Integrated Driver-MOSFET (DrMOS)是英特尔公司提出的半导体器件标准封装形式。*1在一个单独的封装中,集成了一个DrMOS、两种类型CPU电源所需的MOSFET等器件,以及驱动器IC
[电源管理]
瑞萨科技发布与DrMOS相兼容的MOSFET
加速国产x86高端CPU产业化生态环境建设上海兆芯在行动!
如今,国产CPU发展事关我国信息产业核心竞争力和可持续发展能力。我国全面部署实施 中国芯 战略已十余年,在部分领域具有完全自主核心技术,在各主要产品领域都积累了一批具有一定技术实力和产业化条件的骨干企业和科研院所,产业化取得积极进展。但是,也存在与国际主流产品整体性能差距较大,国内CPU研制企业规模普遍偏小,高端人才和领军人才缺乏,有利于形成产业生态体系的制度环境不健全,政策手段单一等问题。为此,要进一步聚焦重点、集中目标、加强顶层设计,提高自主研发水平。 2018年6月15日,由上海市集成电路行业协会和上海市集成电路产业基金管理有限公司共同主办的“聚焦高端芯片 形成自主可控的产业集群论坛”在上海浦东新区成功举办。来自集成电路
[半导体设计/制造]
加速国产x86高端<font color='red'>CPU</font>产业化生态环境建设上海兆芯在行动!
英蓓特在中国分销ARM RealView和Keil开发工具
ARM分销网络的扩展为中国基于ARM解决方案设计师提供获得先进的ARM工具的便捷途径 深圳市英蓓特信息技术有限公司(英蓓特)和ARM公司(伦敦证交所:ARM;纳斯达克:ARMHY)今天宣布:英蓓特被指定为ARM RealView及KeilTM嵌入式开发工具在中国的分销商。这一对RealView和Keil开发工具分销网络的扩展使得中国设计基于ARM产品的工程师能够更方便的获得先进的ARM工具,以实现高质量的系统开发和快速的产品上市时间。 作为嵌入式系统领域被最广泛选用的架构,ARM不但向工程师提供先进的CPU产品,还提供完整的工具,帮助他们在开发周期的早期就能够创建、验证、模型化并测试他们的SoC设计。英蓓特早前已经成为AR
[焦点新闻]
小广播
热门活动
换一批
更多
最新网络通信文章
更多精选电路图
换一换 更多 相关热搜器件
更多每日新闻
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved