pipeline指令流水线
假设每个指令为了得到结果都有一个周期
load为3周期
mult为2周期
div为5周期
store为2周期
add为1周期
注意:这里的周期可以理解为占用的cpu运算资源时间
1 3 load a
r1
2 4 load br2
5 6 mult r1,r2r3
6 8 load cr4
7 9 load dr5
10 14 div r4,r5r6
15 15 add r3,r6r7
16 17 store r7x
可以看到 第一个load从周期1开始到3经历了1 2 3 三个周期
第二个load不依赖于第一个load 所以不需要等待第一个load执行完毕 就可以直接开始执行
第三个mult需
本文介绍了指令调度的概念,特别是乱序执行(Out-of-Order Execution, OoOE)。通过示例展示了如何通过调整指令顺序来减少运算周期,但可能会增加寄存器需求。乱序执行允许CPU根据操作数的可用性重新排序指令,提高处理器的指令吞吐量,以x86架构为例。"
124544052,11859446,使用C++验证巴德哥赫猜想,"['c++', '算法', '数学问题', '编程挑战']
最低0.47元/天 解锁文章
1122

被折叠的 条评论
为什么被折叠?



