CPU及并发

2.9G Hz,即每秒进行2.9G次运算(即29亿次)

alt
alt

几个命令

alt
alt
alt
  • us: 用户使用的cpu

  • sy: 系统(内核)使用的cpu

  • id: idle,即空闲cpu

  • wa: 等待I/O的cpu

  • st: 开虚拟机后会有的一个指标,即虚拟机的cpu使用率




一个进程拥有一整套虚拟地址空间,该进程的所有线程都共享该地址空间.

线程是CPU运算的最小单位.CPU不关注是哪个进程,只是轮换着线程来运行,不需要知道该线程属于哪个进程.


线程的五种状态:

只有运行中占用CPU资源,其他包括阻塞状态,都不占用CPU资源.

alt

使用线程池,可以优化线程创建/销毁带来的性能损耗(申请cpu计算资源需进入内核态)

alt

协程是用户自定义的线程,不需要进入内核态进入申请计算资源.(这里的用户就是指应用程序及编程语言了..)




CPU性能衡量参数


主频

主频又称时钟频率,指CPU内部晶振的频率,常用单位为MHz或GHz,它反映了CPU的基本工作节拍;

一般用 f 表示 (frequency)


时钟周期

时钟周期

时钟周期 = 主频的倒数


机器周期

机器周期 = m*t

一个机器周期包含若干个时钟周期


指令周期

指令周期 = m*t*n

执行一条指令所需要的时间,一般包含若干个机器周期


CPI

CPI = m*n;

每条指令的平均时钟周期个数

指令周期 = CPI×机器周期 = n(CPI=n)×m×时钟周期=nm/主频f

注意指令周期单位是s或者ns,CPI无量纲


MIPS(MillionInstructions Per Second)

MIPS = 每秒执行百万条指令数 = 1/(CPI×时钟周期)= 主频/CPI

MFLOPS 每秒百万浮点运算次数。

表示秒钟所能执行的指令条数,对于微型计算机, 可用CPU的主频和每条指令执行所需的时钟周期来衡量。


包含关系:指令周期通常用若干个机器周期来表示,在机器语言中,使用执行一条指令所需要的机器周期数来说明指令执行的速度。而机器周期又包含若干个时钟周期。时钟周期是最基本的操作单位。

注意:计算机的运算速度一般用每秒钟所能执行的指令条数来表示。由于不同类型的指令所需时间长度不同,因而运算速度的计算方法也不同。例如,根据不同类型的指令出现的频度,乘上不同的系数求得统计平均值,得到平均运算速度。这种方法用MIPS(Millions of Instruction Per Second)作单位,即每秒百万条指令。

又如,直接给出CPU的主频和每条指令的执行所需的时钟周期。周期一般以MHz为单位。主频即计算机的时钟频率,它在很大程度上决定了主机的工作速度。例如,型号为486DX-133的微型计算机,表明它的CPU型号为486,DX为含浮点处理器,数字133的含义是主频为133MHz。



例题


<1>: 若某处理器的时钟频率为500MHz,每4个时钟周期组成一个机器周期,执行一条指令需要3个机器周期,则该处理器的一个机器周期▁8▁ns,平均执行速度为▁42▁MIPS


解析如下:

时钟周期T等于主频的倒数,即T=1/500MHz=1/(0.5×10的9次方Hz)=2 ns,机器周期等于4个时钟周期即=4T=4×2 ns=8 ns,每条指令的时钟周期数CPI=3×4=12,则平均速度为:f/(CPI×10的6次方)=(500×10的6次方)/(12×10的6次 方)=500/12=41.6≈42MIPS.计算主频的倒数时要注意把主频的MHz换算成Hz即500后面加6个0=500×10的6次方=0.5×10的9次方,1/10的9次方 Hz=1ns

每条指令的时钟周期数CPI=3×4=12,执行一条指令需要3个机器周期数,一个机器周期包含4个时钟周期,所以CPI=3×4=12,这里计算 的都是周期的个数,和具体的时间ns纳秒没有关系,若带上具体的时间,一个时钟周期T=2ns,一个机器周期就是2×4=8ns,执行一条指令需要三个机 器周期得出执行一条指令需要的具体时间为3×8=24ns,执行每条指令的需要的时钟周期数CPI换句话说就是把执行每条指令需要的时间24ns换算成时 钟周期个数表示,为多少个时钟周期个数?时钟周期是最基本的时间操作单位,500MHz主频的处理器一个时钟周期为2ns,24ns等于多少个时钟周期?24/2=12个时钟周期,即那一句:“每条指令的时钟周期数CPI=12”。




<2>:某计算机系统的CPU主频为2.8GHz。某应用程序包括3类指令,各类指令的CPI(执行每条指令所需要的时钟周期数)及指令比例 如下表所示。

alt

