第一章(下)——计算机的性能指标

  🌈个人主页:小新_-

🎈个人座右铭:“成功者不是从不失败的人,而是从不放弃的人!”🎈

🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝

🏆所属专栏: 计算机组成原理   欢迎订阅,持续更新中~~~

                      

                               ✨让小新带着你快乐的学习吧~✨

目录

一、性能指标相关概念

(一)作用

(二)与软硬件关系

(三)性能指标

二、基本性能指标

(一)机器字长

(二)主存容量

(三)吞吐量

(四)响应时间

三、与运算相关的性能指标

(一)CPU时钟频率和时钟周期

(二)CPI

(三)CPU执行时间

(四)IPC 

(五)MIPS   

(六)MFLOPS

四、使用基准程序进行性能评估


一、性能指标相关概念

(一)作用

  1. 计算机系统的性能指标是用来衡量计算机系统在各种操作和任务的工作效率、执行速度以及处理能力的标准
  2. 计算机系统的性能指标可以帮助人们评估计算机系统的整体表现,从而更好的了解系统在不同方面的优势和限制

(二)与软硬件关系

综上所述,计算机系统的性能指标涵盖了软件和硬件俩个层面,他们之间密切相关。优化硬件可以提供更加强大的计算和传输能力,而优化软件可以更有效的利用这些硬件资源,从而实现更好的系统性能。正确的硬件选择能为软件提供更好的执行环境,反之亦然。

(三)性能指标

二、基本性能指标

(一)机器字长

1、机器字长是指CPU一次能够处理的二进制数据的位数,也就是二进制比特数

  • 机器字长与CPU内部用于整数运算的ALU的位数以及通用寄存器的宽度相等

2、机器字长对计算机性能的主要影响如下:

  • 字节越长,数的表示范围就越大、精度越高
  • 字节越长,计算精度也越高
  • 字节还会影响计算速度

3、随着硬件技术的发展,计算机的字长已经从早期的8位逐渐增加到16位,32位、64位甚至更高

(二)主存容量

1、主存容量是指主存储器(内存)能够存储的最大信息量。

  • 假设主存包含M个存储单元,每个存储单元可存储N个二进制位,可以通过以下方式计算主存容量:

2、增加主存容量可以减少程序运行时对外存的访问,由于访问内存的速度远远大于访问外存速度,因此可以提高程序的执行效率,进而提高计算机性能。

(三)吞吐量

1、 吞吐量是指计算机系统在单位时间内能够处理的信息量
2、影响吞吐量的主要因素如下:

  •  CPU的处理能力。
  • 内存(主存)的访问速度。
  • 外存(辅存,例如硬盘)的访问速度。

(四)响应时间

响应时间是指从向计算机系统提交作业开始,到系统完成作业为止所需要的时间

三、与运算相关的性能指标

(一)CPU时钟频率和时钟周期

CPU时钟信号是一个基本定时信号,它是一种固定频率的脉冲信号,用于驱动计算机内部各组件协调工作。

  •  这种脉冲信号的频率被称为CPU时钟频率(Clock Rate),基本单位为赫兹(Hz)。
  •  CPU时钟周期(Clock Cycle或ClockTick,也可简称为clock或tick)是CPU时钟频率的倒数,基本单位为秒(s)。

(二)CPI

CPI(Cycles Per Instruction)的意思是执行一条指令所需要的时钟周期数量
由于不同指令的功能不同,即使功能相同的指令还可能有不同的寻址方式,因此每条指令执行所需的时钟周期数量也可能不同
□针对一条指令、一类指令、一个程序,它们各自CPI的含义如下:

  • 一条指令的CPI:该指令执行所需要的时钟周期数量。
  • 一类指令(例如算术运算类指令)的CPI:构成该类指令的所有指令执行所需要时钟周期数量的平均值。
  • 一个程序的CPI:构成该程序的所有指令执行所需要时钟周期数量的平均值

CPI=程序执行所需时钟周期/程序所包含的指令数量

