יחידת המעקב אחרי הביצועים (PMU) היא רכיב חומרה בליבת המעבד (CPU) שעוקב אחרי האופן שבו המעבד מריץ קוד. כשמפעילים את PMU במופע של Compute Engine מסוג A4X, C4A, C4 או M4, אפשר לגשת למונים של הביצועים ב-PMU באמצעות תוכנה למעקב אחר ביצועים. הגישה הזו מאפשרת לכם לבצע אופטימיזציה של עומסי עבודה שרגישים לביצועים, כמו מחשוב בעל ביצועים גבוהים (HPC) או למידת מכונה (ML), על ידי זיהוי צווארי בקבוק בביצועים באפליקציות שלכם וטיפול בהם.
במאמר הזה מוסבר על ההתנהגות, החיוב והמגבלות של PMU. במאמר הפעלת PMU במכונות Compute Engine מוסבר איך להפעיל את PMU במכונות מסוג A4X, C4A, C4 או M4.
הסבר על PMU
ה-PMU מורכב מקבוצה של מוני חומרה שנקראים מוני מעקב אחר ביצועים (PMCs). המונים האלה הם רגיסטרים ספציפיים למודל שסופרים כל פעם שמתרחש אירוע מעבד ברמה נמוכה בתוך יחידת העיבוד המרכזית (CPU), כמו חיזוי שגוי של הסתעפות או אי מציאה במטמון. אפשר לקרוא ולהגדיר את מוני ה-PMC ב-PMU באמצעות תוכנה לניטור ביצועים, כמו Intel VTune Profiler.
אחרי שמפעילים את PMU במופע מחשוב, הוא פועל ברקע ומנטר באופן רציף אירועי ביצועים באמצעות PMCs. אפשר גם להגדיר ספי ביצועים ספציפיים באמצעות תוכנת ניטור הביצועים המועדפת עליכם. אם מדד PMC חורג מהסף שהוגדר לו, יחידת PMU שולחת הודעה לתוכנה.
אירועים ב-PMU
כברירת מחדל, ה-PMU מושבת במופעי מחשוב. כדי להפעיל אותו, צריך לציין את הסוגים של אירועי CPU ברמה נמוכה שרוצים לעקוב אחריהם. לשם כך, מפעילים אחד מהסוגים הבאים של PMU:
- ארכיטקטוני (
ARCHITECTURAL): אפשר למדוד את אירועי הביצועים הארכיטקטוניים הבאים:
- Branch instructions retired: מספר הוראות ההסתעפות שהושלמו. אפשר להשתמש באירוע הזה כדי למדוד את הביצוע של הקוד ולזהות צווארי בקבוק פוטנציאליים בביצועים.
- Branch misses retired: מספר ההוראות של הסתעפות שהחיזוי שלהן היה שגוי, מה שגרם למעבד להשהות את הפעולה ולבטל הוראות שאוחזרו. אם הערך של האירוע הזה גבוה, כנראה שאפשר לבצע אופטימיזציה של ביצועי המעבד.
- הוראות שהוצאו משימוש: מספר ההוראות שהמעבד עיבד בהצלחה. אפשר להשתמש באירוע הזה כדי למדוד את קצב העברת הנתונים של ההוראות במעבד.
- משבצות מלמעלה למטה: מספר המשבצות הזמינות בצינור של המעבד שמשמשות להרצת הוראות בו-זמנית. אפשר להשתמש באירוע הזה כדי להבין עד כמה הקוד משתמש ביעילות במשאבי המעבד.
- Unhalted core cycles: the number of core cycles when the thread isn't halted—for example, due to power management or interrupts. אפשר להשתמש באירוע הזה כדי להעריך את השימוש הכולל במעבד.
- מחזורי הפניה שלא הופסקו: מספר מחזורי ההפניה כשהליבה לא מושהית – למשל, כשמאחזרים נתונים או הוראות. הליבה מושהית כשהיא מריצה את ההוראות
HLTאוMWAIT. מחזורי ההפניה פועלים בתדר קבוע, ומספקים הפניה יציבה לזמן גם כשהמהירות של המעבד משתנה כדי לחסוך באנרגיה. אפשר להשתמש באירוע הזה כדי למדוד את הזמן שמוקדש למשימה ולזהות צווארי בקבוק בביצועים בקוד.
- רגיל (
STANDARD): אפשר למדוד את כל האירועים מסוג PMU ארכיטקטוני ואת כל האירועים המקומיים בתוך ליבת ה-CPU, כולל אירועים של מטמון ברמה 2 (L2). - משופר (
ENHANCED): אפשר למדוד את כל האירועים מסוג PMU רגיל וכל אירוע מקומי מחוץ לליבת המעבד, כולל אירועים של מטמון ברמה 3 (L3).
סדרות מכונות ופלטפורמות CPU נתמכות
אפשר להפעיל את PMU במופעי מחשוב שמשתמשים בסדרות המכונות ובפלטפורמות המעבדים הבאות:
| פלטפורמת CPU | סדרת מכונות | סוגי מעקב ב-PMU |
|---|---|---|
| מעבד Google Axion™ | A4X ו-C4A | ARCHITECTURAL וגם STANDARD |
| מעבד Intel Xeon Scalable (Emerald Rapids) דור 5 | C4 ו-M4 | ARCHITECTURAL, STANDARD וגם ENHANCED |
| מעבד Intel Xeon Scalable (Granite Rapids) דור 6 | C4 | ARCHITECTURAL, STANDARD וגם ENHANCED |
אירועי PMU נתמכים לפי פלטפורמת מעבד
בטבלאות הבאות מפורטים אירועי ה-PMU הנתמכים לפי פלטפורמת CPU:
Google Axion
| קוד האירוע | סוג המעקב של PMU | שם האירוע |
|---|---|---|
| 0x0 | ARCHITECTURAL | SW_INCR |
| 0x3 | ARCHITECTURAL | L1D_CACHE_REFILL |
| 0x4 | ARCHITECTURAL | L1D_CACHE |
| 0x8 | ARCHITECTURAL | INST_RETIRED |
| 0x10 | ARCHITECTURAL | BR_MIS_PRED |
| 0x11 | ARCHITECTURAL | CPU_CYCLES |
| 0x12 | ARCHITECTURAL | BR_PRED |
| 0x1b | ARCHITECTURAL | INST_SPEC |
| 0x1e | ARCHITECTURAL | CHAIN |
| 0x23 | ARCHITECTURAL | STALL_FRONTEND |
| 0x24 | ARCHITECTURAL | STALL_BACKEND |
| 0x39 | ARCHITECTURAL | L1D_CACHE_LMISS_RD |
| 0x3c | ARCHITECTURAL | STALL |
| 0x40 | ARCHITECTURAL | L1D_CACHE_RD |
| 0x4006 | ARCHITECTURAL | L1I_CACHE_LMISS |
| 0x8006 | ARCHITECTURAL | SVE_INST_SPEC |
| 0x0 | מהדורה סטנדרטית | SW_INCR |
| 0x1 | מהדורה סטנדרטית | L1I_CACHE_REFILL |
| 0x2 | מהדורה סטנדרטית | L1I_TLB_REFILL |
| 0x3 | מהדורה סטנדרטית | L1D_CACHE_REFILL |
| 0x4 | מהדורה סטנדרטית | L1D_CACHE |
| 0x5 | מהדורה סטנדרטית | L1D_TLB_REFILL |
| 0x8 | מהדורה סטנדרטית | INST_RETIRED |
| 0x9 | מהדורה סטנדרטית | EXC_TAKEN |
| 0xa | מהדורה סטנדרטית | EXC_RETURN |
| 0xb | מהדורה סטנדרטית | CID_WRITE_RETIRED |
| 0x10 | מהדורה סטנדרטית | BR_MIS_PRED |
| 0x11 | מהדורה סטנדרטית | CPU_CYCLES |
| 0x12 | מהדורה סטנדרטית | BR_PRED |
| 0x13 | מהדורה סטנדרטית | MEM_ACCESS |
| 0x14 | מהדורה סטנדרטית | L1I_CACHE |
| 0x15 | מהדורה סטנדרטית | L1D_CACHE_WB |
| 0x16 | מהדורה סטנדרטית | L2D_CACHE |
| 0x17 | מהדורה סטנדרטית | L2D_CACHE_REFILL |
| 0x18 | מהדורה סטנדרטית | L2D_CACHE_WB |
| 0x19 | מהדורה סטנדרטית | BUS_ACCESS |
| 0x1b | מהדורה סטנדרטית | INST_SPEC |
| 0x1c | מהדורה סטנדרטית | TTBR_WRITE_RETIRED |
| 0x1d | מהדורה סטנדרטית | BUS_CYCLES |
| 0x1e | מהדורה סטנדרטית | CHAIN |
| 0x20 | מהדורה סטנדרטית | L2D_CACHE_ALLOCATE |
| 0x21 | מהדורה סטנדרטית | BR_RETIRED |
| 0x22 | מהדורה סטנדרטית | BR_MIS_PRED_RETIRED |
| 0x23 | מהדורה סטנדרטית | STALL_FRONTEND |
| 0x24 | מהדורה סטנדרטית | STALL_BACKEND |
| 0x25 | מהדורה סטנדרטית | L1D_TLB |
| 0x26 | מהדורה סטנדרטית | L1I_TLB |
| 0x2d | מהדורה סטנדרטית | L2D_TLB_REFILL |
| 0x2f | מהדורה סטנדרטית | L2D_TLB |
| 0x31 | מהדורה סטנדרטית | REMOTE_ACCESS |
| 0x34 | מהדורה סטנדרטית | DTLB_WALK |
| 0x35 | מהדורה סטנדרטית | ITLB_WALK |
| 0x39 | מהדורה סטנדרטית | L1D_CACHE_LMISS_RD |
| 0x3a | מהדורה סטנדרטית | OP_RETIRED |
| 0x3b | מהדורה סטנדרטית | OP_SPEC |
| 0x3c | מהדורה סטנדרטית | STALL |
| 0x3d | מהדורה סטנדרטית | STALL_SLOT_BACKEND |
| 0x3e | מהדורה סטנדרטית | STALL_SLOT_FRONTEND |
| 0x3f | מהדורה סטנדרטית | STALL_SLOT |
| 0x40 | מהדורה סטנדרטית | L1D_CACHE_RD |
| 0x41 | מהדורה סטנדרטית | L1D_CACHE_WR |
| 0x42 | מהדורה סטנדרטית | L1D_CACHE_REFILL_RD |
| 0x43 | מהדורה סטנדרטית | L1D_CACHE_REFILL_WR |
| 0x44 | מהדורה סטנדרטית | L1D_CACHE_REFILL_INNER |
| 0x45 | מהדורה סטנדרטית | L1D_CACHE_REFILL_OUTER |
| 0x46 | מהדורה סטנדרטית | L1D_CACHE_WB_VICTIM |
| 0x47 | מהדורה סטנדרטית | L1D_CACHE_WB_CLEAN |
| 0x48 | מהדורה סטנדרטית | L1D_CACHE_INVAL |
| 0x4c | מהדורה סטנדרטית | L1D_TLB_REFILL_RD |
| 0x4d | מהדורה סטנדרטית | L1D_TLB_REFILL_WR |
| 0x4e | מהדורה סטנדרטית | L1D_TLB_RD |
| 0x4f | מהדורה סטנדרטית | L1D_TLB_WR |
| 0x50 | מהדורה סטנדרטית | L2D_CACHE_RD |
| 0x51 | מהדורה סטנדרטית | L2D_CACHE_WR |
| 0x52 | מהדורה סטנדרטית | L2D_CACHE_REFILL_RD |
| 0x53 | מהדורה סטנדרטית | L2D_CACHE_REFILL_WR |
| 0x56 | מהדורה סטנדרטית | L2D_CACHE_WB_VICTIM |
| 0x57 | מהדורה סטנדרטית | L2D_CACHE_WB_CLEAN |
| 0x58 | מהדורה סטנדרטית | L2D_CACHE_INVAL |
| 0x5c | מהדורה סטנדרטית | L2D_TLB_REFILL_RD |
| 0x5d | מהדורה סטנדרטית | L2D_TLB_REFILL_WR |
| 0x5e | מהדורה סטנדרטית | L2D_TLB_RD |
| 0x5f | מהדורה סטנדרטית | L2D_TLB_WR |
| 0x60 | מהדורה סטנדרטית | BUS_ACCESS_RD |
| 0x61 | מהדורה סטנדרטית | BUS_ACCESS_WR |
| 0x66 | מהדורה סטנדרטית | MEM_ACCESS_RD |
| 0x67 | מהדורה סטנדרטית | MEM_ACCESS_WR |
| 0x68 | מהדורה סטנדרטית | UNALIGNED_LD_SPEC |
| 0x69 | מהדורה סטנדרטית | UNALIGNED_ST_SPEC |
| 0x6a | מהדורה סטנדרטית | UNALIGNED_LDST_SPEC |
| 0x6c | מהדורה סטנדרטית | LDREX_SPEC |
| 0x6d | מהדורה סטנדרטית | STREX_PASS_SPEC |
| 0x6e | מהדורה סטנדרטית | STREX_FAIL_SPEC |
| 0x6f | מהדורה סטנדרטית | STREX_SPEC |
| 0x70 | מהדורה סטנדרטית | LD_SPEC |
| 0x71 | מהדורה סטנדרטית | ST_SPEC |
| 0x73 | מהדורה סטנדרטית | DP_SPEC |
| 0x74 | מהדורה סטנדרטית | ASE_SPEC |
| 0x75 | מהדורה סטנדרטית | VFP_SPEC |
| 0x76 | מהדורה סטנדרטית | PC_WRITE_SPEC |
| 0x77 | מהדורה סטנדרטית | CRYPTO_SPEC |
| 0x78 | מהדורה סטנדרטית | BR_IMMED_SPEC |
| 0x79 | מהדורה סטנדרטית | BR_RETURN_SPEC |
| 0x7a | מהדורה סטנדרטית | BR_INDIRECT_SPEC |
| 0x7c | מהדורה סטנדרטית | ISB_SPEC |
| 0x7d | מהדורה סטנדרטית | DSB_SPEC |
| 0x7e | מהדורה סטנדרטית | DMB_SPEC |
| 0x81 | מהדורה סטנדרטית | EXC_UNDEF |
| 0x82 | מהדורה סטנדרטית | EXC_SVC |
| 0x83 | מהדורה סטנדרטית | EXC_PABORT |
| 0x84 | מהדורה סטנדרטית | EXC_DABORT |
| 0x86 | מהדורה סטנדרטית | EXC_IRQ |
| 0x87 | מהדורה סטנדרטית | EXC_FIQ |
| 0x88 | מהדורה סטנדרטית | EXC_SMC |
| 0x8a | מהדורה סטנדרטית | EXC_HVC |
| 0x8b | מהדורה סטנדרטית | EXC_TRAP_PABORT |
| 0x8c | מהדורה סטנדרטית | EXC_TRAP_DABORT |
| 0x8d | מהדורה סטנדרטית | EXC_TRAP_OTHER |
| 0x8e | מהדורה סטנדרטית | EXC_TRAP_IRQ |
| 0x8f | מהדורה סטנדרטית | EXC_TRAP_FIQ |
| 0x90 | מהדורה סטנדרטית | RC_LD_SPEC |
| 0x91 | מהדורה סטנדרטית | RC_ST_SPEC |
| 0x4004 | מהדורה סטנדרטית | CNT_CYCLES |
| 0x4005 | מהדורה סטנדרטית | STALL_BACKEND_MEM |
| 0x4006 | מהדורה סטנדרטית | L1I_CACHE_LMISS |
| 0x4009 | מהדורה סטנדרטית | L2D_CACHE_LMISS_RD |
| 0x4020 | מהדורה סטנדרטית | LDST_ALIGN_LAT |
| 0x4021 | מהדורה סטנדרטית | LD_ALIGN_LAT |
| 0x4022 | מהדורה סטנדרטית | ST_ALIGN_LAT |
| 0x8005 | מהדורה סטנדרטית | ASE_INST_SPEC |
| 0x8006 | מהדורה סטנדרטית | SVE_INST_SPEC |
| 0x8014 | מהדורה סטנדרטית | FP_HP_SPEC |
| 0x8018 | מהדורה סטנדרטית | FP_SP_SPEC |
| 0x801c | מהדורה סטנדרטית | FP_DP_SPEC |
| 0x8074 | מהדורה סטנדרטית | SVE_PRED_SPEC |
| 0x8075 | מהדורה סטנדרטית | SVE_PRED_EMPTY_SPEC |
| 0x8076 | מהדורה סטנדרטית | SVE_PRED_FULL_SPEC |
| 0x8077 | מהדורה סטנדרטית | SVE_PRED_PARTIAL_SPEC |
| 0x8079 | מהדורה סטנדרטית | SVE_PRED_NOT_FULL_SPEC |
| 0x80bc | מהדורה סטנדרטית | SVE_LDFF_SPEC |
| 0x80bd | מהדורה סטנדרטית | SVE_LDFF_FAULT_SPEC |
| 0x80c0 | מהדורה סטנדרטית | FP_SCALE_OPS_SPEC |
| 0x80c1 | מהדורה סטנדרטית | FP_FIXED_OPS_SPEC |
| 0x80e3 | מהדורה סטנדרטית | ASE_SVE_INT8_SPEC |
| 0x80e7 | מהדורה סטנדרטית | ASE_SVE_INT16_SPEC |
| 0x80eb | מהדורה סטנדרטית | ASE_SVE_INT32_SPEC |
| 0x80ef | מהדורה סטנדרטית | ASE_SVE_INT64_SPEC |
Intel Emerald Rapids (EMR)
בטבלה הבאה מפורטים אירועי ה-PMU הנתמכים במעבדי Intel 5th generation Emerald Rapids (EMR).
| קוד האירוע | UMask | סוג מעקב PMU | שם האירוע |
|---|---|---|---|
| 0x03 | 0x04 | מהדורה סטנדרטית | LD_BLOCKS.ADDRESS_ALIAS |
| 0x03 | 0x82 | מהדורה סטנדרטית | LD_BLOCKS.STORE_FORWARD |
| 0x03 | 0x88 | מהדורה סטנדרטית | LD_BLOCKS.NO_SR |
| 0x11 | 0x02 | מהדורה סטנדרטית | ITLB_MISSES.WALK_COMPLETED_4K |
| 0x11 | 0x04 | מהדורה סטנדרטית | ITLB_MISSES.WALK_COMPLETED_2M_4M |
| 0x11 | 0x0E | מהדורה סטנדרטית | ITLB_MISSES.WALK_COMPLETED |
| 0x11 | 0x10 | מהדורה סטנדרטית | ITLB_MISSES.WALK_ACTIVE |
| 0x11 | 0x20 | מהדורה סטנדרטית | ITLB_MISSES.STLB_HIT |
| 0x12 | 0x02 | מהדורה סטנדרטית | DTLB_LOAD_MISSES.WALK_COMPLETED_4K |
| 0x12 | 0x04 | מהדורה סטנדרטית | DTLB_LOAD_MISSES.WALK_COMPLETED_2M_4M |
| 0x12 | 0x08 | מהדורה סטנדרטית | DTLB_LOAD_MISSES.WALK_COMPLETED_1G |
| 0x12 | 0x0E | מהדורה סטנדרטית | DTLB_LOAD_MISSES.WALK_COMPLETED |
| 0x12 | 0x10 | מהדורה סטנדרטית | DTLB_LOAD_MISSES.WALK_ACTIVE |
| 0x12 | 0x20 | מהדורה סטנדרטית | DTLB_LOAD_MISSES.STLB_HIT |
| 0x13 | 0x02 | מהדורה סטנדרטית | DTLB_STORE_MISSES.WALK_COMPLETED_4K |
| 0x13 | 0x04 | מהדורה סטנדרטית | DTLB_STORE_MISSES.WALK_COMPLETED_2M_4M |
| 0x13 | 0x08 | מהדורה סטנדרטית | DTLB_STORE_MISSES.WALK_COMPLETED_1G |
| 0x13 | 0x0E | מהדורה סטנדרטית | DTLB_STORE_MISSES.WALK_COMPLETED |
| 0x13 | 0x10 | מהדורה סטנדרטית | DTLB_STORE_MISSES.WALK_ACTIVE |
| 0x13 | 0x20 | מהדורה סטנדרטית | DTLB_STORE_MISSES.STLB_HIT |
| 0x20 | 0x04 | משופר | OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_RFO |
| 0x20 | 0x08 | משופר | OFFCORE_REQUESTS_OUTSTANDING.ALL_DATA_RD |
| 0x21 | 0x01 | משופר | OFFCORE_REQUESTS.DEMAND_DATA_RD |
| 0x21 | 0x08 | משופר | OFFCORE_REQUESTS.DATA_RD |
| 0x21 | 0x80 | משופר | OFFCORE_REQUESTS.ALL_REQUESTS |
| 0x24 | 0x21 | מהדורה סטנדרטית | L2_RQSTS.DEMAND_DATA_RD_MISS |
| 0x24 | 0x22 | מהדורה סטנדרטית | L2_RQSTS.RFO_MISS |
| 0x24 | 0x24 | מהדורה סטנדרטית | L2_RQSTS.CODE_RD_MISS |
| 0x24 | 0x27 | מהדורה סטנדרטית | L2_RQSTS.ALL_DEMAND_MISS |
| 0x24 | 0x28 | מהדורה סטנדרטית | L2_RQSTS.SWPF_MISS |
| 0x24 | 0x3F | מהדורה סטנדרטית | L2_RQSTS.MISS |
| 0x24 | 0xC1 | מהדורה סטנדרטית | L2_RQSTS.DEMAND_DATA_RD_HIT |
| 0x24 | 0xC2 | מהדורה סטנדרטית | L2_RQSTS.RFO_HIT |
| 0x24 | 0xC4 | מהדורה סטנדרטית | L2_RQSTS.CODE_RD_HIT |
| 0x24 | 0xC8 | מהדורה סטנדרטית | L2_RQSTS.SWPF_HIT |
| 0x24 | 0xE1 | מהדורה סטנדרטית | L2_RQSTS.ALL_DEMAND_DATA_RD |
| 0x24 | 0xE2 | מהדורה סטנדרטית | L2_RQSTS.ALL_RFO |
| 0x24 | 0xE4 | מהדורה סטנדרטית | L2_RQSTS.ALL_CODE_RD |
| 0x24 | 0xE7 | מהדורה סטנדרטית | L2_RQSTS.ALL_DEMAND_REFERENCES |
| 0x24 | 0xFF | מהדורה סטנדרטית | L2_RQSTS.REFERENCES |
| 0x25 | 0x1F | מהדורה סטנדרטית | L2_LINES_IN.ALL |
| 0x26 | 0x01 | מהדורה סטנדרטית | L2_LINES_OUT.SILENT |
| 0x26 | 0x02 | מהדורה סטנדרטית | L2_LINES_OUT.NON_SILENT |
| 0x2D | 0x01 | משופר | XQ.FULL_CYCLES |
| 0x2E | 0x41 | משופר | LONGEST_LAT_CACHE.MISS |
| 0x3C | 0x00 | ARCHITECTURAL | CPU_CLK_UNHALTED.THREAD_P |
| 0x40 | 0x01 | מהדורה סטנדרטית | SW_PREFETCH_ACCESS.NTA |
| 0x40 | 0x02 | מהדורה סטנדרטית | SW_PREFETCH_ACCESS.T0 |
| 0x40 | 0x04 | מהדורה סטנדרטית | SW_PREFETCH_ACCESS.T1_T2 |
| 0x40 | 0x08 | מהדורה סטנדרטית | SW_PREFETCH_ACCESS.PREFETCHW |
| 0x43 | 0xFD | מהדורה סטנדרטית | MEM_LOAD_COMPLETED.L1_MISS_ANY |
| 0x44 | 0x01 | מהדורה סטנדרטית | MEM_STORE_RETIRED.L2_HIT |
| 0x47 | 0x02 | מהדורה סטנדרטית | MEMORY_ACTIVITY.CYCLES_L1D_MISS |
| 0x47 | 0x03 | מהדורה סטנדרטית | MEMORY_ACTIVITY.STALLS_L1D_MISS |
| 0x47 | 0x05 | מהדורה סטנדרטית | MEMORY_ACTIVITY.STALLS_L2_MISS |
| 0x47 | 0x09 | משופר | MEMORY_ACTIVITY.STALLS_L3_MISS |
| 0x48 | 0x01 | מהדורה סטנדרטית | L1D_PEND_MISS.PENDING |
| 0x48 | 0x02 | מהדורה סטנדרטית | L1D_PEND_MISS.FB_FULL |
| 0x48 | 0x04 | מהדורה סטנדרטית | L1D_PEND_MISS.L2_STALL |
| 0x4C | 0x01 | מהדורה סטנדרטית | LOAD_HIT_PREFETCH.SWPF |
| 0x51 | 0x01 | מהדורה סטנדרטית | L1D.REPLACEMENT |
| 0x54 | 0x01 | משופר | TX_MEM.ABORT_CONFLICT |
| 0x54 | 0x02 | משופר | TX_MEM.ABORT_CAPACITY_WRITE |
| 0x54 | 0x80 | משופר | TX_MEM.ABORT_CAPACITY_READ |
| 0x61 | 0x02 | מהדורה סטנדרטית | DSB2MITE_SWITCHES.PENALTY_CYCLES |
| 0x75 | 0x01 | מהדורה סטנדרטית | INST_DECODED.DECODERS |
| 0x76 | 0x01 | מהדורה סטנדרטית | UOPS_DECODED.DEC0_UOPS |
| 0x79 | 0x04 | מהדורה סטנדרטית | IDQ.MITE_CYCLES_ANY |
| 0x79 | 0x08 | מהדורה סטנדרטית | IDQ.DSB_CYCLES_ANY |
| 0x79 | 0x20 | מהדורה סטנדרטית | IDQ.MS_CYCLES_ANY |
| 0x80 | 0x04 | מהדורה סטנדרטית | ICACHE_DATA.STALLS |
| 0x83 | 0x04 | מהדורה סטנדרטית | ICACHE_TAG.STALLS |
| 0x87 | 0x01 | מהדורה סטנדרטית | DECODE.LCP |
| 0x9C | 0x01 | מהדורה סטנדרטית | IDQ_UOPS_NOT_DELIVERED.CORE |
| 0xA2 | 0x02 | מהדורה סטנדרטית | RESOURCE_STALLS.SCOREBOARD |
| 0xA2 | 0x08 | מהדורה סטנדרטית | RESOURCE_STALLS.SB |
| 0xA3 | 0x01 | מהדורה סטנדרטית | CYCLE_ACTIVITY.CYCLES_L2_MISS |
| 0xA3 | 0x04 | מהדורה סטנדרטית | CYCLE_ACTIVITY.STALLS_TOTAL |
| 0xA3 | 0x05 | מהדורה סטנדרטית | CYCLE_ACTIVITY.STALLS_L2_MISS |
| 0xA3 | 0x06 | משופר | CYCLE_ACTIVITY.STALLS_L3_MISS |
| 0xA3 | 0x08 | מהדורה סטנדרטית | CYCLE_ACTIVITY.CYCLES_L1D_MISS |
| 0xA3 | 0x0C | מהדורה סטנדרטית | CYCLE_ACTIVITY.STALLS_L1D_MISS |
| 0xA3 | 0x10 | מהדורה סטנדרטית | CYCLE_ACTIVITY.CYCLES_MEM_ANY |
| 0xA4 | 0x01 | ARCHITECTURAL | TOPDOWN.SLOTS_P |
| 0xA4 | 0x02 | מהדורה סטנדרטית | TOPDOWN.BACKEND_BOUND_SLOTS |
| 0xA4 | 0x04 | מהדורה סטנדרטית | TOPDOWN.BAD_SPEC_SLOTS |
| 0xA4 | 0x08 | מהדורה סטנדרטית | TOPDOWN.BR_MISPREDICT_SLOTS |
| 0xA4 | 0x10 | מהדורה סטנדרטית | TOPDOWN.MEMORY_BOUND_SLOTS |
| 0xA5 | 0x07 | מהדורה סטנדרטית | RS_EMPTY.CYCLES |
| 0xA6 | 0x02 | מהדורה סטנדרטית | EXE_ACTIVITY.1_PORTS_UTIL |
| 0xA6 | 0x04 | מהדורה סטנדרטית | EXE_ACTIVITY.2_PORTS_UTIL |
| 0xA6 | 0x08 | מהדורה סטנדרטית | EXE_ACTIVITY.3_PORTS_UTIL |
| 0xA6 | 0x10 | מהדורה סטנדרטית | EXE_ACTIVITY.4_PORTS_UTIL |
| 0xA6 | 0x21 | מהדורה סטנדרטית | EXE_ACTIVITY.BOUND_ON_LOADS |
| 0xA6 | 0x40 | מהדורה סטנדרטית | EXE_ACTIVITY.BOUND_ON_STORES |
| 0xA6 | 0x80 | מהדורה סטנדרטית | EXE_ACTIVITY.EXE_BOUND_0_PORTS |
| 0xA8 | 0x01 | מהדורה סטנדרטית | LSD.CYCLES_ACTIVE |
| 0xAD | 0x01 | מהדורה סטנדרטית | INT_MISC.RECOVERY_CYCLES |
| 0xAD | 0x10 | מהדורה סטנדרטית | INT_MISC.UOP_DROPPING |
| 0xAD | 0x20 | מהדורה סטנדרטית | INT_MISC.MBA_STALLS |
| 0xAD | 0x80 | מהדורה סטנדרטית | INT_MISC.CLEAR_RESTEER_CYCLES |
| 0xAE | 0x01 | מהדורה סטנדרטית | UOPS_ISSUED.ANY |
| 0xB0 | 0x01 | מהדורה סטנדרטית | ARITH.FP_DIVIDER_ACTIVE |
| 0xB0 | 0x08 | מהדורה סטנדרטית | ARITH.IDIV_ACTIVE |
| 0xB0 | 0x09 | מהדורה סטנדרטית | ARITH.DIVIDER_ACTIVE |
| 0xB1 | 0x01 | מהדורה סטנדרטית | UOPS_EXECUTED.CYCLES_GE_1 |
| 0xB1 | 0x02 | מהדורה סטנדרטית | UOPS_EXECUTED.CORE |
| 0xB1 | 0x10 | מהדורה סטנדרטית | UOPS_EXECUTED.X87 |
| 0xB2 | 0x01 | מהדורה סטנדרטית | UOPS_DISPATCHED.PORT_0 |
| 0xB2 | 0x02 | מהדורה סטנדרטית | UOPS_DISPATCHED.PORT_1 |
| 0xB2 | 0x04 | מהדורה סטנדרטית | UOPS_DISPATCHED.PORT_2_3_10 |
| 0xB2 | 0x10 | מהדורה סטנדרטית | UOPS_DISPATCHED.PORT_4_9 |
| 0xB2 | 0x20 | מהדורה סטנדרטית | UOPS_DISPATCHED.PORT_5_11 |
| 0xB2 | 0x40 | מהדורה סטנדרטית | UOPS_DISPATCHED.PORT_6 |
| 0xB2 | 0x80 | מהדורה סטנדרטית | UOPS_DISPATCHED.PORT_7_8 |
| 0xB3 | 0x01 | מהדורה סטנדרטית | FP_ARITH_DISPATCHED.PORT_0 |
| 0xB3 | 0x02 | מהדורה סטנדרטית | FP_ARITH_DISPATCHED.PORT_1 |
| 0xB3 | 0x04 | מהדורה סטנדרטית | FP_ARITH_DISPATCHED.PORT_5 |
| 0xB7 | 0x02 | מהדורה סטנדרטית | EXE.AMX_BUSY |
| 0xC0 | 0x00 | ARCHITECTURAL | INST_RETIRED.ANY_P |
| 0xC0 | 0x02 | מהדורה סטנדרטית | INST_RETIRED.NOP |
| 0xC0 | 0x08 | מהדורה סטנדרטית | INST_RETIRED.REP_ITERATION |
| 0xC0 | 0x10 | מהדורה סטנדרטית | INST_RETIRED.MACRO_FUSED |
| 0xC1 | 0x02 | מהדורה סטנדרטית | ASSISTS.FP |
| 0xC1 | 0x08 | מהדורה סטנדרטית | ASSISTS.PAGE_FAULT |
| 0xC1 | 0x10 | מהדורה סטנדרטית | ASSISTS.SSE_AVX_MIX |
| 0xC1 | 0x1B | מהדורה סטנדרטית | ASSISTS.ANY |
| 0xC2 | 0x01 | מהדורה סטנדרטית | UOPS_RETIRED.HEAVY |
| 0xC2 | 0x02 | מהדורה סטנדרטית | UOPS_RETIRED.SLOTS |
| 0xC3 | 0x01 | מהדורה סטנדרטית | MACHINE_CLEARS.COUNT |
| 0xC3 | 0x02 | מהדורה סטנדרטית | MACHINE_CLEARS.MEMORY_ORDERING |
| 0xC3 | 0x04 | מהדורה סטנדרטית | MACHINE_CLEARS.SMC |
| 0xC4 | 0x00 | ARCHITECTURAL | BR_INST_RETIRED.ALL_BRANCHES |
| 0xC4 | 0x01 | מהדורה סטנדרטית | BR_INST_RETIRED.COND_TAKEN |
| 0xC4 | 0x02 | מהדורה סטנדרטית | BR_INST_RETIRED.NEAR_CALL |
| 0xC4 | 0x08 | מהדורה סטנדרטית | BR_INST_RETIRED.NEAR_RETURN |
| 0xC4 | 0x10 | מהדורה סטנדרטית | BR_INST_RETIRED.COND_NTAKEN |
| 0xC4 | 0x11 | מהדורה סטנדרטית | BR_INST_RETIRED.COND |
| 0xC4 | 0x20 | מהדורה סטנדרטית | BR_INST_RETIRED.NEAR_TAKEN |
| 0xC4 | 0x40 | מהדורה סטנדרטית | BR_INST_RETIRED.FAR_BRANCH |
| 0xC4 | 0x80 | מהדורה סטנדרטית | BR_INST_RETIRED.INDIRECT |
| 0xC5 | 0x00 | ARCHITECTURAL | BR_MISP_RETIRED.ALL_BRANCHES |
| 0xC5 | 0x01 | מהדורה סטנדרטית | BR_MISP_RETIRED.COND_TAKEN |
| 0xC5 | 0x02 | מהדורה סטנדרטית | BR_MISP_RETIRED.INDIRECT_CALL |
| 0xC5 | 0x08 | מהדורה סטנדרטית | BR_MISP_RETIRED.RET |
| 0xC5 | 0x10 | מהדורה סטנדרטית | BR_MISP_RETIRED.COND_NTAKEN |
| 0xC5 | 0x11 | מהדורה סטנדרטית | BR_MISP_RETIRED.COND |
| 0xC5 | 0x20 | מהדורה סטנדרטית | BR_MISP_RETIRED.NEAR_TAKEN |
| 0xC5 | 0x80 | מהדורה סטנדרטית | BR_MISP_RETIRED.INDIRECT |
| 0xC7 | 0x01 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.SCALAR_DOUBLE |
| 0xC7 | 0x02 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.SCALAR_SINGLE |
| 0xC7 | 0x04 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.128B_PACKED_DOUBLE |
| 0xC7 | 0x08 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.128B_PACKED_SINGLE |
| 0xC7 | 0x10 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.256B_PACKED_DOUBLE |
| 0xC7 | 0x20 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.256B_PACKED_SINGLE |
| 0xC7 | 0x40 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.512B_PACKED_DOUBLE |
| 0xC7 | 0x80 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.512B_PACKED_SINGLE |
| 0xC9 | 0x01 | משופר | RTM_RETIRED.START |
| 0xC9 | 0x02 | משופר | RTM_RETIRED.COMMIT |
| 0xC9 | 0x04 | משופר | RTM_RETIRED.ABORTED |
| 0xC9 | 0x08 | משופר | RTM_RETIRED.ABORTED_MEM |
| 0xC9 | 0x20 | משופר | RTM_RETIRED.ABORTED_UNFRIENDLY |
| 0xC9 | 0x40 | משופר | RTM_RETIRED.ABORTED_MEMTYPE |
| 0xC9 | 0x80 | משופר | RTM_RETIRED.ABORTED_EVENTS |
| 0xCE | 0x01 | מהדורה סטנדרטית | AMX_OPS_RETIRED.INT8 |
| 0xCE | 0x02 | מהדורה סטנדרטית | AMX_OPS_RETIRED.BF16 |
| 0xCF | 0x01 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED2.SCALAR_HALF |
| 0xCF | 0x02 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED2.COMPLEX_SCALAR_HALF |
| 0xCF | 0x03 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED2.SCALAR |
| 0xCF | 0x04 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED2.128B_PACKED_HALF |
| 0xCF | 0x08 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED2.256B_PACKED_HALF |
| 0xCF | 0x10 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED2.512B_PACKED_HALF |
| 0xCF | 0x1C | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED2.VECTOR |
| 0xD0 | 0x11 | מהדורה סטנדרטית | MEM_INST_RETIRED.STLB_MISS_LOADS |
| 0xD0 | 0x12 | מהדורה סטנדרטית | MEM_INST_RETIRED.STLB_MISS_STORES |
| 0xD0 | 0x21 | מהדורה סטנדרטית | MEM_INST_RETIRED.LOCK_LOADS |
| 0xD0 | 0x41 | מהדורה סטנדרטית | MEM_INST_RETIRED.SPLIT_LOADS |
| 0xD0 | 0x42 | מהדורה סטנדרטית | MEM_INST_RETIRED.SPLIT_STORES |
| 0xD0 | 0x81 | מהדורה סטנדרטית | MEM_INST_RETIRED.ALL_LOADS |
| 0xD0 | 0x82 | מהדורה סטנדרטית | MEM_INST_RETIRED.ALL_STORES |
| 0xD0 | 0x83 | מהדורה סטנדרטית | MEM_INST_RETIRED.ANY |
| 0xD1 | 0x01 | מהדורה סטנדרטית | MEM_LOAD_RETIRED.L1_HIT |
| 0xD1 | 0x02 | מהדורה סטנדרטית | MEM_LOAD_RETIRED.L2_HIT |
| 0xD1 | 0x04 | משופר | MEM_LOAD_RETIRED.L3_HIT |
| 0xD1 | 0x08 | מהדורה סטנדרטית | MEM_LOAD_RETIRED.L1_MISS |
| 0xD1 | 0x10 | מהדורה סטנדרטית | MEM_LOAD_RETIRED.L2_MISS |
| 0xD1 | 0x20 | משופר | MEM_LOAD_RETIRED.L3_MISS |
| 0xD1 | 0x40 | מהדורה סטנדרטית | MEM_LOAD_RETIRED.FB_HIT |
| 0xD2 | 0x01 | משופר | MEM_LOAD_L3_HIT_RETIRED.XSNP_MISS |
| 0xD2 | 0x02 | משופר | MEM_LOAD_L3_HIT_RETIRED.XSNP_NO_FWD |
| 0xD2 | 0x04 | משופר | MEM_LOAD_L3_HIT_RETIRED.XSNP_FWD |
| 0xD2 | 0x08 | משופר | MEM_LOAD_L3_HIT_RETIRED.XSNP_NONE |
| 0xD3 | 0x01 | משופר | MEM_LOAD_L3_MISS_RETIRED.LOCAL_DRAM |
| 0xD3 | 0x02 | משופר | MEM_LOAD_L3_MISS_RETIRED.REMOTE_DRAM |
| 0xD3 | 0x04 | משופר | MEM_LOAD_L3_MISS_RETIRED.REMOTE_HITM |
| 0xD3 | 0x08 | משופר | MEM_LOAD_L3_MISS_RETIRED.REMOTE_FWD |
| 0xD4 | 0x04 | מהדורה סטנדרטית | MEM_LOAD_MISC_RETIRED.UC |
| 0xE0 | 0x20 | מהדורה סטנדרטית | MISC2_RETIRED.LFENCE |
| 0xE5 | 0x03 | מהדורה סטנדרטית | MEM_UOP_RETIRED.ANY |
| 0xE7 | 0x03 | מהדורה סטנדרטית | INT_VEC_RETIRED.ADD_128 |
| 0xE7 | 0x0C | מהדורה סטנדרטית | INT_VEC_RETIRED.ADD_256 |
| 0xE7 | 0x10 | מהדורה סטנדרטית | INT_VEC_RETIRED.VNNI_128 |
| 0xE7 | 0x13 | מהדורה סטנדרטית | INT_VEC_RETIRED.128BIT |
| 0xE7 | 0x20 | מהדורה סטנדרטית | INT_VEC_RETIRED.VNNI_256 |
| 0xE7 | 0x40 | מהדורה סטנדרטית | INT_VEC_RETIRED.SHUFFLES |
| 0xE7 | 0x80 | מהדורה סטנדרטית | INT_VEC_RETIRED.MUL_256 |
| 0xE7 | 0xAC | מהדורה סטנדרטית | INT_VEC_RETIRED.256BIT |
| 0xEC | 0x10 | מהדורה סטנדרטית | CPU_CLK_UNHALTED.C01 |
| 0xEC | 0x20 | מהדורה סטנדרטית | CPU_CLK_UNHALTED.C02 |
| 0xEC | 0x40 | מהדורה סטנדרטית | CPU_CLK_UNHALTED.PAUSE |
| 0xEC | 0x70 | מהדורה סטנדרטית | CPU_CLK_UNHALTED.C0_WAIT |
Intel Granite Rapids (GNR)
בטבלה הבאה מפורטים אירועי ה-PMU הנתמכים במעבדי Granite Rapids של Intel מדור 6.
| קוד האירוע | UMask | סוג מעקב PMU | שם האירוע |
|---|---|---|---|
| 0x03 | 0x04 | מהדורה סטנדרטית | LD_BLOCKS.ADDRESS_ALIAS |
| 0x03 | 0x82 | מהדורה סטנדרטית | LD_BLOCKS.STORE_FORWARD |
| 0x03 | 0x88 | מהדורה סטנדרטית | LD_BLOCKS.NO_SR |
| 0x11 | 0x02 | מהדורה סטנדרטית | ITLB_MISSES.WALK_COMPLETED_4K |
| 0x11 | 0x04 | מהדורה סטנדרטית | ITLB_MISSES.WALK_COMPLETED_2M_4M |
| 0x11 | 0x0E | מהדורה סטנדרטית | ITLB_MISSES.WALK_COMPLETED |
| 0x11 | 0x10 | מהדורה סטנדרטית | ITLB_MISSES.WALK_ACTIVE |
| 0x11 | 0x20 | מהדורה סטנדרטית | ITLB_MISSES.STLB_HIT |
| 0x12 | 0x02 | מהדורה סטנדרטית | DTLB_LOAD_MISSES.WALK_COMPLETED_4K |
| 0x12 | 0x04 | מהדורה סטנדרטית | DTLB_LOAD_MISSES.WALK_COMPLETED_2M_4M |
| 0x12 | 0x08 | מהדורה סטנדרטית | DTLB_LOAD_MISSES.WALK_COMPLETED_1G |
| 0x12 | 0x0E | מהדורה סטנדרטית | DTLB_LOAD_MISSES.WALK_COMPLETED |
| 0x12 | 0x10 | מהדורה סטנדרטית | DTLB_LOAD_MISSES.WALK_ACTIVE |
| 0x12 | 0x20 | מהדורה סטנדרטית | DTLB_LOAD_MISSES.STLB_HIT |
| 0x13 | 0x02 | מהדורה סטנדרטית | DTLB_STORE_MISSES.WALK_COMPLETED_4K |
| 0x13 | 0x04 | מהדורה סטנדרטית | DTLB_STORE_MISSES.WALK_COMPLETED_2M_4M |
| 0x13 | 0x08 | מהדורה סטנדרטית | DTLB_STORE_MISSES.WALK_COMPLETED_1G |
| 0x13 | 0x0E | מהדורה סטנדרטית | DTLB_STORE_MISSES.WALK_COMPLETED |
| 0x13 | 0x10 | מהדורה סטנדרטית | DTLB_STORE_MISSES.WALK_ACTIVE |
| 0x13 | 0x20 | מהדורה סטנדרטית | DTLB_STORE_MISSES.STLB_HIT |
| 0x20 | 0x01 | משופר | OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_DATA_RD |
| 0x20 | 0x02 | משופר | OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_CODE_RD |
| 0x20 | 0x04 | משופר | OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_RFO |
| 0x20 | 0x08 | משופר | OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DATA_RD |
| 0x20 | 0x10 | משופר | OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_L3_MISS_DEMAND_DATA_RD |
| 0x21 | 0x01 | משופר | OFFCORE_REQUESTS.DEMAND_DATA_RD |
| 0x21 | 0x02 | משופר | OFFCORE_REQUESTS.DEMAND_CODE_RD |
| 0x21 | 0x04 | משופר | OFFCORE_REQUESTS.DEMAND_RFO |
| 0x21 | 0x08 | משופר | OFFCORE_REQUESTS.DATA_RD |
| 0x21 | 0x10 | משופר | OFFCORE_REQUESTS.L3_MISS_DEMAND_DATA_RD |
| 0x21 | 0x80 | משופר | OFFCORE_REQUESTS.ALL_REQUESTS |
| 0x23 | 0x40 | מהדורה סטנדרטית | L2_TRANS.L2_WB |
| 0x24 | 0x21 | מהדורה סטנדרטית | L2_RQSTS.DEMAND_DATA_RD_MISS |
| 0x24 | 0x22 | מהדורה סטנדרטית | L2_RQSTS.RFO_MISS |
| 0x24 | 0x24 | מהדורה סטנדרטית | L2_RQSTS.CODE_RD_MISS |
| 0x24 | 0x27 | מהדורה סטנדרטית | L2_RQSTS.ALL_DEMAND_MISS |
| 0x24 | 0x28 | מהדורה סטנדרטית | L2_RQSTS.SWPF_MISS |
| 0x24 | 0x30 | מהדורה סטנדרטית | L2_RQSTS.HWPF_MISS |
| 0x24 | 0x3F | מהדורה סטנדרטית | L2_RQSTS.MISS |
| 0x24 | 0xC1 | מהדורה סטנדרטית | L2_RQSTS.DEMAND_DATA_RD_HIT |
| 0x24 | 0xC2 | מהדורה סטנדרטית | L2_RQSTS.RFO_HIT |
| 0x24 | 0xC4 | מהדורה סטנדרטית | L2_RQSTS.CODE_RD_HIT |
| 0x24 | 0xC8 | מהדורה סטנדרטית | L2_RQSTS.SWPF_HIT |
| 0x24 | 0xDF | מהדורה סטנדרטית | L2_RQSTS.HIT |
| 0x24 | 0xE1 | מהדורה סטנדרטית | L2_RQSTS.ALL_DEMAND_DATA_RD |
| 0x24 | 0xE2 | מהדורה סטנדרטית | L2_RQSTS.ALL_RFO |
| 0x24 | 0xE4 | מהדורה סטנדרטית | L2_RQSTS.ALL_CODE_RD |
| 0x24 | 0xE7 | מהדורה סטנדרטית | L2_RQSTS.ALL_DEMAND_REFERENCES |
| 0x24 | 0xF0 | מהדורה סטנדרטית | L2_RQSTS.ALL_HWPF |
| 0x24 | 0xFF | מהדורה סטנדרטית | L2_RQSTS.REFERENCES |
| 0x25 | 0x1F | מהדורה סטנדרטית | L2_LINES_IN.ALL |
| 0x26 | 0x01 | מהדורה סטנדרטית | L2_LINES_OUT.SILENT |
| 0x26 | 0x02 | מהדורה סטנדרטית | L2_LINES_OUT.NON_SILENT |
| 0x26 | 0x04 | מהדורה סטנדרטית | L2_LINES_OUT.USELESS_HWPF |
| 0x2D | 0x01 | משופר | XQ.FULL_CYCLES |
| 0x2E | 0x41 | משופר | LONGEST_LAT_CACHE.MISS |
| 0x2E | 0x4F | משופר | LONGEST_LAT_CACHE.REFERENCE |
| 0x3C | 0x00 | ARCHITECTURAL | CPU_CLK_UNHALTED.THREAD_P |
| 0x3C | 0x01 | ARCHITECTURAL | CPU_CLK_UNHALTED.REF_TSC_P |
| 0x40 | 0x01 | מהדורה סטנדרטית | SW_PREFETCH_ACCESS.NTA |
| 0x40 | 0x02 | מהדורה סטנדרטית | SW_PREFETCH_ACCESS.T0 |
| 0x40 | 0x04 | מהדורה סטנדרטית | SW_PREFETCH_ACCESS.T1_T2 |
| 0x40 | 0x08 | מהדורה סטנדרטית | SW_PREFETCH_ACCESS.PREFETCHW |
| 0x40 | 0xF | מהדורה סטנדרטית | SW_PREFETCH_ACCESS.ANY |
| 0x43 | 0xFD | מהדורה סטנדרטית | MEM_LOAD_COMPLETED.L1_MISS_ANY |
| 0x44 | 0x01 | מהדורה סטנדרטית | MEM_STORE_RETIRED.L2_HIT |
| 0x47 | 0x02 | מהדורה סטנדרטית | MEMORY_ACTIVITY.CYCLES_L1D_MISS |
| 0x47 | 0x03 | מהדורה סטנדרטית | MEMORY_ACTIVITY.STALLS_L1D_MISS |
| 0x47 | 0x05 | מהדורה סטנדרטית | MEMORY_ACTIVITY.STALLS_L2_MISS |
| 0x47 | 0x09 | משופר | MEMORY_ACTIVITY.STALLS_L3_MISS |
| 0x48 | 0x01 | מהדורה סטנדרטית | L1D_PEND_MISS.PENDING |
| 0x48 | 0x02 | מהדורה סטנדרטית | L1D_PEND_MISS.FB_FULL |
| 0x48 | 0x04 | מהדורה סטנדרטית | L1D_PEND_MISS.L2_STALLS |
| 0x4C | 0x01 | מהדורה סטנדרטית | LOAD_HIT_PREFETCH.SWPF |
| 0x51 | 0x01 | מהדורה סטנדרטית | L1D.REPLACEMENT |
| 0x51 | 0x20 | מהדורה סטנדרטית | L1D.HWPF_MISS |
| 0x54 | 0x01 | משופר | TX_MEM.ABORT_CONFLICT |
| 0x54 | 0x02 | משופר | TX_MEM.ABORT_CAPACITY_WRITE |
| 0x54 | 0x80 | משופר | TX_MEM.ABORT_CAPACITY_READ |
| 0x60 | 0x01 | מהדורה סטנדרטית | BACLEARS.ANY |
| 0x61 | 0x02 | מהדורה סטנדרטית | DSB2MITE_SWITCHES.PENALTY_CYCLES |
| 0x75 | 0x01 | מהדורה סטנדרטית | INST_DECODED.DECODERS |
| 0x76 | 0x01 | מהדורה סטנדרטית | UOPS_DECODED.DEC0_UOPS |
| 0x79 | 0x04 | מהדורה סטנדרטית | IDQ.MITE_CYCLES_ANY |
| 0x79 | 0x08 | מהדורה סטנדרטית | IDQ.DSB_CYCLES_ANY |
| 0x79 | 0x20 | מהדורה סטנדרטית | IDQ.MS_CYCLES_ANY |
| 0x80 | 0x04 | מהדורה סטנדרטית | ICACHE_DATA.STALLS |
| 0x83 | 0x04 | מהדורה סטנדרטית | ICACHE_TAG.STALLS |
| 0x87 | 0x01 | מהדורה סטנדרטית | DECODE.LCP |
| 0x87 | 0x02 | מהדורה סטנדרטית | DECODE.MS_BUSY |
| 0x9C | 0x01 | מהדורה סטנדרטית | IDQ_UOPS_NOT_DELIVERED.CORE |
| 0xA2 | 0x02 | מהדורה סטנדרטית | RESOURCE_STALLS.SCOREBOARD |
| 0xA2 | 0x08 | מהדורה סטנדרטית | RESOURCE_STALLS.SB |
| 0xA3 | 0x01 | מהדורה סטנדרטית | CYCLE_ACTIVITY.CYCLES_L2_MISS |
| 0xA3 | 0x02 | משופר | CYCLE_ACTIVITY.CYCLES_L3_MISS |
| 0xA3 | 0x04 | מהדורה סטנדרטית | CYCLE_ACTIVITY.STALLS_TOTAL |
| 0xA3 | 0x05 | מהדורה סטנדרטית | CYCLE_ACTIVITY.STALLS_L2_MISS |
| 0xA3 | 0x06 | משופר | CYCLE_ACTIVITY.STALLS_L3_MISS |
| 0xA3 | 0x08 | מהדורה סטנדרטית | CYCLE_ACTIVITY.CYCLES_L1D_MISS |
| 0xA3 | 0x0C | מהדורה סטנדרטית | CYCLE_ACTIVITY.STALLS_L1D_MISS |
| 0xA3 | 0x10 | מהדורה סטנדרטית | CYCLE_ACTIVITY.CYCLES_MEM_ANY |
| 0xA4 | 0x01 | ARCHITECTURAL | TOPDOWN.SLOTS_P |
| 0xA4 | 0x02 | מהדורה סטנדרטית | TOPDOWN.BACKEND_BOUND_SLOTS |
| 0xA4 | 0x04 | מהדורה סטנדרטית | TOPDOWN.BAD_SPEC_SLOTS |
| 0xA4 | 0x08 | מהדורה סטנדרטית | TOPDOWN.BR_MISPREDICT_SLOTS |
| 0xA4 | 0x10 | מהדורה סטנדרטית | TOPDOWN.MEMORY_BOUND_SLOTS |
| 0xA5 | 0x01 | מהדורה סטנדרטית | RS.EMPTY_RESOURCE |
| 0xA5 | 0x07 | מהדורה סטנדרטית | RS.EMPTY |
| 0xA6 | 0x02 | מהדורה סטנדרטית | EXE_ACTIVITY.1_PORTS_UTIL |
| 0xA6 | 0x04 | מהדורה סטנדרטית | EXE_ACTIVITY.2_PORTS_UTIL |
| 0xA6 | 0x08 | מהדורה סטנדרטית | EXE_ACTIVITY.3_PORTS_UTIL |
| 0xA6 | 0x10 | מהדורה סטנדרטית | EXE_ACTIVITY.4_PORTS_UTIL |
| 0xA6 | 0x21 | מהדורה סטנדרטית | EXE_ACTIVITY.BOUND_ON_LOADS |
| 0xA6 | 0x40 | מהדורה סטנדרטית | EXE_ACTIVITY.BOUND_ON_STORES |
| 0xA6 | 0x80 | מהדורה סטנדרטית | EXE_ACTIVITY.EXE_BOUND_0_PORTS |
| 0xA6 | 0xC | מהדורה סטנדרטית | EXE_ACTIVITY.2_3_PORTS_UTIL |
| 0xA8 | 0x01 | מהדורה סטנדרטית | LSD.CYCLES_ACTIVE |
| 0xAD | 0x01 | מהדורה סטנדרטית | INT_MISC.RECOVERY_CYCLES |
| 0xAD | 0x10 | מהדורה סטנדרטית | INT_MISC.UOP_DROPPING |
| 0xAD | 0x20 | מהדורה סטנדרטית | INT_MISC.MBA_STALLS |
| 0xAD | 0x80 | מהדורה סטנדרטית | INT_MISC.CLEAR_RESTEER_CYCLES |
| 0xAE | 0x01 | מהדורה סטנדרטית | UOPS_ISSUED.ANY |
| 0xB0 | 0x01 | מהדורה סטנדרטית | ARITH.FPDIV_ACTIVE |
| 0xB0 | 0x08 | מהדורה סטנדרטית | ARITH.IDIV_ACTIVE |
| 0xB0 | 0x09 | מהדורה סטנדרטית | ARITH.DIV_ACTIVE |
| 0xB1 | 0x01 | מהדורה סטנדרטית | UOPS_EXECUTED.CYCLES_GE_1 |
| 0xB1 | 0x02 | מהדורה סטנדרטית | UOPS_EXECUTED.CORE |
| 0xB1 | 0x10 | מהדורה סטנדרטית | UOPS_EXECUTED.X87 |
| 0xB2 | 0x01 | מהדורה סטנדרטית | UOPS_DISPATCHED.PORT_0 |
| 0xB2 | 0x02 | מהדורה סטנדרטית | UOPS_DISPATCHED.PORT_1 |
| 0xB2 | 0x04 | מהדורה סטנדרטית | UOPS_DISPATCHED.PORT_2_3_10 |
| 0xB2 | 0x10 | מהדורה סטנדרטית | UOPS_DISPATCHED.PORT_4_9 |
| 0xB2 | 0x20 | מהדורה סטנדרטית | UOPS_DISPATCHED.PORT_5_11 |
| 0xB2 | 0x40 | מהדורה סטנדרטית | UOPS_DISPATCHED.PORT_6 |
| 0xB2 | 0x80 | מהדורה סטנדרטית | UOPS_DISPATCHED.PORT_7_8 |
| 0xB3 | 0x01 | מהדורה סטנדרטית | FP_ARITH_DISPATCHED.PORT_0 |
| 0xB3 | 0x02 | מהדורה סטנדרטית | FP_ARITH_DISPATCHED.PORT_1 |
| 0xB3 | 0x04 | מהדורה סטנדרטית | FP_ARITH_DISPATCHED.PORT_5 |
| 0xB7 | 0x02 | מהדורה סטנדרטית | EXE.AMX_BUSY |
| 0xC0 | 0x00 | ARCHITECTURAL | INST_RETIRED.ANY_P |
| 0xC0 | 0x02 | מהדורה סטנדרטית | INST_RETIRED.NOP |
| 0xC0 | 0x08 | מהדורה סטנדרטית | INST_RETIRED.REP_ITERATION |
| 0xC0 | 0x10 | מהדורה סטנדרטית | INST_RETIRED.MACRO_FUSED |
| 0xC1 | 0x02 | מהדורה סטנדרטית | ASSISTS.FP |
| 0xC1 | 0x04 | מהדורה סטנדרטית | ASSISTS.HARDWARE |
| 0xC1 | 0x08 | מהדורה סטנדרטית | ASSISTS.PAGE_FAULT |
| 0xC1 | 0x10 | מהדורה סטנדרטית | ASSISTS.SSE_AVX_MIX |
| 0xC1 | 0x1B | מהדורה סטנדרטית | ASSISTS.ANY |
| 0xC2 | 0x01 | מהדורה סטנדרטית | UOPS_RETIRED.HEAVY |
| 0xC2 | 0x02 | מהדורה סטנדרטית | UOPS_RETIRED.SLOTS |
| 0xC3 | 0x01 | מהדורה סטנדרטית | MACHINE_CLEARS.COUNT |
| 0xC3 | 0x02 | מהדורה סטנדרטית | MACHINE_CLEARS.MEMORY_ORDERING |
| 0xC3 | 0x04 | מהדורה סטנדרטית | MACHINE_CLEARS.SMC |
| 0xC4 | 0x00 | ARCHITECTURAL | BR_INST_RETIRED.ALL_BRANCHES |
| 0xC4 | 0x01 | מהדורה סטנדרטית | BR_INST_RETIRED.COND_TAKEN |
| 0xC4 | 0x02 | מהדורה סטנדרטית | BR_INST_RETIRED.NEAR_CALL |
| 0xC4 | 0x08 | מהדורה סטנדרטית | BR_INST_RETIRED.NEAR_RETURN |
| 0xC4 | 0x10 | מהדורה סטנדרטית | BR_INST_RETIRED.COND_NTAKEN |
| 0xC4 | 0x11 | מהדורה סטנדרטית | BR_INST_RETIRED.COND |
| 0xC4 | 0x20 | מהדורה סטנדרטית | BR_INST_RETIRED.NEAR_TAKEN |
| 0xC4 | 0x40 | מהדורה סטנדרטית | BR_INST_RETIRED.FAR_BRANCH |
| 0xC4 | 0x80 | מהדורה סטנדרטית | BR_INST_RETIRED.INDIRECT |
| 0xC5 | 0x00 | ARCHITECTURAL | BR_MISP_RETIRED.ALL_BRANCHES |
| 0xC5 | 0x01 | מהדורה סטנדרטית | BR_MISP_RETIRED.COND_TAKEN |
| 0xC5 | 0x02 | מהדורה סטנדרטית | BR_MISP_RETIRED.INDIRECT_CALL |
| 0xC5 | 0x08 | מהדורה סטנדרטית | BR_MISP_RETIRED.RET |
| 0xC5 | 0x10 | מהדורה סטנדרטית | BR_MISP_RETIRED.COND_NTAKEN |
| 0xC5 | 0x11 | מהדורה סטנדרטית | BR_MISP_RETIRED.COND |
| 0xC5 | 0x20 | מהדורה סטנדרטית | BR_MISP_RETIRED.NEAR_TAKEN |
| 0xC5 | 0x41 | מהדורה סטנדרטית | BR_MISP_RETIRED.COND_TAKEN_COST |
| 0xC5 | 0x42 | מהדורה סטנדרטית | BR_MISP_RETIRED.INDIRECT_CALL_COST |
| 0xC5 | 0x44 | מהדורה סטנדרטית | BR_MISP_RETIRED.ALL_BRANCHES_COST |
| 0xC5 | 0x48 | מהדורה סטנדרטית | BR_MISP_RETIRED.RET_COST |
| 0xC5 | 0x50 | מהדורה סטנדרטית | BR_MISP_RETIRED.COND_NTAKEN_COST |
| 0xC5 | 0x51 | מהדורה סטנדרטית | BR_MISP_RETIRED.COND_COST |
| 0xC5 | 0x60 | מהדורה סטנדרטית | BR_MISP_RETIRED.NEAR_TAKEN_COST |
| 0xC5 | 0x80 | מהדורה סטנדרטית | BR_MISP_RETIRED.INDIRECT |
| 0xC5 | 0xC0 | מהדורה סטנדרטית | BR_MISP_RETIRED.INDIRECT_COST |
| 0xC7 | 0x01 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.SCALAR_DOUBLE |
| 0xC7 | 0x02 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.SCALAR_SINGLE |
| 0xC7 | 0x03 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.SCALAR |
| 0xC7 | 0x04 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.128B_PACKED_DOUBLE |
| 0xC7 | 0x08 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.128B_PACKED_SINGLE |
| 0xC7 | 0x10 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.256B_PACKED_DOUBLE |
| 0xC7 | 0x18 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.4_FLOPS |
| 0xC7 | 0x20 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.256B_PACKED_SINGLE |
| 0xC7 | 0x40 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.512B_PACKED_DOUBLE |
| 0xC7 | 0x60 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.8_FLOPS |
| 0xC7 | 0x80 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.512B_PACKED_SINGLE |
| 0xC7 | 0xFC | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED.VECTOR |
| 0xC9 | 0x01 | משופר | RTM_RETIRED.START |
| 0xC9 | 0x02 | משופר | RTM_RETIRED.COMMIT |
| 0xC9 | 0x04 | משופר | RTM_RETIRED.ABORTED |
| 0xC9 | 0x08 | משופר | RTM_RETIRED.ABORTED_MEM |
| 0xC9 | 0x20 | משופר | RTM_RETIRED.ABORTED_UNFRIENDLY |
| 0xC9 | 0x40 | משופר | RTM_RETIRED.ABORTED_MEMTYPE |
| 0xC9 | 0x80 | משופר | RTM_RETIRED.ABORTED_EVENTS |
| 0xCF | 0x01 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED2.SCALAR_HALF |
| 0xCF | 0x02 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED2.COMPLEX_SCALAR_HALF |
| 0xCF | 0x03 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED2.SCALAR |
| 0xCF | 0x04 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED2.128B_PACKED_HALF |
| 0xCF | 0x08 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED2.256B_PACKED_HALF |
| 0xCF | 0x10 | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED2.512B_PACKED_HALF |
| 0xCF | 0x1C | מהדורה סטנדרטית | FP_ARITH_INST_RETIRED2.VECTOR |
| 0xD0 | 0x09 | מהדורה סטנדרטית | MEM_INST_RETIRED.STLB_HIT_LOADS |
| 0xD0 | 0x0A | מהדורה סטנדרטית | MEM_INST_RETIRED.STLB_HIT_STORES |
| 0xD0 | 0x11 | מהדורה סטנדרטית | MEM_INST_RETIRED.STLB_MISS_LOADS |
| 0xD0 | 0x12 | מהדורה סטנדרטית | MEM_INST_RETIRED.STLB_MISS_STORES |
| 0xD0 | 0x21 | מהדורה סטנדרטית | MEM_INST_RETIRED.LOCK_LOADS |
| 0xD0 | 0x41 | מהדורה סטנדרטית | MEM_INST_RETIRED.SPLIT_LOADS |
| 0xD0 | 0x42 | מהדורה סטנדרטית | MEM_INST_RETIRED.SPLIT_STORES |
| 0xD0 | 0x81 | מהדורה סטנדרטית | MEM_INST_RETIRED.ALL_LOADS |
| 0xD0 | 0x82 | מהדורה סטנדרטית | MEM_INST_RETIRED.ALL_STORES |
| 0xD0 | 0x83 | מהדורה סטנדרטית | MEM_INST_RETIRED.ANY |
| 0xD1 | 0x01 | מהדורה סטנדרטית | MEM_LOAD_RETIRED.L1_HIT |
| 0xD1 | 0x02 | מהדורה סטנדרטית | MEM_LOAD_RETIRED.L2_HIT |
| 0xD1 | 0x04 | משופר | MEM_LOAD_RETIRED.L3_HIT |
| 0xD1 | 0x08 | מהדורה סטנדרטית | MEM_LOAD_RETIRED.L1_MISS |
| 0xD1 | 0x10 | מהדורה סטנדרטית | MEM_LOAD_RETIRED.L2_MISS |
| 0xD1 | 0x20 | משופר | MEM_LOAD_RETIRED.L3_MISS |
| 0xD1 | 0x40 | מהדורה סטנדרטית | MEM_LOAD_RETIRED.FB_HIT |
| 0xD2 | 0x01 | משופר | MEM_LOAD_L3_HIT_RETIRED.XSNP_MISS |
| 0xD2 | 0x02 | משופר | MEM_LOAD_L3_HIT_RETIRED.XSNP_NO_FWD |
| 0xD2 | 0x04 | משופר | MEM_LOAD_L3_HIT_RETIRED.XSNP_FWD |
| 0xD2 | 0x08 | משופר | MEM_LOAD_L3_HIT_RETIRED.XSNP_NONE |
| 0xD3 | 0x01 | משופר | MEM_LOAD_L3_MISS_RETIRED.LOCAL_DRAM |
| 0xD3 | 0x02 | משופר | MEM_LOAD_L3_MISS_RETIRED.REMOTE_DRAM |
| 0xD3 | 0x04 | משופר | MEM_LOAD_L3_MISS_RETIRED.REMOTE_HITM |
| 0xD3 | 0x08 | משופר | MEM_LOAD_L3_MISS_RETIRED.REMOTE_FWD |
| 0xD4 | 0x04 | מהדורה סטנדרטית | MEM_LOAD_MISC_RETIRED.UC |
| 0xE0 | 0x20 | מהדורה סטנדרטית | MISC2_RETIRED.LFENCE |
| 0xE5 | 0x03 | מהדורה סטנדרטית | MEM_UOP_RETIRED.ANY |
| 0xE7 | 0x03 | מהדורה סטנדרטית | INT_VEC_RETIRED.ADD_128 |
| 0xE7 | 0x0C | מהדורה סטנדרטית | INT_VEC_RETIRED.ADD_256 |
| 0xE7 | 0x10 | מהדורה סטנדרטית | INT_VEC_RETIRED.VNNI_128 |
| 0xE7 | 0x13 | מהדורה סטנדרטית | INT_VEC_RETIRED.128BIT |
| 0xE7 | 0x20 | מהדורה סטנדרטית | INT_VEC_RETIRED.VNNI_256 |
| 0xE7 | 0x40 | מהדורה סטנדרטית | INT_VEC_RETIRED.SHUFFLES |
| 0xE7 | 0x80 | מהדורה סטנדרטית | INT_VEC_RETIRED.MUL_256 |
| 0xE7 | 0xAC | מהדורה סטנדרטית | INT_VEC_RETIRED.256BIT |
| 0xEC | 0x10 | מהדורה סטנדרטית | CPU_CLK_UNHALTED.C01 |
| 0xEC | 0x20 | מהדורה סטנדרטית | CPU_CLK_UNHALTED.C02 |
| 0xEC | 0x40 | מהדורה סטנדרטית | CPU_CLK_UNHALTED.PAUSE |
| 0xEC | 0x70 | מהדורה סטנדרטית | CPU_CLK_UNHALTED.C0_WAIT |
תמחור
אין עלויות שקשורות לשימוש ב-PMU במכונת חישוב.
מגבלות
אפשר להפעיל את סוג ה-PMU המשופר רק במופעי C4 או M4 שמשתמשים באחד מסוגי המכונות הבאים:
כל סוג מכונה C4 עם 144 או 288 מעבדים וירטואליים
אחד מסוגי המכונות הבאים של M4:
m4-megamem-112m4-megamem-224m4-ultramem-56m4-ultramem-112m4-ultramem-224