流水线

在计算机处理的上下文中,流水线是一种同时执行多条指令的技术。计算机处理器每秒可以处理数百万条指令。每条指令都要经过多个阶段,每个阶段由处理器的不同部分处理。在每个时钟周期内,一条指令会从一个阶段移动到下一个阶段;当一条指令经过某个阶段时,其他指令也会同时经过不同的阶段。

典型的CPU流水线包括五个阶段——取指令、指令解码、执行、内存访问和写回不过具体阶段可能因(架构而异)。如果没有流水线,处理器一次只能处理一条指令。由于每条指令都需要经过多个时钟周期才能完成所有阶段,因此当一条指令从一个阶段移动到下一个阶段时,处理器的大部分会处于空闲状态。不采用流水线处理并不会让单条指令耗时更长,但这意味着处理器每秒能够处理的指令更少。

指令流水线的工作方式很像汽车装配线,每个工作站只负责一项任务——安装座椅、装配发动机、安装车轮等。如果生产线上一次只有一辆汽车在移动,大多数工作站都会处于空闲状态,工厂一天无法生产很多汽车。但是,如果生产线上同时有几十辆汽车——足以让每个工作站都保持忙碌——那么一天内完成的汽车数量就会多得多,尽管每辆汽车仍然需要相同的时间。

GPU 图形流水线

除了CPU之外,计算机GPU也使用流水线来处理指令。GPU图形流水线更加复杂,其中包含多个专用处理组件,这些组件执行数学函数,将3D场景和对象渲染为显示在屏幕上的2D图像。

GPU架构在不同代际之间差异很大,但大多数图形流水线都遵循类似的模式。简单的图形流水线首先会将顶点的3D坐标(组成每个3D对象的三角形的角)转换为屏幕平面上的2D坐标。然后,它会将这些坐标转换为线框,再填充这些顶点之间的几何区域以创建形状。接下来,流水线通过添加纹理贴图、光照和其他着色器效果,将这些形状光栅化为像素。隐藏的像素以及“摄像机”看不到的其他信息会被丢弃,最后将图像保存到帧缓冲区并显示在屏幕上。

更新日期 December 6, 2023 作者 Brian P.

quiz测试你的知识

A hard drive is an example of what?

A
Solid state memory
0%
B
Random access memory
0%
C
Non-volatile memory
0%
D
Read-only memory
0%
Correct! Incorrect!     View the Non-Volatile Memory definition.
More Quizzes →

Tech Terms 计算机词典

本页中流水线的定义是由 TechTerms.com 的作者撰写的原创定义。如果您想引用本页或引用此定义,请使用定义正下方的绿色引用栏。

我们的目标是以简单易懂的方式解释计算机术语。我们努力使发布的每个定义都做到准确和简明。如果您对本定义有任何反馈,或想建议一个新的技术术语,请联系我们

Tech Terms 通讯

通过我们的每日或每周通讯提升您的技术知识!立即订阅,即可将新术语和测验发送到您的收件箱。

订阅免费的 TechTerms 通讯

您希望多久收到一封电子邮件?

您可以随时使用每封邮件中的链接取消订阅或更改接收频率。 有疑问?请联系我们

注意:通讯以英文发送。