如果知道某个程序中共有n类不同类型的指令每类指令的CPI(用CPIi表示)、每类指令地数量在程序所包含的指令数量中所占的比列(用Pi表示),则该程序的CPI可用以下公式计算:

【例1】某个程序包含A、B、C和D共4类指令,它们各自在该程序中所占比例依次为60%、18%、12%、10%,A类指令的CPI为1,B类指令的CPI为2,C类指令的CPI为4,D类指令的CPI为8,则该程序的CPI是多少?

(三)CPU执行时间

CPU执行时间是指真正用于用户程序的执行时间,而不包括为执行用户程序而花费在操作系统、访问主存(内存)、访问辅存(外存)、访问外部设备上的时间。

【例2】机器M1与M2是基于相同指令集体系结构ISA设计的两台不同的计算机。M1的时钟周期为2ns,程序P在M1上运行时的CPI为3;M2的时钟周期为4ns,程序P在M2上运行时的CPI为2。对于程序P而言,M1与M2的运行速度关系是?

【例3】假设某计算机有A、B、C共3类指令,A类指令的CPI为1,B类指令的CPI为2,C类指令的CPI为3。现有两种不同的编译器将同一高级语言的语句编译成S1和S2两种不同类型的代码序列。S1包含A、B、C这3类指令的数量分别为2、1、2;S2包含A、B、C这3类指令的数量分别为4、1、1。S1与S2的运算速度关系是?

根据本例可以看出:仅仅通过计算机编译后目标代码中包含的指令数量来评估计算机性能是不准确的。在本例中,尽管S2包含的指令数量(4+1+1=6)比S1(2+1+2=5)多,但是由于S2中CPI小的指令(即CPI为1的A类指令)所占比例(4/6),比 S1 中CPI小的指令(即CPI为1的A类指令)所占比例(2/5)高,因此指令数量更多的 S2 实际上比指令数量较少的 S1 执行速度更快。

(四)IPC 

IPC (Instructions Per Cycle)的意思是每个时钟周期能够执行的指令数量

IPC是CPI的倒数,它与CPU架构、指令集、指令流水线技术等密切相关。

由于指令流水线技术以及多核技术的发展,目前IPC的值已经可以大于1

(五)MIPS   

MIPS (Million Instructions Per Second)的意思是每秒执行多少百万条指令

用MIPS对不同的机器进行性能比较有时是不准确的,主要原因如下。

  • 不同机器的指令集不同,并且指令的功能也不同,在某种机器上的某一条指令的功能,可能在另一种机器上需要用多条指令来实现。
  • 不同机器的CPI和时钟周期也不同,因而同一条指令在不同机器上所用的时间也不同

【例4】在某个计算机上运行某个程序,该程序包含A、B、C和D共4类指令,它们各自在该程序中所占比例依次为60%、18%、12%、10%◇A类指令的CPI为1◇B类指令的CPI为2,C类指令的CPI为4,D类指令的CPI为8,若CPU的主频为400MHz,则该机的MIPS是多少?

(六)MFLOPS

MFLOPS (Million Floating-Point Operations Per Second)的意思是每秒执行多少百万次浮点运算。
MFLOPS=(浮点运算次数÷测试程序的执行时间)÷10^6

相较于MFLOPS,衡量每秒执行浮点运算的次数还有以下更大的单位

  • GFLOPS(GigaFLOPS)的意思是每秒执行多少十亿次浮点运算。GFLOPS=10^9·FLOPS
  • TFLOPS(TeraFLOPS)的意思是每秒执行多少万亿次浮点运算。TFLOPS=10^12.FLOPS
  • PFLOPS(PetaFLOPS)的意思是每秒执行多少千万亿次浮点运算。PFLOPS=10^15.FLOPS
  • EFLOPS(ExaFLOPS)的意思是每秒执行多少百亿亿次浮点运算。EFLOPS=10^18.FLOPS
  •  ZFLOPS (ZettaFLOPS)的意思是每秒执行多少十万亿亿次浮点运算。ZFLOPS=10^21
  • ·FLOPS