执行该应用程序时的平均CPI为( );

A、25 B、3 C、3.5 D、4

运算速度用MIPS表示,约为( )。

A、700 B、800 C、930 D、1100


解:

(1) 求 平均CPI,即对列出的CPI求平均数

4*35% + 2*45% + 6*20% = 3.5


(2) 求MIPS,即每秒执行的百万条指令数

根据第一问CPI,每条指令需要的时钟周期为4,每个时钟周期为主频的倒数,即1/2.8G秒,则每条指令需要时间3.5/2.8G秒。

每秒执行指令数为1/(3.5/2.8G)=2.8G/3.5=0.8G=800M

(1M=106,1G=109)




拓展阅读:

阮一峰-为什么寄存器比内存快?[1]

阮一峰-汇编语言入门教程[2]

CPU性能衡量参数-主频,MIPS,CPI,时钟周期,机器周期,指令周期[3]

参考资料

[1]

阮一峰-为什么寄存器比内存快?: http://www.ruanyifeng.com/blog/2013/10/register.html

[2]

阮一峰-汇编语言入门教程: http://www.ruanyifeng.com/blog/2018/01/assembly-language-primer.html

[3]

CPU性能衡量参数-主频,MIPS,CPI,时钟周期,机器周期,指令周期: https://blog.csdn.net/xiaojianpitt/article/details/7613489

本文由 mdnice 多平台发布

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ZYNQ上的简单 FSK 基带发射器

绪论 由于某种需求需要生成正弦波&#xff0c;因此使用 C 应用程序中的sin()函数来计算单位圆的幅度值&#xff0c;然后将该幅度值转换为 AD9717 的适当 DAC 代码&#xff08;当然将每个角度值转换为弧度&#xff09;。 能够使用DAC生成简单的正弦波&#xff0c;下一个想法就是…

QT QToolBox控件使用详解

本文详细的介绍了QToolBox控件的各种操作&#xff0c;例如&#xff1a;新建界面、添加页签、索引设置当前项、获取当前项的索引、获取当前项窗口、获取索引值是int的窗口、移除索引值项、获取项的数量、获取指定索引值、设置索引项是否激活、获取索引值项是否激活、设置项的图标…

vue+antd——table组件实现动态列+表头下拉选择功能——技能提升

Table 表格 展示行列数据。 何时使用 当有大量结构化的数据需要展现时&#xff1b; 当需要对数据进行排序、搜索、分页、自定义操作等复杂行为时。 最近在写vueantd的框架&#xff0c;遇到一个需求&#xff1a;就是要实现table表格的动态列&#xff0c;并且相应的表头要实现下拉…

el-date-picker 禁止选择当前年之前或者之后的年份

<el-date-picker v-model"ruleForm.years" type"year" :disabled-date"pickerOptions"placeholder"请选择获奖年度" class"wih-650p" value-format"YYYY" />之前 const disabledDateFun (time: any) >…

用户案例 | 蜀海供应链基于 Apache DolphinScheduler 的数据表血缘探索与跨大版本升级经验

导读 蜀海供应链是集销售、研发、采购、生产、品保、仓储、运输、信息、金融为一体的餐饮供应链服务企业。2021年初&#xff0c;蜀海信息技术中心大数据技术研发团队开始测试用DolphinScheduler作为数据中台和各业务产品项目的任务调度系统工具。本文主要分享了蜀海供应链在海…

YOLO目标检测——火焰检测数据集+已标注xml和txt格式标签下载分享

实际项目应用&#xff1a;火灾预警系统、智能监控系统、工业安全管理、森林火灾监测以及城市规划和消防设计等应用场景中具有广泛的应用潜力&#xff0c;可以提高火灾检测的准确性和效率&#xff0c;保障人员和财产的安全。数据集说明&#xff1a;YOLO火焰目标检测数据集&#…

Python接口自动化封装导出excel方法和读写excel数据

一、首先需要思考&#xff0c;我们在页面导出excel&#xff0c;用python导出如何写入文件的 封装前需要确认python导出excel接口返回的是一个什么样的数据类型 如下&#xff1a;我们先看下不对返回结果做处理&#xff0c;直接接收数据类型是一个对象&#xff0c;无法获取返回值…

Java“牵手”微店商品列表数据,关键词搜索微店商品数据接口,微店API申请指南

微店商城是一个网上购物平台&#xff0c;售卖各类商品&#xff0c;包括服装、鞋类、家居用品、美妆产品、电子产品等。要获取微店商品列表和商品详情页面数据&#xff0c;您可以通过开放平台的接口或者直接访问微店商城的网页来获取商品详情信息。以下是两种常用方法的介绍&…

【位运算】leetcode371:两整数之和

