预言未来今后的多核CPU是什么?

随着莫尔定律的发展,ic设计者发现他们有许多硅,这些真实的资产来继续发展。david chisnall有些他们要去尝试的冒险想法。
预言未来
明确的预言未来的技术是非常容易的,这东西将会变得更小,更快,更便宜。这将会在几个世纪里实现并且不大可能发生改变——至少到我们开车跑起来不加油的时候。这会变得更有趣,并且我们预计未来一些东西会变得更复杂。
一些受雇于未来主义者的人仅仅是尽量预测一些东西,和提起语言正在发生的人们,不久他们就忽略了一些正确的受争议的预测。这些接近工作有个限度,但是它不是非常有趣。
在计算机世界里一项好的技术看的是在大型计算机和超级计算机工作组上会发生什么和预测同样的排序运算在个人电脑领域会产生怎样的效果。当我在参加一个ibm 工程师关于他公司的新虚拟化技术的讨论时,这条规则对于像我开车回家。他谈论到他的公司有项优势是其他人的工作领域所没有的:不论什么时候他们被难住,他 们会独自去大厅的超级计算机设备那里去询问如何解决同样的问题在几十年前。
这种方法在未来是很好的指导:这些东西通常降下来,从低到高的消费阶层。
另一种趋势是昂贵高端的变得越来越小。sgi的错误是没有预料到这是正确的。大概10年前,sgi是一个生产高端昂贵图形硬件的公司。他们一直保持这种定 位;他们最后的硬件允许一些gpu共享同一个存储器因此紧紧的结合在一起工作。不同的是现在nvidia生产gpu。很多来自nvidia的人从前是在 sgi工作的,但是他们的管理部门不想让他们生产消费级别的图形加速设备,直到它能够和高端昂贵的硬件相媲美时。这些人们继续在自己的公司中,和现在他们 拥有20%的重要市场份额大于与sgi竞争的整个市场份额。更糟的是sgi的前途,一些十年前想要生产高端昂贵硬件的人们现在到了仅仅能够担负起消费税的 地步。新使用高端昂贵设备的经常会改变,但是最终消费部门追上。
这个阶段的成就
双核cpu第一次被商用领域的ibm制造出来的power4在几年之前。这个主意简单是:一些大型机器有许多cpu,如果把他们放在一个cpu中可以减少他们实际上的体积。
那些天,intel和amd跳跃到双核潮流上,它们的竞争朝向多核甚至更高。这是一个必然的开发环境,相应的到摩尔定律——其中一个重大的观察错误会在计算 中。莫尔定律的成立是在cpu中晶体管的数量每增加一倍需要12-24个月。(这个精确的周期有时变化,取决于你什么时候问戈登•摩尔,但是它通常报出是 18个月。)如果你想花费更多钱,你可以增加更多的晶体管;举个例子,extreme edition的pentium系列把这些放在了更多缓存上。这个问题变成了他们增加了多于的晶体管。pentium 2,1997发售,用了7.5亿晶体管。itanium 2,2004年发售,用了592亿晶体管。它们大部分是缓存。cpu中加入缓存是好的,是一个增加晶体管的简单方法,缓存很简单,增加一些只是比芯片设计 的复制粘贴单元快了一些时间。不幸的是它开始减小,并且直接快速返回。一次全部工作进程转载入缓存,加入一些规则没用好处。
另一种手法是加入更多 核心,看最后的两个cpu的晶体管个数,我们看到2004年有必要生产80核心的pentium 2。在十年前,它是节约的,可执行的方案来生产5000个p6核心。不幸的是,电源设备仅仅可以提供一个芯片的,这意味着需要它单独的供电设备。没用提到 靠液氮来冷却它提供一个稳定的支持。这看起来尽管像存储器技术只会在这个它们可以保存部分提供的数据的时期,每个都有自己的总线,但是你不能最低限度的使 用1000根针脚——64000跟为64位内存总线。甚至设计他们封装在一个芯片上分布象征一个工程挑战;设计主板将要链接存储器通道和内存bank是个 问题,这会给大部分pcb设计者重复的恶梦。
从芯片上抛弃一些缓存工作变慢了点。从芯片上跑多一些核心变得更慢。终于,不管怎么样,聪明的解决方法将会出现的。
risc相对于cisc
其中一次大辩论在上世纪80年代和90年代中是否risc或者cisc指令接近的部分设计是否正确。这个主意在risc之后提供了个简单的指令用在平台的复杂计算上,很快人们需要复杂指令的cisc为了他们自己的需要。
具体化的cisc设计是vax,写vax汇编和写高级代码没用太大不同。在稍后的vax系统中,一些指令是微代码,这些意味着分解在简单些的真是指令后就是 在实际硬件上运行的。在vax后,digital发明了alpha,这芯片相对的出色。alpha有一个微指令集,但是运行的异常快。在几年里,它是可以 买到的最快的微处理器。甚至到现在,500强计算机中还有一些基于alpha的,一个不好的事实是这种芯片不会在现今的开发环境中超过五年。
在早些年,risc做到很好。编译器编写者喜欢这种芯片;它可以简单明白指令集,和它在构建risc指令集上比在cisc上更简单的了解复杂语言。
第一个问题在risc上的原理变得明显改善在操作部分。早期risc芯片没有除法指令;一些甚至不能有乘法指令。相反的,他们创建了一连串的超过早期的指 令,像变换操作。这不是一个软件开发问题;他们会仅复制一连串的指令以在机器结构内部完成除法,放一个宏指令在某些地方,用它像我们有一个除法指令时。这 样一些人找到一个高效的方法使用除法。下一代cpu的除法指令执行操作在几个循环中,直到那些循环外部的数据执行一系列的数据用起来像个代替品。这带到更 远的一步是intel最后一代核心的微代码结构。一些连续的简单的x86操作现在是一个简单的指令集合。
risc原理的一些部分继续存在。它一直 广泛的被关注像是一个好主意在指令集的正交上,举个例子,因为提供乘法运算的方法做一件事是在浪费硅晶体。不管怎样,简单指令集的方法被列出。甚至现在的 powerpc和sparc芯片是占有了占有市场像risc处理器一样没能意识到那些risc创造的周期。
simd和更多
后来一个相对普通的特点在高性能计算机领 域,pentium mmx是第一个x86芯片加入单指令多数据流(simd)指令集。这些指令精确列举他们的建议,提供一种方法执行同样的数据乘法操作。稍后传统(数量)指 令回去掉从另一处来的数据,simd对应的能去掉四个数据从四个数据中,执行同样的操作在四次输入上。这种运算用在许多图片和视频程序上。
simd 指令加入cpu是相对便宜的,提供一个好的回报在投入上。如果你的进程消耗你10%的cpu你要升级,你不太可能注意到这现在仅仅花费5%。有过你有个进 程占用了100%的cpu,你会很幸运的注意到,如果原来需要10分钟运行的程序现在需要2分钟。许多应用simd的好处是从simd到后面的类型——运 行用了大量cpu能源——因此允许它们运行的更快提供一个可察觉的改善。
超过simd,一些进程有合适的指令进行特定运算。via的c3,举个例 子,有些指令专门用于为aes加密运算加速。c7加入了一些为sha-1和sha-256哈希运算的加速。像图形,关于密码的计算典型的基于cpu。他们 像是更加重要在将来,像这样的数据发送到网络,更多的机器和移动设备上。这不是罕见的在偷窃时查看为一个便携电脑硬件所进行的aes加密运算;加快aes 运算在机器上用磁盘做更快。硬件加速密码破译不是新的。一些公司生产pci卡形式的密码加速器。
图形处理单元(gpu)
后来只有一些电脑有一个专用的密码加速卡,大部分有个图形处理器。每代gpu越来越相同。这些天,gpu用在很多高性能计算机应用中,因为gpu有庞大的计算能力。在效果上,gpu时个超标量流顶点处理器,它并行处理一些simd指令流在很快。
在设计上,gpu和pentium 4有许多相同的地方。他们都用了超长管线允许他们一次使用许多指令。他们执行起来很糟糕如果其中一个管线预报了错误。这是pentium 4的一个问题直到这个支流被发现,平均大约每7个指令。它对于gpu不是大问题,这样的设计时为了执行特殊运算,不会陷入更多的错误分歧中。
现在 的环境在pc世界中很像20年前。回到那时,电脑有几个处理器时不寻常的,一个时我们为什么要叫做的中央处理器(cpu)。cpu的一般目的时计算和协调 与其他cpu的活动。通常,工作站和高端昂贵pc有一个浮点处理器(fpu)进行浮点运算。始于80486,fpu同cpu在相同的领域消失了。另外的普 通加法运算时内存管理单元。这个单元控制物理和虚拟内存之间的转换;那些日子里,你很难找到cpu里没用mmu单元的。一个现代电脑有一个cpu和并行的 浮点运算器。它不需要很大的飞跃来想象intel最终要把一个或两个gpu核心加入cpu中。
在这点上,你或许想这是可能升级的范围,因此它值得 向后退一步看cpu的发展。2005年,苹果的便携式电脑首次销量上超过了台式电脑。这依然在工业上跟随。这个增长范围在移动gpu的销量上大大超过了在 桌面gpu上的销量,intel在cpu和gpu市场时最大的玩家。很少的人升级他们的gpu在便携式电脑上。
浮点处理器,内存控制单元和 顶点处理器已经准备加入现代的处理器中。数字信号处理单元(dsp)已经加入了一部分数量的处理器中,它们像是他们将要发现他们的方法不久在消费者的 cpu中。第一次用到附加的晶体管时加入了许多执行单元,制造深流水线和更宽的超标量结构,和更多的缓存。现在我们加入整个同种的处理单元。尽管只有一些 级别透过范围。这一步从单核到双核是巨大的改善;在我的电脑的一个cpu上分配75%的cpu资源是少有的,更多普通的将要分配50%,将要在停止共享和 其他程序或核心之间。
从双核到四核将会是一个非常小的改善,单仍有意义。当年升级到32核或64核,事情就变得有趣了。它经常是必须的写线程代码 在某些程度上并且使用起来不能有很多漏洞。这些应用一个异步信息很容易,接近于穿过,但是流行的桌面开发环境api没有设计围绕这个模式。在实际上,很少 的桌面软件用到这些。一些例如,视频编辑。举例子,能吃掉不少抛出的像你将来预料到的cpu资源。已经收缩的高端性能将会继续。那些日子里,一些人主意到 1ghz athlon和3ghz core 2 duo的区别在绝大多数时候。一些人需要最快的电脑可买到的已经相当小。需要中档速度机器的人的数量将要收缩。
移动计算和精确数据中心的继续增长,电的消耗变得更加重要。猜想一个32核cpu允许你关闭核心当你不使用它的时候。在移动领域,你大概最好需要2到3个核心。
不同类型核心的cpu
如果你只有一少部分核心在你的进程上,你就开始惊叹为什么它们存在。少数应用程序需要所有核心为了加快运行速度在专门的硬件上,因此我们用什么代替它?
我们开始看这个将要形成的趋势。例子包含了苹果的core视频;它将会运行在你的cpu上如果你需要,它有在cpu的顶点单元如果有,或者gpu需要更快。 openssl将会运行在密码加速卡上如果它存在,或者运行在cpu上如果它没有。存在于普通运算的抽象接口是一种功能使它更加容易在硬件上执行;只有一 些小的变化是必须使用一些功能的优势。我们看到opengl上的一些相同的东西;顶点变换和光线运算在图形硬件上必须有个新驱动要写,但是不能修改现行的 应用代码。最重要的,专用的硅制造的硬件的效率比一般用途的硬件效率高在未来的工作上,电能的消耗像是更少。
如果让硅进入太空,为什么没有让一个 cpu进入死亡?一个密码加速器呢?专用硬件在其它昂贵的逻辑计算上如何?当他们不用时,你可以关闭他们。当年需要时,他们将会占用一点能源允许同样的计 算在普通硬件上,第一步这里整合了fpu和simd单元。下一步将要像整合gpu那样在一起。超越这些,它好像关系到大多数专用硬件的优势。在一些实例 上,我们将会简单的看到扩展的基本指令集(像发生在浮点和simd指令的)提供运算一些在逻辑上的传统运算。终于,我们看起来像是那些引申的超过单指令。
我看起来有个主意是封装到fpga中像是十分动人的。这将允许许多灵活的运算,但是像一个有意义的能源消耗。


5G时代触手可及,5G消息应运而生
感应电机结构图_电磁感应电机小制作
从AI推销电话,到“AI语音+销售”的全场景进化
一文读懂机器人滚边技术及其市场应用
全流程信息化管理如何实现,看5G工业PDA一展身手
预言未来今后的多核CPU是什么?
光控电子开关电路的设计方案
3.3英寸大小的PALM手机搭载骁龙435处理器,已入网工信部
微软野心不是Windows手机,AR/VR才是它的目标
物联网在六个领域业务运营中的应用分析
兆易创新澄清:股权激励计划具有合理性及可操作性
以太网工业级双通道读写器读写头CK-FR102AN-E00开发手册之读写过程与操作流程
乐视资金链断裂,乐视发大招,骁龙820旗舰只要950元?资金紧张只好赔钱卖
松下斥巨资在中国扩充电池产能
起重机用减速机的工作原理及参数特点
夜间经济的繁荣为LED产业带来了新的发展机遇
Lantiq收购Metalink,拓展其WLAN 11n技术
使用RA2E1 MCU和FSP实现超低设计
国内及全球车市普遍下滑 BBA却都实现了逆势增长
Moku:Lab应用于激光器长时间稳频