软件设计师学习笔记5-流水线技术

news/2024/12/27 10:09:55/

目录

1.流水线的概念

2.流水线计算

2.1流水线周期及执行时间

2.2流水线吞吐量


1.流水线的概念

考点:相关参数计算:流水线执行时间计算、流水线吞吐率、流水线加速比、流水线效率(后两者的计算中级不考)

流水线是指在程序执行时多条指令重叠进行操作的一种准并行处理实现技术。各种部件同时处理是针对不同指令而言的,它们可同时为多条指令的不同部分进行工作,以提高各部件的利用率和指令的平均执行速度。图解如下:

该图片来自希赛软考

(1)第一部分:这个程序的执行包含取指、分析、执行三个过程,每个过程各执行一秒

(2)第二部分:展示了该程序串行处理实现技术的情况

(3)第三部分:将第二部分的运行情况画入了时空图

(4)第四部分:在时空图中展示流水线的并行处理实现技术

至于并行处理技术就是几个程序齐头并进,以此图为例,当1取指时,2、3也同时取指

2.流水线计算

2.1流水线周期及执行时间

(1)流水线周期:程序执行时间最长的一段

举个例子:程序包含取指(1 ms)、分析(2 ms)、执行(4 ms)三个过程,那么周期为4 ms

(2)流水线执行时间计算公式:1条指令执行的时间+(指令数-1)*流水线周期

注:k表示过程数,t表示流水线周期

①理论公式:(t1 + t2 + .... + tk) + (n - 1) * t

②实际公式:k * t + (n - 1) * t

注:默认使用理论公式,当选项找不到理论公式计算的结果才使用实际公式

2.2流水线吞吐率

(1)流水线的吞吐率(Though Put rate,TP)是指在单位时间内流水线所完成的任务数量或输出的结果数量。计算流水线吞吐率的最基本的公式如下:

其中流水线执行时间为理论公式

(2)流水线最大吞吐率:

上一篇:软件设计师学习笔记4-寻址方式

下一篇:软件设计师学习笔记6-存储系统


http://www.ppmy.cn/news/1073793.html

相关文章

【C++】SLT——Vector详解

本片要分享的是关于STL中Vector的内容,Vector的内容于string非常相似,只要会使用string那么学习Vector时会非常流畅。 目录 1.vector介绍 2.vector的简单实用 2.1.简单的无参构造 ​编辑2.2.简单带参构造 2.3.迭代器区间初始化 2.4.vector的遍历 …

什么是OLAP

一、什么是OLAP OLAP(On-line Analytical Processing,联机分析处理)是在基于数据仓库多维模型的基础上实现的面向分析的各类操作的集合。可以比较下其与传统的OLTP(On-line Transaction Processing,联机事务处理&…

C++ 构造函数、析构函数调用虚函数

C虚函数是通过虚表实现的,虚函数的地址记录在需表中,只对象完成构造完成后,虚函数的地址才最终确定。 构造函数中调用虚函数 基类先于派生类构造,所以构造时没法调用到派生类的虚函数,也就是说只能调用到自己&#x…

universal robot 机械臂 官方基本教程

https://academy.universal-robots.cn/modules/e-Series-core-track/Chinese/module3/story_html5.html?courseId2166&languageChinese 教程1 控制箱内部 包含: 主机板,SD卡,和安全控制板 安全控制板负责所有控制信息,包括…

GiraffeDet助力yolov8暴涨分---有可执行源码

Yolov8魔改–加入GiraffeDet模型提高小目标效果 VX搜索晓理紫关注并回复有yolov8-GiraffeDet获取代码 [晓理紫] 1 GiraffeDet模型 GiraffeDet是一种新颖的粗颈范例,一种类似长颈鹿的网络,用于高效的目标检测。 GiraffeDet 使用极其轻量的主干和非常深且…

C语言二——依次将10个数输入,要求将其中最大的数输出

这是一个简单的C语言程序,它会接受用户输入的10个整数,然后找出最大值并输出。 程序的执行步骤如下: 声明一个数组 n,用于存储用户输入的10个整数,声明一个变量 i 和 t。提示用户输入10个数。使用 for 循环&#xff…

你觉得 Android 还有必要继续吗?

前言 这些年,总是听到有人说Android 开发岗位要凉了,不好做了。坦白说,市场倾向理性,竞争变强是很正常的事。但你发现总有些人,他们拿的 Offer 薪资是更高的,能达到年薪五六十万,甚至年薪百万。…

SpringBoot常用的简化开发注解

一、引言 在Spring Boot框架中,有许多常用的注解可用于开发项目。下面是其中一些常见的注解及其功能和属性的说明: 1、RestController RestController 是 Spring Framework 中的一个注解,用于标识一个类是 RESTful 服务的控制器。它结合了…