一.题目描述 两整数之和 二.思路分析 题目要求我们实现两整数相加&#xff0c;但是不能使用加号&#xff0c;应该立马想到是用位运算来解决问题。之前说过&#xff0c;异或就是“无进位相加”&#xff0c;故本题可以先将两数异或&#xff0c;然后想办法让得到的结果进位即可。…

Xubuntu16.04系统中解决无法识别exFAT格式的U盘

问题描述 将exFAT格式的U盘插入到Xubuntu16.04系统中&#xff0c;发现系统可以识别到此U盘&#xff0c;但是打不开&#xff0c;查询后发现需要安装exfat-utils库才行。 解决方案&#xff1a; 1.设备有网络的情况下 apt-get install exfat-utils直接安装exfat-utils库即可 2.设备…

任天堂开发全新独立VR设备,或为下一代主机?将提供混合现实体验

根据爆料人Nash Weedle在X平台上的发文&#xff0c;我们得知任天堂正在秘密开发一款全新的独立VR设备&#xff0c;该设备将拥有一块MicroLED屏幕&#xff0c;并且独立于任天堂传闻中的下一代主机。与此同时&#xff0c;谷歌也参与了这款VR产品的研发工作。 这一新的VR设备被设计…

iTunes备份文件在哪?苹果手机怎么恢复iTunes备份?

iTunes是苹果手机的一个常见应用&#xff0c;很多小伙伴都使用它来备份手机上的重要数据。通过iTunes备份数据到电脑后还可以进行随时管理和查看。itunes备份文件在哪&#xff1f;手机数据丢失怎么恢复iTunes备份&#xff1f;接下来&#xff0c;本文将给大家介绍一下&#xff0…

vue 脚手架新手入门(vue cli 3)

文章目录 1、vue中的 “:” 绑定和 “” 监听1.1、v-model 双向绑定 2、if 、else 、for3、computed 计算属性4、生命周期&#xff08;属性加载顺序&#xff09;5、watch 侦听器6、 components 组件6.1、props 从父组件获取收据6.2、emits 向父组件触发事件6.3、slots插槽&…

Agisoft/PhotoScan手动对齐照片

所以我到网上查了一下资料&#xff0c;了解了如何通过添加标记的方式&#xff0c;手动对齐照片。参考文档是PhotoScan的用户手册(http://www.agisoft.com/pdf/photoscan-pro_1_4_en.pdf)。 手动对齐照片&#xff0c;需要在未对齐照片上添加四个及以上标记&#xff0c;并在已对…

前端开发从 0 到 1 掌握 docker

文章目录 前端从 0 到 1 掌握 docker一、docker 的一些基础概念概念定义question&#xff1a;什么是docker&#xff1f; 为什么要使用docker&#xff1f; 二、实战操作 (墙裂建议读者实操一遍)Part1 - Linux CentOS 服务安装 DockerPart2 - 启动、使用、查看等命令Part3 - 示例…

羊城杯2023 部分wp

目录 D0nt pl4y g4m3!!!(php7.4.21源码泄露&pop链构造) Serpent(pickle反序列化&python提权) ArkNights(环境变量泄露) Ez_misc(win10sinpping_tools恢复) D0nt pl4y g4m3!!!(php7.4.21源码泄露&pop链构造) 访问/p0p.php 跳转到了游戏界面 应该是存在302跳转…

stable diffusion实践操作-随机种子seed

系列文章目录 stable diffusion实践操作 文章目录 系列文章目录前言一、seed是什么&#xff1f;二、使用步骤1.多批次随机生成多张图片2.提取图片seed3. 根据seed 再次培养4 seed使用4.1 复原别人图4.1 轻微修改4.2 固定某个人物-修改背景 三、差异随机种子1. webUI位置2. 什么…

Nebula数据库安装

1、什么是nebula NebulaGraph是一款开源的、分布式的、易扩展的原生图数据库&#xff0c;能够承载包含数千亿个点和数万亿条边的超大规模数据集&#xff0c;并且提供毫秒级查询。 2、利用docker-compose安装Nebula数据库 1、前提条件 主机中安装了docker主机中安装了Docke…

Linux上安装FTP

1、登录FTP&#xff0c;执行安装命令 yum -y install vsftpd 2、启动FTP服务器&#xff0c;设置开启自启动 systemctl enable vsftpd.service systemctl start vsftpd.service systemctl status vsftpd.service #查看状态, 显示active说明FTP启动成功 3、修改FTP配置文件/et…

Docker资源控制cgroups

文章目录 一、docker资源控制1、资源控制工具2、Cgroups四大功能 二、CPU 资源控制1、设置CPU使用率上限2、CPU压力测试3、Cgroups限制cpu使用率4、设置CPU资源占用比&#xff08;设置多个容器时才有效&#xff09;5、设置容器绑定指定的CPU 三、对内存使用的限制四、对磁盘IO配…