高性能计算——指令级并行

本文介绍了指令级并行的概念,包括指令流水线技术,通过教育系统的类比帮助理解CPU如何在单个核心内部实现指令的并行执行,以提高性能。现代CPU使用超标量架构,允许每个周期执行多条指令,并通过乱序执行进一步优化。流水线技术通过隐藏延迟,使得CPU性能得以提升。
摘要由CSDN通过智能技术生成

指令级并行



指令级并行性

当程序员们听到并行这个词时,大多数都会想到多核并行性,即明确地将计算分割成一个个半独立的线程,这些线程同时工作以解决一个共同问题。

这种类型的并行主要是用来减少延迟和实现可扩展性,而不是提高效率。我们可以使用并行算法来解决一个比原来大十倍的问题,但它至少需要十倍的计算资源。尽管并行硬件变得越来越现金,而且并行算法的设计也变得越来越重要,但现在我们暂时仅限于考虑单个CPU核心。

在CPU核心内部也存在其他类型的并行性,我们可以很自由的使用。

指令流水线

为了执行某个指令,处理器需要做很多准备工作,包括:

  • 从内存中获取一块机器码,
  • 解码它并分割成指令,
  • 执行这些指令,可能涉及进行一些内存操作,
  • 将结果写回寄存器。

整个操作序列是很长的。即使对于很简单的操作,比如将两个存储在寄存器中的值相加,也需要长达15-20个CPU周期。为了隐藏这个延迟,现代CPU使用流水线功能:在一条指令通过第一阶段之后,它们会立即开始处理下一条指令,而不用等待前一条指令完全完成。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

walt3433

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值