power10-events-list.h 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. /* SPDX-License-Identifier: GPL-2.0-or-later */
  2. /*
  3. * Performance counter support for POWER10 processors.
  4. *
  5. * Copyright 2020 Madhavan Srinivasan, IBM Corporation.
  6. * Copyright 2020 Athira Rajeev, IBM Corporation.
  7. */
  8. /*
  9. * Power10 event codes.
  10. */
  11. EVENT(PM_CYC, 0x600f4);
  12. EVENT(PM_DISP_STALL_CYC, 0x100f8);
  13. EVENT(PM_EXEC_STALL, 0x30008);
  14. EVENT(PM_INST_CMPL, 0x500fa);
  15. EVENT(PM_BR_CMPL, 0x4d05e);
  16. EVENT(PM_BR_MPRED_CMPL, 0x400f6);
  17. EVENT(PM_BR_FIN, 0x2f04a);
  18. EVENT(PM_MPRED_BR_FIN, 0x3e098);
  19. EVENT(PM_LD_DEMAND_MISS_L1_FIN, 0x400f0);
  20. /* All L1 D cache load references counted at finish, gated by reject */
  21. EVENT(PM_LD_REF_L1, 0x100fc);
  22. /* Load Missed L1 */
  23. EVENT(PM_LD_MISS_L1, 0x3e054);
  24. /* Store Missed L1 */
  25. EVENT(PM_ST_MISS_L1, 0x300f0);
  26. /* L1 cache data prefetches */
  27. EVENT(PM_LD_PREFETCH_CACHE_LINE_MISS, 0x1002c);
  28. /* Demand iCache Miss */
  29. EVENT(PM_L1_ICACHE_MISS, 0x200fc);
  30. /* Instruction fetches from L1 */
  31. EVENT(PM_INST_FROM_L1, 0x04080);
  32. /* Instruction Demand sectors wriittent into IL1 */
  33. EVENT(PM_INST_FROM_L1MISS, 0x03f00000001c040);
  34. /* Instruction prefetch written into IL1 */
  35. EVENT(PM_IC_PREF_REQ, 0x040a0);
  36. /* The data cache was reloaded from local core's L3 due to a demand load */
  37. EVENT(PM_DATA_FROM_L3, 0x01340000001c040);
  38. /* Demand LD - L3 Miss (not L2 hit and not L3 hit) */
  39. EVENT(PM_DATA_FROM_L3MISS, 0x300fe);
  40. /* All successful D-side store dispatches for this thread */
  41. EVENT(PM_L2_ST, 0x010000046080);
  42. /* All successful D-side store dispatches for this thread that were L2 Miss */
  43. EVENT(PM_L2_ST_MISS, 0x26880);
  44. /* Total HW L3 prefetches(Load+store) */
  45. EVENT(PM_L3_PF_MISS_L3, 0x100000016080);
  46. /* Data PTEG reload */
  47. EVENT(PM_DTLB_MISS, 0x300fc);
  48. /* ITLB Reloaded */
  49. EVENT(PM_ITLB_MISS, 0x400fc);
  50. EVENT(PM_CYC_ALT, 0x0001e);
  51. EVENT(PM_INST_CMPL_ALT, 0x00002);
  52. /*
  53. * Memory Access Events
  54. *
  55. * Primary PMU event used here is PM_MRK_INST_CMPL (0x401e0)
  56. * To enable capturing of memory profiling, these MMCRA bits
  57. * needs to be programmed and corresponding raw event format
  58. * encoding.
  59. *
  60. * MMCRA bits encoding needed are
  61. * SM (Sampling Mode)
  62. * EM (Eligibility for Random Sampling)
  63. * TECE (Threshold Event Counter Event)
  64. * TS (Threshold Start Event)
  65. * TE (Threshold End Event)
  66. *
  67. * Corresponding Raw Encoding bits:
  68. * sample [EM,SM]
  69. * thresh_sel (TECE)
  70. * thresh start (TS)
  71. * thresh end (TE)
  72. */
  73. EVENT(MEM_LOADS, 0x35340401e0);
  74. EVENT(MEM_STORES, 0x353c0401e0);