衡量计算机的指标(纯小白视角,帮助你理解如何去以较为专业的角度衡量计算机)

我是小康小白,一个平平无奇的Java小白。热爱有趣的文字,生活和远方。
个人博客:https://blog.csdn.net/weixin_45791445
有问题欢迎QQ联系:1059320343 (记得备注CSDN)

在这里插入图片描述

大家好,我是小白。是滴,辣个男人—我又来了。

在这里插入图片描述

在这里插入图片描述

好的,废话不多说,进入正题。

导语

  • 本文主题:衡量计算机的指标

  • 要点:

      衡量计算机的三大主要指标:
      1. 计算机的性能
      		1. 如何理解计算机的性能
      		2. 影响性能的因素有哪些
      		3. 计算机性能评价原则
      2. 计算机的价格
      3. 计算机的功耗
      4. 计算机性能评价标准
    
  • 知识点补充:
    正文内容中可能有一些比较难懂的概念,小白都在知识点补充中进行了补充。如果读者发现有的此词语或者句子是蓝色,那么点击就能跳转到相应的知识点补充。

正文

1. 计算机的性能:

  • 性能是计算机的首要指标。
    • 性能的最本质定义:“完成一个任务所需要的时间”。
    • 完成一个任务的时间
      = 完成任务的指令数 x 完后每条指令所需要的拍数 x 每排所需要的时间
    • 每部分的影响因素:
      完成任务的指令数 : 算法,编辑器,指令的功能
      完成每条指令需要的拍数 :编辑器,指令功能,微结构设计相关
      每拍需要的时间(时钟周期) : 结构,电路设计,工艺等因素
    • 完成一个任务的指令数:
      1. 首先取决于算法。
        例如:冒泡排序复杂度为 (NN),快速排序复杂度为 (Nlog2N),如果N=1024,则两者执行的指令数差100倍。

      2. 其次是编辑器。
        在同一台计算器上运行同一个应用程序,用不同的编辑器或不同的编辑选项,运行时间可能会有几倍的差距。

      3. 指令系统的设计对完成一个任务的指令数影响也很大。
        体系结构之前有一个常用的指标MIPS,就是每秒执行多少百万条指令。
        但当两台计算机的指令系统不同时,这个指标就不能用来衡量计算机的性能了。
        因为不用操作系统的一条指令的复杂度是不同的,也就是说每条指令能够做的事是不同的,那么一台一条指令可以完成一个1024点的FFT的计算机和一台一个指令只能完成一次加法的计算机比较MIPS是没什么意义的。

        后面还有一个性能指标MFLOPS,即每秒做多少百万次浮点运算,也有同样的问题。如果数据供不上,运算能力再强也是没有用的。

  • 每条指令所需要的时间:
    • 每条指令的平均执行周期(CPI)
      CPI就是一个程序执行所需要的总的时钟周期数 / 它执行的总指令数
      处理器的微结构设计对IPC的影响很大。
      例如:使用单发射还是多发射结构,合作转移猜测策略,什么样的存储层次设计都会直接影响IPC。
    • 每个时钟周期平均执行的指令数(IPC)
      IPC与CPI的计算相反
    • 主频宏观上取决于微结构,微观上取决于工艺和电路设计。
  • 算术平均值
    算术平均值的权重与特定程序在特定机器上的执行时间成正比,所 以权重不仅与该程序的执行频度有关,也与运行该程序的机器特性 和输入数据相关。可能导致测试者把自己机器上运行最快的程序的 输入量增到最大,以提高计算该程序平均值时的权重,干扰了真实结果。
  • 几何平均值
    小于算术平均值、与参考机无关、强调性能平衡。
    可能导致硬件和软件设计者集中精力提高最易提高速度的软件的性 能,而不是提高速度最慢的软件的性能。

2.计算机的价格

性能价格比中的价格因素

  • 成本和性能价格比的关系比较复杂
    • 超级计算机:不计成本,只追求性能
    • 嵌入式应用:为降低功耗和成本,可以牺牲一部分性能
    • 介于两者之间,比如PC机,工作站,服务器等:追求性能价格比的 最优设计
    • R&D的成本 4%-12% 15%-20%
  • 影响成本的因素
    • Learning Curve:生产成本降低
    • V lume:加速学习过程、降低一次性成本
    • C mm dities :竞争、量的增加
    • 芯片的成本:
      • 最终成品率 晶片的成本 测试成本 封装成本 芯片成本 每片晶圆的晶片数 晶片成品率 晶圆的成本
      • 晶片的成本:晶片面积 晶圆的直径 晶片的面积 晶圆的直径 每个晶圆的晶片数 单位面积内的缺陷数目 晶片面积 晶片成品率 晶圆的成品率
      • 封装成本跟功耗、引脚数目、材料相关
        90nm工艺下每个12英寸晶圆的成本在3000-6000美元之间
        a是衡量工艺复杂程度的参数 ,在目前工艺下约为4
        单位面积的缺陷数目与工艺相关,在目前的工艺下约为:0.4-0.8/ 平方厘米
      • 例子:
        龙芯2F的硅片成本(例子)
        龙芯2F面积为43平方毫米
        晶片成品率 = (1+b晶片面积/a) –a =78%
        A为衡量复杂度的参数,设为4 B为单位面积缺陷数,设为0.6
        每个12寸晶圆的晶片数 = (晶圆的面积/晶片的面积)- (晶圆的周长/(2
        晶片面积) 1/2) =1592
        好的晶片数大约为1242个
        设90nm的12寸晶元成本为3000美元
        每个2F的晶元成本为2.4美元
    • 如何控制集成电路成本
      生产流程决定晶圆的成本、成品率以及单位面积的残次品数 目,设计者唯一能够控制的是晶片的面积。(晶片成本增长 的速度和晶片面积增长速度的4次方成正比关系)
      通过晶片所包含的功能和I/ 管脚数目来控制晶片的大小
      通过“冗余”设计提高成品率,如片内RAM的冗余设计
      控制封装、测试的成本
      对于低产量(少于100万)的产品,掩模成本也是不可忽视的。 采用可配置逻辑或选取一些门阵列来降低掩模成本。
    • 总的来说,对同一款产品,成本曲线是不断下降的。

