Rocket - core - Events

https://mp.weixin.qq.com/s/9HTFufvGEhWoWZjAdGytUA

 

简单介绍perfEvents中涉及到的事件。

 

本文不涉及:

1. 乘除法;

2. 浮点运算;

 

本文目录:

1. load

2. store

3. amo

4. system

5. arith

6. branch

7. jal

8. jalr

9. mul

10. div

11. fp load

12. fp store

13. fp add

14. fp mul

15. fp mul-add

16. fp div/sqrt

17. fp other

18. load-use interlock

19. long-latency interlock

20. csr interlock

21. I$ blocked

22. D$ blocked

23. branch misprediction

24. control-flow target misprediction

25. flush

26. replay

27. mul/div interlock

28. fp interlock

29. I$ miss

30. D$ miss

31. D$ release

32. ITLB miss

33. DTLB miss

34. L2 TLB miss

 

以下正文:

1. load

load指id阶段为load指令:

包含如下条件:

a. id_ctrl.mem表示该指令为内存相关指令;

b. id_ctrl.mem_cmd == M_XRD表示该指令读取内存之后存入整数寄存器;

c. !id_ctrl.fp表示该指令不是浮点运算指令;

 

2. store

store指id阶段为store指令,与load类似:

 

3. amo

amo指id阶段为原子指令:

其中:

a. usingAtomics表示支持原子指令;

b. id_ctrl.mem表示该指令涉及内存操作;

-----------------------------------------------------------------------------
这是一篇付费文章,请移步付费阅读全文,谢谢!
文章链接:https://mp.weixin.qq.com/s/9HTFufvGEhWoWZjAdGytUA

posted @ 2022-01-15 11:19  wjcdx  阅读(86)  评论(0编辑  收藏  举报