指令追踪缓存造句
- 指令追踪缓存
- 应该说,指令追踪缓存确实是一个值得称道的技术。
- 比较有趣的是,Nehalem的LSD缓冲看起来更象是指令追踪缓存(trace cache)。
- 自P4时代开始,Intel开始采用全新的“数据代码指令追踪缓存”设计。
- 从Pentium 4开始,Intel采用了一种新的缓存类型,叫trace cache,俗称指令追踪缓存。
- P4的指令追踪缓存的问题在于它太脆弱了,当其命中失败时,就必须一个接一个地(重新)解码指令。
- 通常指令缓存的命中率是在90%以上,而指令追踪缓存却远低于这个标准,很少时候超过80%,大多数时候是在50-60%。
- 而Nehalem的LSD缓冲取得了和指令追踪缓存几乎同样的目标,而且当它无法工作的时候(即当循环太大时),也没有什么要命的性能损失。
- 由于一级数据缓存不再存储实际数据,因此“数据代码指令追踪缓存”设计能够极大地降CPU对一级数据缓存容量的要求,降低处理器的生产难度。
- 指令追踪缓存位于指令解码器和内核第一层计算管线之间,指令在解码单元内获取和解码之后,微操作必须先经过追踪缓存的存储和和输出,才能到达内核第一层计算管线被执行。
- 用指令追踪缓存造句挺难的,這是一个万能造句的方法
- 假设处理器需要读取“INTEL P4 IS GOOD”这一串数据(不记空格),那么所有数据将被存储在二级缓存中,而一级数据代码指令追踪缓存需要存储的仅仅是上述数据的起始地址(如下图所示)。
- 但是在“数据代码指令追踪缓存”架构的CPU中,一级数据缓存并不存储这些最先用到的数据(“1、2……449、450”),而是将这些数据存储到二级缓存中,一级数据缓存仅仅存储这些数据在二级缓存中的起止地址(又称为:指令代码)。
- 指令追踪缓存的目标是以动态程序的顺序来存储微操作,而不是象指令缓存里那样以静态编译顺序存储X86指令,因此可以从关键路径(critical path,指需要时间最长的路径)中去掉解码器和分支预测器,而使得被堵塞的地方可以立刻取得指令。