MFLOPS不能全面反映计算机系统的性能。MFLOPS仅反映浮点运算速度,其值与所使用的测试程序相关,不同测试程序中包含的浮点运算量不同,测试得到的结果也不相同。

四、使用基准程序进行性能评估

基准程序(Benchmark)是一组特定的程序,专门用于评测计算机的性能

  •  这些程序能够有效地模拟计算机在处理实际任务时的表现。
  • 在不同计算机上运行同样的基准程序,通过比较各计算机运行基准程序的时间,从而评测它们各自的性能。

不同基准程序的评测重点不同,例如CPU性能、图形性能、存储性能、浮点数计算性能、并行计算性能等

目前国际上流行的基准程序主要有SPEC、Linpack、Dhrystone、Whetstone、NPB等。 

 最后,感谢大家的观看!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3225352.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

vue实现预览编辑ppt、word、pdf、excel、等功能的解决方案(内网-前端)

在Vue中实现预览和编辑PPT、Word、PDF、Excel等文件的功能,尤其是在内网环境下且主要侧重于前端,我们需要明确的是,直接在前端编辑这些格式的文件(特别是PPT和Word)是非常复杂且通常不推荐的,因为这些格式涉…

智能汽车网络安全笔记

汽车五大域 动力底盘、车身控制、智能座舱、智能网联和高级辅助驾驶五大域 国外汽车安全法规标准 汽车网络安全管理体系(CSMS) CSMS指的是管理汽车的网络威胁和风险,并保护车辆免受网络攻击的组织过程和管理系统 安全验证和安全测试 8…

极狐GitLab亮相世界人工智能大会,开启开源大模型赋能软件研发新时代

GitLab 是一个全球知名的一体化 DevOps 平台,很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLab :https://gitlab.cn/install?channelcontent&utm_sourcecsdn 是 GitLab 在中国的发行版,专门为中国程序员服务。可以一键式部署…

1.电阻(常见元器件及电路基础知识)

一.电阻器 1.电阻值与精度 差不多这样一个大小的本子,一般入门建议买0603的电容和电阻本,然后常用的值就单独拎出来,放元器件盒子 总体上来说这些电阻阻值都是大差不差的,精度也无非 更小,1%,5%&#xff0…

LabVIEW机器视觉技术在产品质量检测中有哪些应用实例

LabVIEW的机器视觉技术在产品质量检测中有广泛的应用,通过图像采集、处理和分析,实现对产品缺陷的自动检测、尺寸测量和定位校准,提高生产效率和产品质量。 1. 电子元器件质量检测 在电子制造业中,电子元器件的质量检测是确保产品…

Leedcode刷题——7 滑动窗口 双指针

注&#xff1a;以下代码均为c 1. 两数之和2&#xff08;输入有序数组&#xff09; // 法1&#xff1a;暴力 vector<int> twoSum1(vector<int>& numbers, int target) {vector<int> ans(2);int n numbers.size();for(int i 0; i < n-1; i){if(i ! 0…

【C++报错已解决】Invalid Conversion from ‘const char*’ to ‘char*’

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 文章目录 引言 ❓ 一、问题描述 &#x1f469;‍&#x1f52c;1.1 报错示例 &#x1f3c6;1.2 报错分析 &#x1f4da;1.3 解决…

英福康INFICON FabGuard传感器集成与分析系统PPT

英福康INFICON FabGuard传感器集成与分析系统PPT

移动互联安全

什么是移动互联 从狭义的角度来说&#xff0c;移动互联网是一个以宽带IP为技术核心&#xff0c;可同时提供语音、传真、图像、多媒体等高品质电信服务的新一代开放的电信基础网络。 从广义的角度来说&#xff0c;移动互联网是指将互联网提供的技术、平台、应用以及商业模式&…

045基于SSM+Jsp的固定资产管理系统