3. 计算机的功耗

  • 芯片功耗是计算机功耗的重要组成部分。芯片功耗主要由晶体管的功耗组成。

在这里插入图片描述

  • 反相器:
    • 组成:PMOS管和NMOS管
    • 功耗:
      1. 动态功耗:
        开关功耗(翻转功耗):
        开关功耗主要是电容的充放电。
        在这里插入图片描述
        短路功耗:
        就是P管和N管煅炉是产生的功耗
        在这里插入图片描述

      2. 静态功耗:
        漏电功耗 :
        MOS管不能严格关闭时发生漏电产生的功耗。
        在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 如何优化芯片功耗
    • 动态功耗优化:升级工艺,降低芯片工作的频率。
    • 静态功耗优化:选择低功耗工艺降低芯片的静态功耗。

4.计算机性能评价原则

  • 总的来讲:公平,公正,公开
    • 拿程序来测,而不是看个别技术指标(如主频)
    • 使用一系列的基准程序测试
    • 不同计算机侧重点不一样,需要不同测试程序
      • 个人PC:单任务关注响应时间
      • 计算中心:多任务关注吞吐率
    • 测试程序要有代表性,要足够大,而不是拿个别程序测
      SPEC CPU
    • 测试报告要足够详细,要公开,要可以检查

5. 知识点补充:

完成每条指令所需要的拍数:

单片机时间单位编辑(来自于百度百科)
在MCS-51中时钟周期也称振荡周期,振荡周期也称为晶振周期,振荡周期是单片机的基本时间单位。8051把一个振荡周期定义为一个节拍(用P表示),两个节拍为一个状态周期。
振荡器脉冲信号经过时钟电路二分频之后产生的单片机时钟信号的周期(用S表示)称为状态周期。故一个状态周期S包含2个节拍,前一时钟周期称为P1节拍,后一时钟周期称为P2节拍。
若时钟晶振的振荡频率为fosc,则振荡周期Tosc=(1/fosc)。
如:晶振频率为12MHZ,则振荡周期Tosc=(1/12us)。

小白对于上文的理解是:
时钟周期指的是一次完整的时钟状态的变换(这就是一个振荡周期),在一个振荡周期中完成了一条指令。但到了多周期处理器中,使用的分频时钟,以书上的为例,每一个振荡周期对应的指令的一个阶段,在五个振荡周期完成了一条指令,这五个振荡周期合起来叫就是状态周期。而一个振荡周期对应的就是一拍。

单周期处理器
一个周期完成一条指令。(这里的一个周期既指一个状态周期,也指一个振荡周期,也就是上文提到的一拍)。

多周期处理器
将指令分为五个阶段。并使用分频时钟来控制这五个阶段,每一个振荡周期控制一个阶段,也就是一拍。这样的话完成一条指令就需要5拍,提高了处理器的频率。(这里的一个周期指的是一个振荡周期,一个振荡周期对应着一拍,这和单周期处理器相同,但由于多周期处理器使用的是分频时钟,所以一个状态周期就是几个振荡周期的总称)。

体会:

	学习相关内容时,不能对一些知识点太过纠结。小白当时学习时,对功耗的中MOS管概念反反复复的深究
,后面发现在书的后面就有相关知识点。网上的信息太过零散,而且难以判断真假,花费的时间成本较高。	

踩坑:

  1. 上文有一处通过MIPS,计算机每秒能够执行多少百万条指令。点击可以跳转到上文相关位置
    这里需要注意是这样比较的前提是同一指令系统。
  2. 还有计算功耗的时候,应当注意题目动态功耗和静态功耗的相关提示点。

留言:

	对于计算机体系结构基础的初学者来讲,本文更有类似于帮助一个大致的衡量计算机的指标的框架。
	但其中的每一部分都涉及到了很多的知识点,限于本文目标,小白对每个相关点的介绍并不是灰常仔细。
	更细致的内容还需要读者去进一步深入学习相关知识点来填补自己框架中的知识点。
	加油吧!朋友们!

在这里插入图片描述

兄弟们,小白编写不易。希望各位兄弟们,看在小白七夕还在这里写博客的分上,点赞评论收藏加关注。小白在此谢谢各位老爷们,也祝福各位老爷学习感情生活顺利。
在这里插入图片描述
对于白嫖的兄弟们,
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_45791445/article/details/108216870