有没有一种计算机体系结构在遇到条件分支时直接分裂出一个PC,每个PC各自执行下去? 学名叫多路径执行,这种东西只有一种应用场景,要求周期级精确的时序,差一点都不行的那种. 也就是说,配备两套甚至更多的硬件资源,换来的是性能0提升,只是避免了进入错误执行路径+回滚上下文的开销,竞争力在哪?而且这个提前优化和现代微架构技术适配性很差,众所周知如果丧失了ooo发掘指令流中潜在信息,那硬件性能会瞬间跌回90年代的水平,然后你的硅片就只能一直idle当散热片用了. 另外要注意控制流带宽是现代处理器里最宝贵的资源,更要命的是这个甚至和硬件关系不大,是信息论级别的瓶颈,任何硬件改进都只能从顺序信息里偷出性能,不存在突破的可能性. 究其原因人类设计的处理器是低熵系统,确保语义的一致性和可重现性必然要付出高昂的代价. 要同时执行两个方向的路径甚至连fetch都得两套,cache的复杂度和端口冲突又炸了. 但是真的毫无意义吗,我个人觉得虽然拿来做处理装置菜的抠脚,但或许在一些片上总线或多芯片互联的电路里,周期级精确的特性可能会和同步形成trade off.
有没有一种计算机体系结构在遇到条件分支时直接分裂出一个PC,每个PC各自执行下去
亲切芒果
2025-10-29 06:03:02
0
阅读:0