开发语言&#xff1a;Java框架&#xff1a;ssm技术&#xff1a;JSPJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包…

Claude artifacts的平替:deepseek和豆包Marscode的web预览

Claude Artifacts 是由 Anthropic 开发的先进 AI 模型 Claude 3 生成的输出。这些 Artifacts 可以是文本、图像、数据可视化&#xff0c;甚至是更复杂的输出&#xff0c;如交互式内容和自动化报告。此外&#xff0c;Artifacts 还可以是预构建的资源或模板&#xff0c;旨在简化各…

深度学习组件优化器简介--AI(七)

深度学习网络组件介绍 网络组件优化器优化器--SGD优化器--Adam 网络组件 前文介绍的组件如下&#xff1a; 优化器 释义&#xff1a; 损失函数计算出预测值与真实值之间的差距时&#xff0c;有优化器根据一定的策略去调整原有模型的权重&#xff0c;这个调整的策略可以理解成…

安装python2

参考&#xff1a; https://www.cnblogs.com/linjiangplus/p/13948593.html https://www.python.org/downloads/release/python-2718/

【系统架构设计师】九、软件工程(面向对象方法|逆向工程)

目录 六、面向对象方法 6.1 基本概念 6.2 面向对象的分析 6.2.1 用例关系 6.2.2 类之间的关系 6.3 面向对象的设计 6.4 面向对象设计原则与设计模式 6.5 面向对象软件的测试 七、逆向工程 历年真题练习 六、面向对象方法 面向对象的分析方法 (Object-Oriented Analys…

Blackbox AI : 全新的人工智能编码助手 您的高效AI开发全能助手

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 引入 提起AI 智能编码助手&#xff0c;相信到了如今大家都不陌生。其对我们开发的代码时的效率有显著的提升&#xff0c;可以说…

BouncyCastleProvider 对 X.509 证书的生成

文章目录 前言BouncyCastleProvider 对 X.509 证书的生成1. demo 前言 如果您觉得有用的话&#xff0c;记得给博主点个赞&#xff0c;评论&#xff0c;收藏一键三连啊&#xff0c;写作不易啊^ _ ^。   而且听说点赞的人每天的运气都不会太差&#xff0c;实在白嫖的话&#xf…

基于Java中的SSM框架实现水稻朔源信息系统项目【项目源码】

基于Java中的SSM框架实现水稻朔源信息系统演示 SSM框架 SSM框架是基于Spring、SpringMVC以及Mybatis实现的针对JAVA WEB端应用的开发框架&#xff0c;通过SSM框架结构可以实现以上三种框架的优点集合&#xff0c;从而实现更加高效便捷的系统开发和呈现。该框架结构通过Spring框…

路径规划 | 基于蚁群算法的三维无人机航迹规划(Matlab)

目录 效果一览基本介绍程序设计参考文献 效果一览 基本介绍 基于蚁群算法的三维无人机航迹规划&#xff08;Matlab&#xff09;。 蚁群算法&#xff08;Ant Colony Optimization&#xff0c;ACO&#xff09;是一种模拟蚂蚁觅食行为的启发式算法。该算法通过模拟蚂蚁在寻找食物时…

面向对象特征

面向对象三大特征&#xff1a;封装、继承、多态。 方法 假设有两个方法&#xff0c;一个方法的接收者&#xff0c;是指针类型&#xff0c;一个方法的接收者是值类型&#xff0c; 那么&#xff1a; 对于值传递的变量和指针类型的变量&#xff0c;这两个方法的区别 如果这两个…

文本引导I2I迈向统一!北大王选所提出FCDiffusion:端到端适用于各种图像转换任务

文章链接&#xff1a;https://arxiv.org/pdf/2407.03006 github地址&#xff1a;https://github.com/XiangGao1102/FCDiffusion 最近&#xff0c;大规模的文本到图像(T2I)扩散模型在图像到图像(I2I)转换中展现出强大的能力&#xff0c;允许通过用户提供的文本提示进行开放域的图…