从Intel Skylake微架构探究现代CPU的“内在美”.doc

从Intel Skylake微架构探究现代CPU的“内在美”.doc

ID:27841139

大小:302.00 KB

页数:5页

时间:2018-12-06

从Intel Skylake微架构探究现代CPU的“内在美”.doc_第1页
从Intel Skylake微架构探究现代CPU的“内在美”.doc_第2页
从Intel Skylake微架构探究现代CPU的“内在美”.doc_第3页
从Intel Skylake微架构探究现代CPU的“内在美”.doc_第4页
从Intel Skylake微架构探究现代CPU的“内在美”.doc_第5页
资源描述:

《从Intel Skylake微架构探究现代CPU的“内在美”.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、从IntelSkylake微架构探究现代CPU的“内在美”  CPU,一个现代人天天在用的元件。举凡手机、笔电里皆有其存在。然而,每当有新的CPU发布,我们关注于表象但华丽的数字,像是Cache的大小、CPU的执行时脉以及采用几纳米制程等。这一次,让我们撇除以上这些外在事物,一探现代CPU的微架构这个“内在美”吧。  从2007年开始,Intel所采取的TIck-Tock策略,不断地提升个人电脑的计算速度。其中,TIck为纳米制程上的演进,每次新产品发布,便是华丽的数字以及技术的炫耀。然而,在Tock时,却没有多少人关注微架构的

2、改善。何不从现在起,一同认识Intel的Skylake微架构。  在先前介绍CPU时,便说明CPU可以分成3个部分,分别为“控制单元”、“算数逻辑运算单元”与“暂存器”。控制元件会依据程序的指令,控制所要执行的功能。算术逻辑运算单元则负责进行各类运算。暂存器则分成两类,分别储存运算的资料,以及要接续执行的指令。  现代的CPU也没有脱离这一类的规范。当将Skylake的元件分类,如下图,也区分成3大类。    控制元件是FrontEnd,算术逻辑运算单元是OOO(OutOfOrder)ExecuTIonEngine,快取内存则有

3、储存资料的L1DCache、接续执行指令的L1ICache以及共用的L2Cache。那么,各个元件的有什么功能呢?就让我们看下去。  各元件功能为何?  首先,就从名字很有趣的OOOExecuTIonEngine开始介绍。OOO(OutOfOrder)是指在这一个运算单元里面,指令的运行顺序不会按照顺序,尽可能地让指令可以偷跑,让CPU处于满载状态。为了可以更明确的知道OOO的优点,就从简单的小数计算例子来看吧。  在inorder的CPU中,每一次皆只能执行一个指令。假设CPU在浮点数计算需要5个CPU循环,而且一次只能执行一

4、个指令。进行这4个计算需要20个循环才能完成。那采用OOO技术的CPU呢?因为在OOO的CPU里面,它有多个计算核心,可以预先执行没有相依性的资料。      在这个情况下,4个计算仅需15个循环便得以完成,大幅的提升效能。那么在Skylake内部,OOOExecutionengine究竟长什么样子呢?它一共有8个执行小单元、4个资料存取单元,以及4个计算单元。  其中,每一个执行单元,皆有其可执行的指令,详细的功能图置于最后。  假的资料相依性,断开链接的方法    在前个例子中,可以发现第4个指令其实和第2个指令的x不相干。

5、第4个x实际上是运算新的资料。然而,在前一个例子里,他却需要等待第4个指令结束时,如果,可以将变数改名,将可以获得更进一步的平行。  因此,在FrontEnd里面,有Renamer此一元件,负责将假的相依性剔除,以此获得更多效能改善。然而,在Skylake内部,实际上只有2个浮点数计算单元。因此,这4个指令总共需要12个循环才能结束。和最一开始的20个循环相比,执行时间大幅的减少。    或许会有人说,这一类的功能一般的编译器就得以完成了,何必需要新增这一类的硬件增添麻烦呢?原因在于,目前的编译器为了让编译完成的程序,得以在多种

6、CPU上执行,因此,他只会用到基本的暂存器,然而,在现代的IntelCPU中,有更多的暂存器可以使用,为了避免对软件进行过多的更动,最后选择于硬件端完成这一类的工作。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。