踪迹处理器的研发进展怎样

谢邀。我没有听过trace processor的提法,只听过trace cache。从问题描述来看这种做法是典型的multiple instruction stream,而这种做法很早(上世纪九十年代前)就被放弃了,我不怀疑现在仍有一些科研小组在探索这个方向,但是截至目前我没有见到哪个工业级处理器里面使用这种技术。并且我个人也非常不看好它。multiple instruction stream的问题很多,UC Berkeley的Alan Jay Smith和HP的Johnny K.F. Lee曾经在他们的经典论文Branch Prediction Strategies and Branch Target Buffer Design(IEEE Xplore Abstract)里面讲到其中几个:流水线来不及读取trace的起始地址,计算trace起始地址需要时间争抢寄存器堆,多条trace很难同时存取流水线前后都需要冗余部件来处理其他指令流指令流的推测深度,与开销是指数级的关系这篇经典论文发表时间久远(1984),第一点已经有些不太合时宜,它可以被trace cache(1996)弥补,但是第二到第四点仍然不变,这种开销首先就阻挡了multiple instruction stream获得主流认可,加上现在的分支预测准确率已经95%+,这么高的准确率就已经基本没有必要再同时去做multiple stream了,这就连应用的根基都动摇了,可以说前有狼后有虎,multiple instruction stream在可预见的将来也不太可能获得认可。


    推荐阅读