OpenXiangShan/HuanCun

请教关于缓存中T权限的设计

Opened this issue · 2 comments

您好,我发现在L1Cache中请求NtoB,很多情况下L2cache的D通道会自动升权到toT响应,在Dcache中应该是没问题的,但是在多核ICache情况在,ICache正常情况下应该只读,但是T权限是可读可写,那按我的理解多核情况下icache频繁的probe toB,那这样性能上是不是会有问题呢?请问当时设计的promoteT是基于哪些方面的考虑呢?谢谢!

给 L1I 响应的时候如果默认 promoteT,确实有可能会在自修改代码密度高的 workload 中降低性能;目前最新昆明湖架构不再硬件维护 L1I 的一致性,已经解决了这一问题

好的,谢谢!不过还是不太理解为什么要设计req_promoteT?在阅读代码的过程中发现,promoteT_safe这个条件好像可有可无,请问它触发的场景有哪些呢?