├── Decompilation ├── scar.dsl └── zephyrus.dsl ├── ETW ├── SCAR.csv └── zephyrus.csv ├── LatencyMon ├── SCAR 15.txt ├── Zephyrus.txt └── latencymon.png ├── Other └── CPU0.md └── README.md /ETW/SCAR.csv: -------------------------------------------------------------------------------- 1 | Event Name, Type, Event ID, Version, Channel, Level, Opcode, Task, Keyword, PID, TID, Processor Number, Instance ID, Parent Instance ID, Activity ID, Related Activity ID, Clock-Time, Kernel(ms), User(ms), User Data 2 | EventTrace, Header, 0, 2, 0, 0, 0, 0, 0x0000000000000000, 0x00000970, 0x00005934, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024027051511060, 0, 0, 8192, 83951626, 26100, 20, 134024029694124207, 156250, 0, 0x0, 13, 1, 8, 0, 2918, 0x9, 0x6, 134023857865000000, 10000000, 134024027051511060, 0x1, 0, "ACPITrace", "C:\Temp\acpi_providers.etl" 3 | EventTrace, PartitionInfoExtensionV2, 0, 2, 0, 0, 80, 0, 0x0000000000000000, 0x00000970, 0x00005934, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024027051511060, 0, 0, 0, 0, 0, 0, "", "", 0x00000000000000000000000000000000000000000000000000000000 4 | EventTrace, BuildInfo, 0, 2, 0, 0, 66, 0, 0x0000000000000000, 0xFFFFFFFF, 0xFFFFFFFF, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024027051511060, 0, 0, "26100.1.amd64fre.ge_release.240331-1435" 5 | EventTrace, DbgIdRSDS, 0, 2, 0, 0, 64, 0, 0x0000000000000000, 0xFFFFFFFF, 0xFFFFFFFF, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024027051511060, 0, 0, {953a8de8-80b0-818c-32da-2dec1d79c2d9}, 1, "ntkrnlmp.pdb" 6 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027204027873, 8940, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 7 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027204029429, 8940, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 1 8 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027204029485, 8940, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 9 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027204031124, 8940, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 10 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000000, 0x00000000, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024027290917802, 13613820, 0, 10, "\_GPE._L02", "started ", 0 11 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024027290927629, 8550, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "started ", 0 12 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027290932512, 435, 0, 10, "\_GPE._L02", "finished ", 2 13 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027290932769, 435, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "finished ", 1 14 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024027290932912, 8550, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "started ", 0 15 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024027290933133, 8550, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "finished ", 0 16 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024027290933423, 8550, 0, 24, "\_SB.PC00.LPCB.BAT0._BIF", "started ", 0 17 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027290938289, 8550, 0, 24, "\_SB.PC00.LPCB.BAT0._BIF", "finished ", 0 18 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027290938399, 8550, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 19 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027290939651, 8550, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 20 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027290939685, 8550, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 21 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027290940946, 8550, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 22 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027290941079, 8550, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 23 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027290942332, 8550, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 1 24 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027290942359, 8550, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 25 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027290943335, 8550, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 26 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027301042118, 9000, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 27 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027301043887, 9000, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 28 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027301043980, 9000, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 29 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027301050669, 9000, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 30 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024027315051227, 7125, 0, 19, "\_SB.PC00.GFX0._PS0", "started ", 0 31 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027315051505, 450, 0, 19, "\_SB.PC00.GFX0._PS0", "finished ", 0 32 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024027315155404, 7125, 0, 19, "\_SB.PC00.GFX0._DOS", "started ", 0 33 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024027315156298, 7125, 0, 19, "\_SB.PC00.GFX0._DOS", "finished ", 0 34 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000014, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024027330733719, 5985, 0, 19, "\_SB.PC00.GFX0._PS3", "started ", 0 35 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024027330735092, 450, 0, 19, "\_SB.PC00.GFX0._PS3", "finished ", 0 36 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027504662896, 18165, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 37 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027504664691, 18165, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 38 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027504664791, 18165, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 39 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027504666920, 18165, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 40 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 5, , , {00000000-0000-0000-0000-000000000000}, , 134024027607550064, 7140, 0, 19, "\_SB.PC00.GFX0._PS0", "started ", 0 41 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027607550503, 450, 0, 19, "\_SB.PC00.GFX0._PS0", "finished ", 0 42 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027607657368, 7140, 0, 19, "\_SB.PC00.GFX0._DOS", "started ", 0 43 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027607658447, 7140, 0, 19, "\_SB.PC00.GFX0._DOS", "finished ", 0 44 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000014, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027623134006, 5985, 0, 19, "\_SB.PC00.GFX0._PS3", "started ", 0 45 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 5, , , {00000000-0000-0000-0000-000000000000}, , 134024027623134400, 450, 0, 19, "\_SB.PC00.GFX0._PS3", "finished ", 0 46 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027632726854, 18300, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 47 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027632728695, 18300, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 48 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027632728793, 18300, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 49 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027632730977, 18300, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 50 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000000, 0x00000000, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024027654496591, 13647255, 0, 10, "\_GPE._L02", "started ", 0 51 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 9, , , {00000000-0000-0000-0000-000000000000}, , 134024027654504935, 18330, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "started ", 0 52 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027654512988, 450, 0, 10, "\_GPE._L02", "finished ", 2 53 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027654513185, 450, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "finished ", 1 54 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 9, , , {00000000-0000-0000-0000-000000000000}, , 134024027654513273, 18330, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "started ", 0 55 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 9, , , {00000000-0000-0000-0000-000000000000}, , 134024027654513562, 18330, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "finished ", 0 56 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 9, , , {00000000-0000-0000-0000-000000000000}, , 134024027654513803, 18330, 0, 24, "\_SB.PC00.LPCB.BAT0._BIF", "started ", 0 57 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 9, , , {00000000-0000-0000-0000-000000000000}, , 134024027654518297, 18330, 0, 24, "\_SB.PC00.LPCB.BAT0._BIF", "finished ", 1 58 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 9, , , {00000000-0000-0000-0000-000000000000}, , 134024027654518372, 18330, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 59 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 9, , , {00000000-0000-0000-0000-000000000000}, , 134024027654519808, 18330, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 60 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 9, , , {00000000-0000-0000-0000-000000000000}, , 134024027654519860, 18330, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 61 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 9, , , {00000000-0000-0000-0000-000000000000}, , 134024027654521613, 18330, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 62 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027654521914, 18330, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 63 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027654523393, 18330, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 64 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027654523455, 18330, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 65 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027654525007, 18330, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 66 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027664521490, 9255, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 67 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027664523238, 9255, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 68 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027664523318, 9255, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 69 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027664525253, 9255, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 70 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000016C0, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027805729448, 10050, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 71 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000016C0, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024027805731327, 10050, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 72 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000016C0, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024027805731508, 10050, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 73 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000016C0, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024027805733452, 10050, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 1 74 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024027904673858, 7155, 0, 19, "\_SB.PC00.GFX0._PS0", "started ", 0 75 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027904674133, 450, 0, 19, "\_SB.PC00.GFX0._PS0", "finished ", 0 76 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027904780412, 7155, 0, 19, "\_SB.PC00.GFX0._DOS", "started ", 0 77 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027904781220, 7155, 0, 19, "\_SB.PC00.GFX0._DOS", "finished ", 0 78 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000014, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024027920154137, 5985, 0, 19, "\_SB.PC00.GFX0._PS3", "started ", 0 79 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024027920154309, 450, 0, 19, "\_SB.PC00.GFX0._PS3", "finished ", 0 80 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024028009313526, 8670, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 81 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024028009315148, 8670, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 82 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024028009315215, 8670, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 83 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024028009317004, 8670, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 84 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000000, 0x00000000, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024028048493318, 13684515, 0, 10, "\_GPE._L02", "started ", 0 85 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028048501850, 9510, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "started ", 0 86 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024028048507363, 450, 0, 10, "\_GPE._L02", "finished ", 2 87 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024028048507532, 450, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "finished ", 0 88 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028048507671, 9510, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "started ", 0 89 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028048507880, 9510, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "finished ", 0 90 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028048507978, 9510, 0, 24, "\_SB.PC00.LPCB.BAT0._BIF", "started ", 0 91 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028048512025, 9510, 0, 24, "\_SB.PC00.LPCB.BAT0._BIF", "finished ", 0 92 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028048512072, 9510, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 93 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028048513337, 9510, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 94 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028048513370, 9510, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 95 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028048515732, 9510, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 96 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028048516193, 9510, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 97 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028048517441, 9510, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 98 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028048517465, 9510, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 99 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028048518416, 9510, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 100 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028058617450, 8685, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 101 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028058618928, 8685, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 102 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028058618986, 8685, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 103 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028058620724, 8685, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 104 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028189036980, 7185, 0, 19, "\_SB.PC00.GFX0._PS0", "started ", 0 105 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024028189037287, 450, 0, 19, "\_SB.PC00.GFX0._PS0", "finished ", 0 106 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024028189142792, 7185, 0, 19, "\_SB.PC00.GFX0._DOS", "started ", 0 107 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024028189143618, 7185, 0, 19, "\_SB.PC00.GFX0._DOS", "finished ", 0 108 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000014, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024028204517880, 5985, 0, 19, "\_SB.PC00.GFX0._PS3", "started ", 0 109 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 12, , , {00000000-0000-0000-0000-000000000000}, , 134024028204518149, 450, 0, 19, "\_SB.PC00.GFX0._PS3", "finished ", 0 110 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028231185769, 8775, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 111 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028231187359, 8775, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 112 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028231187416, 8775, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 113 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028231189056, 8775, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 114 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028404110564, 18900, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 115 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028404112317, 18900, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 116 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028404112401, 18900, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 117 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028404114393, 18900, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 118 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000000, 0x00000000, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028427219077, 11969340, 0, 10, "\_GPE._L02", "started ", 0 119 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 2, , , {00000000-0000-0000-0000-000000000000}, , 134024028427227218, 8850, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "started ", 0 120 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028427233829, 450, 0, 10, "\_GPE._L02", "finished ", 2 121 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028427234024, 450, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "finished ", 1 122 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024028427234179, 8850, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "started ", 0 123 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024028427234398, 8850, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "finished ", 0 124 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024028427234519, 8850, 0, 24, "\_SB.PC00.LPCB.BAT0._BIF", "started ", 0 125 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024028427239513, 8850, 0, 24, "\_SB.PC00.LPCB.BAT0._BIF", "finished ", 0 126 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024028427239581, 8850, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 127 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024028427240874, 8850, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 128 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024028427240912, 8850, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 129 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024028427242491, 8850, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 130 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028427242721, 8850, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 131 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028427244165, 8850, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 1 132 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028427244214, 8850, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 133 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028427245523, 8850, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 134 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028437341862, 8850, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 135 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028437343743, 8850, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 136 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028437343850, 8850, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 137 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024028437346021, 8850, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 138 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024028491533208, 7215, 0, 19, "\_SB.PC00.GFX0._PS0", "started ", 0 139 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028491533510, 450, 0, 19, "\_SB.PC00.GFX0._PS0", "finished ", 0 140 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028491639741, 7215, 0, 19, "\_SB.PC00.GFX0._DOS", "started ", 0 141 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028491640636, 7215, 0, 19, "\_SB.PC00.GFX0._DOS", "finished ", 0 142 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000014, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024028506981650, 6000, 0, 19, "\_SB.PC00.GFX0._PS3", "started ", 0 143 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024028506981782, 450, 0, 19, "\_SB.PC00.GFX0._PS3", "finished ", 0 144 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 1, , , {00000000-0000-0000-0000-000000000000}, , 134024028640950329, 9060, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 145 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 1, , , {00000000-0000-0000-0000-000000000000}, , 134024028640952119, 9060, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 146 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 1, , , {00000000-0000-0000-0000-000000000000}, , 134024028640952225, 9060, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 147 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 5, , , {00000000-0000-0000-0000-000000000000}, , 134024028640954943, 9060, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 148 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 1, , , {00000000-0000-0000-0000-000000000000}, , 134024028815857086, 7230, 0, 19, "\_SB.PC00.GFX0._PS0", "started ", 0 149 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 5, , , {00000000-0000-0000-0000-000000000000}, , 134024028815857483, 450, 0, 19, "\_SB.PC00.GFX0._PS0", "finished ", 0 150 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028815963210, 7230, 0, 19, "\_SB.PC00.GFX0._DOS", "started ", 0 151 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028815964241, 7230, 0, 19, "\_SB.PC00.GFX0._DOS", "finished ", 0 152 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000014, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028831453342, 6000, 0, 19, "\_SB.PC00.GFX0._PS3", "started ", 0 153 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 5, , , {00000000-0000-0000-0000-000000000000}, , 134024028831453552, 450, 0, 19, "\_SB.PC00.GFX0._PS3", "finished ", 0 154 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 1, , , {00000000-0000-0000-0000-000000000000}, , 134024028832866977, 9540, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 155 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 5, , , {00000000-0000-0000-0000-000000000000}, , 134024028832868891, 9540, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 156 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 5, , , {00000000-0000-0000-0000-000000000000}, , 134024028832869088, 9540, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 157 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 5, , , {00000000-0000-0000-0000-000000000000}, , 134024028832871296, 9540, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 1 158 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000000, 0x00000000, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024028836334398, 13753380, 0, 10, "\_GPE._L02", "started ", 0 159 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 1, , , {00000000-0000-0000-0000-000000000000}, , 134024028836342551, 9540, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "started ", 0 160 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 5, , , {00000000-0000-0000-0000-000000000000}, , 134024028836350298, 450, 0, 10, "\_GPE._L02", "finished ", 1 161 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 5, , , {00000000-0000-0000-0000-000000000000}, , 134024028836350492, 450, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "finished ", 1 162 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028836350999, 9540, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "started ", 0 163 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028836351234, 9540, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "finished ", 0 164 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028836351347, 9540, 0, 24, "\_SB.PC00.LPCB.BAT0._BIF", "started ", 0 165 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028836355692, 9540, 0, 24, "\_SB.PC00.LPCB.BAT0._BIF", "finished ", 0 166 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028836355755, 9540, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 167 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028836357152, 9540, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 168 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028836357193, 9540, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 169 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028836358794, 9540, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 170 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028836359047, 9540, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 171 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028836360359, 9540, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 172 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028836360395, 9540, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 173 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00005138, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024028836361553, 9540, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 174 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 5, , , {00000000-0000-0000-0000-000000000000}, , 134024028846452709, 9225, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 175 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 5, , , {00000000-0000-0000-0000-000000000000}, , 134024028846454587, 9225, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 176 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 5, , , {00000000-0000-0000-0000-000000000000}, , 134024028846454689, 9225, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 177 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000054BC, 5, , , {00000000-0000-0000-0000-000000000000}, , 134024028846456910, 9225, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 178 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000016C0, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029005817050, 10590, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 179 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000016C0, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029005819334, 10590, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 180 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000016C0, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029005819431, 10590, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 181 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000016C0, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029005821869, 10590, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 182 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029129686616, 7245, 0, 19, "\_SB.PC00.GFX0._PS0", "started ", 0 183 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029129686953, 450, 0, 19, "\_SB.PC00.GFX0._PS0", "finished ", 0 184 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029129792208, 7245, 0, 19, "\_SB.PC00.GFX0._DOS", "started ", 0 185 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029129793058, 7245, 0, 19, "\_SB.PC00.GFX0._DOS", "finished ", 0 186 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000014, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029145250764, 6015, 0, 19, "\_SB.PC00.GFX0._PS3", "started ", 0 187 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029145250904, 450, 0, 19, "\_SB.PC00.GFX0._PS3", "finished ", 0 188 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029209363065, 31980, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 189 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029209364541, 31980, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 190 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029209364604, 31980, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 191 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029209366288, 31980, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 192 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029226176640, 32025, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 193 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029226178194, 32025, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 194 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029226178262, 32025, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 195 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029226179992, 32025, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 196 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000000, 0x00000000, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024029230287912, 13790790, 0, 10, "\_GPE._L02", "started ", 0 197 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 3, , , {00000000-0000-0000-0000-000000000000}, , 134024029230295869, 32025, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "started ", 0 198 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029230303514, 450, 0, 10, "\_GPE._L02", "finished ", 2 199 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029230303714, 450, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "finished ", 1 200 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029230304185, 32025, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "started ", 0 201 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029230304436, 32025, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "finished ", 0 202 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029230304579, 32025, 0, 24, "\_SB.PC00.LPCB.BAT0._BIF", "started ", 0 203 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029230309528, 32025, 0, 24, "\_SB.PC00.LPCB.BAT0._BIF", "finished ", 0 204 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029230310214, 32025, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 205 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029230311774, 32025, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 206 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029230311868, 32025, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 207 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029230313673, 32025, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 1 208 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 3, , , {00000000-0000-0000-0000-000000000000}, , 134024029230314151, 32040, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 209 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029230316589, 32040, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 210 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029230316680, 32040, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 211 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 3, , , {00000000-0000-0000-0000-000000000000}, , 134024029230318745, 32040, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 212 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029240456467, 19350, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 213 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029240457998, 19350, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 214 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029240458059, 19350, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 215 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00004A80, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029240459776, 19350, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 216 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029420517575, 7275, 0, 19, "\_SB.PC00.GFX0._PS0", "started ", 0 217 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029420517870, 450, 0, 19, "\_SB.PC00.GFX0._PS0", "finished ", 0 218 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029420621990, 7275, 0, 19, "\_SB.PC00.GFX0._DOS", "started ", 0 219 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000010, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029420622815, 7275, 0, 19, "\_SB.PC00.GFX0._DOS", "finished ", 0 220 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029431275129, 32085, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 221 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029431276872, 32085, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 222 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029431276960, 32085, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 223 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029431278926, 32085, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 224 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x00000014, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029436077864, 6015, 0, 19, "\_SB.PC00.GFX0._PS3", "started ", 0 225 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 7, , , {00000000-0000-0000-0000-000000000000}, , 134024029436077988, 450, 0, 19, "\_SB.PC00.GFX0._PS3", "finished ", 0 226 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000016C0, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029604225494, 11145, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 227 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000016C0, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029604227337, 11145, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 228 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000016C0, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029604227423, 11145, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 229 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x000016C0, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029604229375, 11145, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 230 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000000, 0x00000000, 0, , , {00000000-0000-0000-0000-000000000000}, , 134024029654656275, 13831170, 0, 10, "\_GPE._L02", "started ", 0 231 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 4, , , {00000000-0000-0000-0000-000000000000}, , 134024029654665806, 32250, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "started ", 0 232 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029654673303, 450, 0, 10, "\_GPE._L02", "finished ", 1 233 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000022C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029654673604, 450, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "finished ", 1 234 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029654673952, 32250, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "started ", 0 235 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029654674108, 32250, 0, 24, "\_SB.PC00.LPCB.BAT0._STA", "finished ", 0 236 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029654674183, 32250, 0, 24, "\_SB.PC00.LPCB.BAT0._BIF", "started ", 0 237 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029654678616, 32250, 0, 24, "\_SB.PC00.LPCB.BAT0._BIF", "finished ", 1 238 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029654678687, 32250, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 239 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029654680114, 32250, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 240 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029654680201, 32250, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 241 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029654681801, 32250, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 242 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029654681994, 32250, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 243 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029654683412, 32250, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 244 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029654683446, 32250, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 245 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029654684536, 32250, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 246 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029664802687, 32265, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "started ", 0 247 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029664804292, 32265, 0, 24, "\_SB.PC00.LPCB.BAT0._BST", "finished ", 0 248 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029664804357, 32265, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "started ", 0 249 | Microsoft-Windows-Kernel-Acpi , 0, 7, 0, 16, 4, 0, 105, 0x0000000000000001, 0x00000004, 0x0000045C, 6, , , {00000000-0000-0000-0000-000000000000}, , 134024029664806263, 32265, 0, 24, "\_SB.PC00.LPCB.ADP0._PSR", "finished ", 0 250 | -------------------------------------------------------------------------------- /LatencyMon/SCAR 15.txt: -------------------------------------------------------------------------------- 1 | _________________________________________________________________________________________________________ 2 | CONCLUSION 3 | _________________________________________________________________________________________________________ 4 | Your system appears to be having trouble handling real-time audio and other tasks. You are likely to experience buffer underruns appearing as drop outs, clicks or pops. One or more DPC routines that belong to a driver running in your system appear to be executing for too long. One problem may be related to power management, disable CPU throttling settings in Control Panel and BIOS setup. Check for BIOS updates. 5 | LatencyMon has been analyzing your system for 0:08:26 (h:mm:ss) on all processors. 6 | 7 | 8 | _________________________________________________________________________________________________________ 9 | SYSTEM INFORMATION 10 | _________________________________________________________________________________________________________ 11 | Computer name: DESKTOP-M32BGDH 12 | OS version: Windows 11, 10.0, version 2009, build: 26100 (x64) 13 | Hardware: ROG Strix G533ZW_G533ZW, ASUSTeK COMPUTER INC. 14 | BIOS: G533ZW.324 15 | CPU: GenuineIntel 12th Gen Intel(R) Core(TM) i9-12900H 16 | Logical processors: 20 17 | Processor groups: 1 18 | Processor group size: 20 19 | RAM: 32428 MB total 20 | 21 | 22 | _________________________________________________________________________________________________________ 23 | CPU SPEED 24 | _________________________________________________________________________________________________________ 25 | Reported CPU speed (WMI): 250 MHz 26 | Reported CPU speed (registry): 2918 MHz 27 | 28 | Note: reported execution times may be calculated based on a fixed reported CPU speed. Disable variable speed settings like Intel Speed Step and AMD Cool N Quiet in the BIOS setup for more accurate results. 29 | 30 | 31 | _________________________________________________________________________________________________________ 32 | MEASURED INTERRUPT TO USER PROCESS LATENCIES 33 | _________________________________________________________________________________________________________ 34 | The interrupt to process latency reflects the measured interval that a usermode process needed to respond to a hardware request from the moment the interrupt service routine started execution. This includes the scheduling and execution of a DPC routine, the signaling of an event and the waking up of a usermode thread from an idle wait state in response to that event. 35 | 36 | Highest measured interrupt to process latency (µs): 5220.40 37 | Average measured interrupt to process latency (µs): 14.696703 38 | 39 | Highest measured interrupt to DPC latency (µs): 5206.40 40 | Average measured interrupt to DPC latency (µs): 5.757628 41 | 42 | 43 | _________________________________________________________________________________________________________ 44 | REPORTED ISRs 45 | _________________________________________________________________________________________________________ 46 | Interrupt service routines are routines installed by the OS and device drivers that execute in response to a hardware interrupt signal. 47 | 48 | Highest ISR routine execution time (µs): 389.328992 49 | Driver with highest ISR routine execution time: ACPI.sys - ACPI Driver for NT, Microsoft Corporation 50 | 51 | Highest reported total ISR routine time (%): 0.014438 52 | Driver with highest ISR total time: Wdf01000.sys - Kernel Mode Driver Framework Runtime, Microsoft Corporation 53 | 54 | Total time spent in ISRs (%) 0.014757 55 | 56 | ISR count (execution time <250 µs): 81959 57 | ISR count (execution time 250-500 µs): 0 58 | ISR count (execution time 500-1000 µs): 2 59 | ISR count (execution time 1000-2000 µs): 0 60 | ISR count (execution time 2000-4000 µs): 0 61 | ISR count (execution time >=4000 µs): 0 62 | 63 | 64 | _________________________________________________________________________________________________________ 65 | REPORTED DPCs 66 | _________________________________________________________________________________________________________ 67 | DPC routines are part of the interrupt servicing dispatch mechanism and disable the possibility for a process to utilize the CPU while it is interrupted until the DPC has finished execution. 68 | 69 | Highest DPC routine execution time (µs): 6251.426319 70 | Driver with highest DPC routine execution time: ACPI.sys - ACPI Driver for NT, Microsoft Corporation 71 | 72 | Highest reported total DPC routine time (%): 0.058673 73 | Driver with highest DPC total execution time: dxgkrnl.sys - DirectX Graphics Kernel, Microsoft Corporation 74 | 75 | Total time spent in DPCs (%) 0.138194 76 | 77 | DPC count (execution time <250 µs): 1667510 78 | DPC count (execution time 250-500 µs): 0 79 | DPC count (execution time 500-10000 µs): 261 80 | DPC count (execution time 1000-2000 µs): 5 81 | DPC count (execution time 2000-4000 µs): 3 82 | DPC count (execution time >=4000 µs): 4 83 | 84 | 85 | _________________________________________________________________________________________________________ 86 | REPORTED HARD PAGEFAULTS 87 | _________________________________________________________________________________________________________ 88 | Hard pagefaults are events that get triggered by making use of virtual memory that is not resident in RAM but backed by a memory mapped file on disk. The process of resolving the hard pagefault requires reading in the memory from disk while the process is interrupted and blocked from execution. 89 | 90 | NOTE: some processes were hit by hard pagefaults. If these were programs producing audio, they are likely to interrupt the audio stream resulting in dropouts, clicks and pops. Check the Processes tab to see which programs were hit. 91 | 92 | Process with highest pagefault count: svchost.exe 93 | 94 | Total number of hard pagefaults 5726 95 | Hard pagefault count of hardest hit process: 1434 96 | Number of processes hit: 39 97 | 98 | 99 | _________________________________________________________________________________________________________ 100 | PER CPU DATA 101 | _________________________________________________________________________________________________________ 102 | CPU 0 Interrupt cycle time (s): 43.243473 103 | CPU 0 ISR highest execution time (µs): 389.328992 104 | CPU 0 ISR total execution time (s): 1.353118 105 | CPU 0 ISR count: 46345 106 | CPU 0 DPC highest execution time (µs): 6251.426319 107 | CPU 0 DPC total execution time (s): 10.162126 108 | CPU 0 DPC count: 1166311 109 | _________________________________________________________________________________________________________ 110 | CPU 1 Interrupt cycle time (s): 21.928424 111 | CPU 1 ISR highest execution time (µs): 141.429061 112 | CPU 1 ISR total execution time (s): 0.069746 113 | CPU 1 ISR count: 25434 114 | CPU 1 DPC highest execution time (µs): 442.260452 115 | CPU 1 DPC total execution time (s): 1.774522 116 | CPU 1 DPC count: 118196 117 | _________________________________________________________________________________________________________ 118 | CPU 2 Interrupt cycle time (s): 14.179165 119 | CPU 2 ISR highest execution time (µs): 189.886223 120 | CPU 2 ISR total execution time (s): 0.043081 121 | CPU 2 ISR count: 8632 122 | CPU 2 DPC highest execution time (µs): 367.426319 123 | CPU 2 DPC total execution time (s): 0.445070 124 | CPU 2 DPC count: 47256 125 | _________________________________________________________________________________________________________ 126 | CPU 3 Interrupt cycle time (s): 12.730031 127 | CPU 3 ISR highest execution time (µs): 166.668951 128 | CPU 3 ISR total execution time (s): 0.026121 129 | CPU 3 ISR count: 910 130 | CPU 3 DPC highest execution time (µs): 362.28170 131 | CPU 3 DPC total execution time (s): 0.217621 132 | CPU 3 DPC count: 27952 133 | _________________________________________________________________________________________________________ 134 | CPU 4 Interrupt cycle time (s): 13.350625 135 | CPU 4 ISR highest execution time (µs): 95.481151 136 | CPU 4 ISR total execution time (s): 0.001627 137 | CPU 4 ISR count: 62 138 | CPU 4 DPC highest execution time (µs): 191.371487 139 | CPU 4 DPC total execution time (s): 0.088871 140 | CPU 4 DPC count: 31267 141 | _________________________________________________________________________________________________________ 142 | CPU 5 Interrupt cycle time (s): 13.408051 143 | CPU 5 ISR highest execution time (µs): 9.511995 144 | CPU 5 ISR total execution time (s): 0.000950 145 | CPU 5 ISR count: 402 146 | CPU 5 DPC highest execution time (µs): 229.732008 147 | CPU 5 DPC total execution time (s): 0.089555 148 | CPU 5 DPC count: 20328 149 | _________________________________________________________________________________________________________ 150 | CPU 6 Interrupt cycle time (s): 12.779718 151 | CPU 6 ISR highest execution time (µs): 9.358465 152 | CPU 6 ISR total execution time (s): 0.000326 153 | CPU 6 ISR count: 176 154 | CPU 6 DPC highest execution time (µs): 697.762851 155 | CPU 6 DPC total execution time (s): 0.116387 156 | CPU 6 DPC count: 32375 157 | _________________________________________________________________________________________________________ 158 | CPU 7 Interrupt cycle time (s): 15.681584 159 | CPU 7 ISR highest execution time (µs): 0.0 160 | CPU 7 ISR total execution time (s): 0.0 161 | CPU 7 ISR count: 0 162 | CPU 7 DPC highest execution time (µs): 479.540781 163 | CPU 7 DPC total execution time (s): 0.105494 164 | CPU 7 DPC count: 18307 165 | _________________________________________________________________________________________________________ 166 | CPU 8 Interrupt cycle time (s): 11.344101 167 | CPU 8 ISR highest execution time (µs): 0.0 168 | CPU 8 ISR total execution time (s): 0.0 169 | CPU 8 ISR count: 0 170 | CPU 8 DPC highest execution time (µs): 353.395476 171 | CPU 8 DPC total execution time (s): 0.064301 172 | CPU 8 DPC count: 18811 173 | _________________________________________________________________________________________________________ 174 | CPU 9 Interrupt cycle time (s): 11.279625 175 | CPU 9 ISR highest execution time (µs): 0.0 176 | CPU 9 ISR total execution time (s): 0.0 177 | CPU 9 ISR count: 0 178 | CPU 9 DPC highest execution time (µs): 354.678547 179 | CPU 9 DPC total execution time (s): 0.055548 180 | CPU 9 DPC count: 13676 181 | _________________________________________________________________________________________________________ 182 | CPU 10 Interrupt cycle time (s): 11.723895 183 | CPU 10 ISR highest execution time (µs): 0.0 184 | CPU 10 ISR total execution time (s): 0.0 185 | CPU 10 ISR count: 0 186 | CPU 10 DPC highest execution time (µs): 219.862234 187 | CPU 10 DPC total execution time (s): 0.138258 188 | CPU 10 DPC count: 32856 189 | _________________________________________________________________________________________________________ 190 | CPU 11 Interrupt cycle time (s): 11.554689 191 | CPU 11 ISR highest execution time (µs): 0.0 192 | CPU 11 ISR total execution time (s): 0.0 193 | CPU 11 ISR count: 0 194 | CPU 11 DPC highest execution time (µs): 164.941056 195 | CPU 11 DPC total execution time (s): 0.060234 196 | CPU 11 DPC count: 13838 197 | _________________________________________________________________________________________________________ 198 | CPU 12 Interrupt cycle time (s): 9.766585 199 | CPU 12 ISR highest execution time (µs): 0.0 200 | CPU 12 ISR total execution time (s): 0.0 201 | CPU 12 ISR count: 0 202 | CPU 12 DPC highest execution time (µs): 179.581905 203 | CPU 12 DPC total execution time (s): 0.077394 204 | CPU 12 DPC count: 16672 205 | _________________________________________________________________________________________________________ 206 | CPU 13 Interrupt cycle time (s): 10.106573 207 | CPU 13 ISR highest execution time (µs): 0.0 208 | CPU 13 ISR total execution time (s): 0.0 209 | CPU 13 ISR count: 0 210 | CPU 13 DPC highest execution time (µs): 195.190541 211 | CPU 13 DPC total execution time (s): 0.120375 212 | CPU 13 DPC count: 26117 213 | _________________________________________________________________________________________________________ 214 | CPU 14 Interrupt cycle time (s): 9.863684 215 | CPU 14 ISR highest execution time (µs): 0.0 216 | CPU 14 ISR total execution time (s): 0.0 217 | CPU 14 ISR count: 0 218 | CPU 14 DPC highest execution time (µs): 175.410555 219 | CPU 14 DPC total execution time (s): 0.074335 220 | CPU 14 DPC count: 14105 221 | _________________________________________________________________________________________________________ 222 | CPU 15 Interrupt cycle time (s): 8.746802 223 | CPU 15 ISR highest execution time (µs): 0.0 224 | CPU 15 ISR total execution time (s): 0.0 225 | CPU 15 ISR count: 0 226 | CPU 15 DPC highest execution time (µs): 697.283071 227 | CPU 15 DPC total execution time (s): 0.077401 228 | CPU 15 DPC count: 15669 229 | _________________________________________________________________________________________________________ 230 | CPU 16 Interrupt cycle time (s): 12.054537 231 | CPU 16 ISR highest execution time (µs): 0.0 232 | CPU 16 ISR total execution time (s): 0.0 233 | CPU 16 ISR count: 0 234 | CPU 16 DPC highest execution time (µs): 274.057574 235 | CPU 16 DPC total execution time (s): 0.121429 236 | CPU 16 DPC count: 16932 237 | _________________________________________________________________________________________________________ 238 | CPU 17 Interrupt cycle time (s): 9.794369 239 | CPU 17 ISR highest execution time (µs): 0.0 240 | CPU 17 ISR total execution time (s): 0.0 241 | CPU 17 ISR count: 0 242 | CPU 17 DPC highest execution time (µs): 353.780672 243 | CPU 17 DPC total execution time (s): 0.070052 244 | CPU 17 DPC count: 10839 245 | _________________________________________________________________________________________________________ 246 | CPU 18 Interrupt cycle time (s): 9.738478 247 | CPU 18 ISR highest execution time (µs): 0.0 248 | CPU 18 ISR total execution time (s): 0.0 249 | CPU 18 ISR count: 0 250 | CPU 18 DPC highest execution time (µs): 341.237834 251 | CPU 18 DPC total execution time (s): 0.073126 252 | CPU 18 DPC count: 14017 253 | _________________________________________________________________________________________________________ 254 | CPU 19 Interrupt cycle time (s): 9.149671 255 | CPU 19 ISR highest execution time (µs): 0.0 256 | CPU 19 ISR total execution time (s): 0.0 257 | CPU 19 ISR count: 0 258 | CPU 19 DPC highest execution time (µs): 356.413297 259 | CPU 19 DPC total execution time (s): 0.067371 260 | CPU 19 DPC count: 12259 261 | _________________________________________________________________________________________________________ 262 | -------------------------------------------------------------------------------- /LatencyMon/Zephyrus.txt: -------------------------------------------------------------------------------- 1 | CONCLUSION 2 | _________________________________________________________________________________________________________ 3 | Your system appears to be having trouble handling real-time audio and other tasks. You are likely to experience buffer underruns appearing as drop outs, clicks or pops. One or more DPC routines that belong to a driver running in your system appear to be executing for too long. One problem may be related to power management, disable CPU throttling settings in Control Panel and BIOS setup. Check for BIOS updates. 4 | LatencyMon has been analyzing your system for 0:19:15 (h:mm:ss) on all processors. 5 | 6 | 7 | _________________________________________________________________________________________________________ 8 | SYSTEM INFORMATION 9 | _________________________________________________________________________________________________________ 10 | Computer name: PETERS_LAPTOP 11 | OS version: Windows 11, 10.0, version 2009, build: 26100 (x64) 12 | Hardware: ROG Zephyrus M16 GU604VI_GU604VI, ASUSTeK COMPUTER INC. 13 | BIOS: GU604VI.313 14 | CPU: GenuineIntel 13th Gen Intel(R) Core(TM) i9-13900H 15 | Logical processors: 20 16 | Processor groups: 1 17 | Processor group size: 20 18 | RAM: 16003 MB total 19 | 20 | 21 | _________________________________________________________________________________________________________ 22 | CPU SPEED 23 | _________________________________________________________________________________________________________ 24 | Reported CPU speed (WMI): 260 MHz 25 | Reported CPU speed (registry): 2995 MHz 26 | 27 | Note: reported execution times may be calculated based on a fixed reported CPU speed. Disable variable speed settings like Intel Speed Step and AMD Cool N Quiet in the BIOS setup for more accurate results. 28 | 29 | 30 | _________________________________________________________________________________________________________ 31 | MEASURED INTERRUPT TO USER PROCESS LATENCIES 32 | _________________________________________________________________________________________________________ 33 | The interrupt to process latency reflects the measured interval that a usermode process needed to respond to a hardware request from the moment the interrupt service routine started execution. This includes the scheduling and execution of a DPC routine, the signaling of an event and the waking up of a usermode thread from an idle wait state in response to that event. 34 | 35 | Highest measured interrupt to process latency (µs): 65816.60 36 | Average measured interrupt to process latency (µs): 23.290972 37 | 38 | Highest measured interrupt to DPC latency (µs): 65802.90 39 | Average measured interrupt to DPC latency (µs): 12.994528 40 | 41 | 42 | _________________________________________________________________________________________________________ 43 | REPORTED ISRs 44 | _________________________________________________________________________________________________________ 45 | Interrupt service routines are routines installed by the OS and device drivers that execute in response to a hardware interrupt signal. 46 | 47 | Highest ISR routine execution time (µs): 536.804674 48 | Driver with highest ISR routine execution time: ACPI.sys - ACPI Driver for NT, Microsoft Corporation 49 | 50 | Highest reported total ISR routine time (%): 0.005116 51 | Driver with highest ISR total time: Wdf01000.sys - Kernel Mode Driver Framework Runtime, Microsoft Corporation 52 | 53 | Total time spent in ISRs (%) 0.005171 54 | 55 | ISR count (execution time <250 µs): 35178 56 | ISR count (execution time 250-500 µs): 0 57 | ISR count (execution time 500-1000 µs): 27 58 | ISR count (execution time 1000-2000 µs): 0 59 | ISR count (execution time 2000-4000 µs): 0 60 | ISR count (execution time >=4000 µs): 0 61 | 62 | 63 | _________________________________________________________________________________________________________ 64 | REPORTED DPCs 65 | _________________________________________________________________________________________________________ 66 | DPC routines are part of the interrupt servicing dispatch mechanism and disable the possibility for a process to utilize the CPU while it is interrupted until the DPC has finished execution. 67 | 68 | Highest DPC routine execution time (µs): 5998.834725 69 | Driver with highest DPC routine execution time: ACPI.sys - ACPI Driver for NT, Microsoft Corporation 70 | 71 | Highest reported total DPC routine time (%): 0.206178 72 | Driver with highest DPC total execution time: dxgkrnl.sys - DirectX Graphics Kernel, Microsoft Corporation 73 | 74 | Total time spent in DPCs (%) 0.421332 75 | 76 | DPC count (execution time <250 µs): 5086399 77 | DPC count (execution time 250-500 µs): 0 78 | DPC count (execution time 500-10000 µs): 8278 79 | DPC count (execution time 1000-2000 µs): 36 80 | DPC count (execution time 2000-4000 µs): 4 81 | DPC count (execution time >=4000 µs): 2 82 | 83 | 84 | _________________________________________________________________________________________________________ 85 | REPORTED HARD PAGEFAULTS 86 | _________________________________________________________________________________________________________ 87 | Hard pagefaults are events that get triggered by making use of virtual memory that is not resident in RAM but backed by a memory mapped file on disk. The process of resolving the hard pagefault requires reading in the memory from disk while the process is interrupted and blocked from execution. 88 | 89 | NOTE: some processes were hit by hard pagefaults. If these were programs producing audio, they are likely to interrupt the audio stream resulting in dropouts, clicks and pops. Check the Processes tab to see which programs were hit. 90 | 91 | Process with highest pagefault count: sandfall-win64-shipping.exe 92 | 93 | Total number of hard pagefaults 62225 94 | Hard pagefault count of hardest hit process: 24873 95 | Number of processes hit: 160 96 | 97 | 98 | _________________________________________________________________________________________________________ 99 | PER CPU DATA 100 | _________________________________________________________________________________________________________ 101 | CPU 0 Interrupt cycle time (s): 208.470124 102 | CPU 0 ISR highest execution time (µs): 536.804674 103 | CPU 0 ISR total execution time (s): 0.057712 104 | CPU 0 ISR count: 1813 105 | CPU 0 DPC highest execution time (µs): 5998.834725 106 | CPU 0 DPC total execution time (s): 90.558238 107 | CPU 0 DPC count: 4653458 108 | _________________________________________________________________________________________________________ 109 | CPU 1 Interrupt cycle time (s): 56.259822 110 | CPU 1 ISR highest execution time (µs): 467.055760 111 | CPU 1 ISR total execution time (s): 0.530961 112 | CPU 1 ISR count: 20867 113 | CPU 1 DPC highest execution time (µs): 772.751920 114 | CPU 1 DPC total execution time (s): 2.211270 115 | CPU 1 DPC count: 154086 116 | _________________________________________________________________________________________________________ 117 | CPU 2 Interrupt cycle time (s): 43.499230 118 | CPU 2 ISR highest execution time (µs): 59.875125 119 | CPU 2 ISR total execution time (s): 0.000630 120 | CPU 2 ISR count: 23 121 | CPU 2 DPC highest execution time (µs): 865.232721 122 | CPU 2 DPC total execution time (s): 0.235762 123 | CPU 2 DPC count: 17794 124 | _________________________________________________________________________________________________________ 125 | CPU 3 Interrupt cycle time (s): 53.859998 126 | CPU 3 ISR highest execution time (µs): 413.841736 127 | CPU 3 ISR total execution time (s): 0.605653 128 | CPU 3 ISR count: 12498 129 | CPU 3 DPC highest execution time (µs): 472.561603 130 | CPU 3 DPC total execution time (s): 0.973243 131 | CPU 3 DPC count: 31024 132 | _________________________________________________________________________________________________________ 133 | CPU 4 Interrupt cycle time (s): 45.361616 134 | CPU 4 ISR highest execution time (µs): 13.714858 135 | CPU 4 ISR total execution time (s): 0.000022 136 | CPU 4 ISR count: 4 137 | CPU 4 DPC highest execution time (µs): 762.933556 138 | CPU 4 DPC total execution time (s): 0.307450 139 | CPU 4 DPC count: 26486 140 | _________________________________________________________________________________________________________ 141 | CPU 5 Interrupt cycle time (s): 46.025195 142 | CPU 5 ISR highest execution time (µs): 0.0 143 | CPU 5 ISR total execution time (s): 0.0 144 | CPU 5 ISR count: 0 145 | CPU 5 DPC highest execution time (µs): 860.597663 146 | CPU 5 DPC total execution time (s): 0.430451 147 | CPU 5 DPC count: 29985 148 | _________________________________________________________________________________________________________ 149 | CPU 6 Interrupt cycle time (s): 46.184819 150 | CPU 6 ISR highest execution time (µs): 0.0 151 | CPU 6 ISR total execution time (s): 0.0 152 | CPU 6 ISR count: 0 153 | CPU 6 DPC highest execution time (µs): 797.837062 154 | CPU 6 DPC total execution time (s): 0.491756 155 | CPU 6 DPC count: 37499 156 | _________________________________________________________________________________________________________ 157 | CPU 7 Interrupt cycle time (s): 43.643760 158 | CPU 7 ISR highest execution time (µs): 0.0 159 | CPU 7 ISR total execution time (s): 0.0 160 | CPU 7 ISR count: 0 161 | CPU 7 DPC highest execution time (µs): 586.666444 162 | CPU 7 DPC total execution time (s): 0.319513 163 | CPU 7 DPC count: 19727 164 | _________________________________________________________________________________________________________ 165 | CPU 8 Interrupt cycle time (s): 40.721070 166 | CPU 8 ISR highest execution time (µs): 0.0 167 | CPU 8 ISR total execution time (s): 0.0 168 | CPU 8 ISR count: 0 169 | CPU 8 DPC highest execution time (µs): 755.370284 170 | CPU 8 DPC total execution time (s): 0.088969 171 | CPU 8 DPC count: 9081 172 | _________________________________________________________________________________________________________ 173 | CPU 9 Interrupt cycle time (s): 42.102580 174 | CPU 9 ISR highest execution time (µs): 0.0 175 | CPU 9 ISR total execution time (s): 0.0 176 | CPU 9 ISR count: 0 177 | CPU 9 DPC highest execution time (µs): 755.363606 178 | CPU 9 DPC total execution time (s): 0.217208 179 | CPU 9 DPC count: 19298 180 | _________________________________________________________________________________________________________ 181 | CPU 10 Interrupt cycle time (s): 42.173050 182 | CPU 10 ISR highest execution time (µs): 0.0 183 | CPU 10 ISR total execution time (s): 0.0 184 | CPU 10 ISR count: 0 185 | CPU 10 DPC highest execution time (µs): 230.927546 186 | CPU 10 DPC total execution time (s): 0.171073 187 | CPU 10 DPC count: 11908 188 | _________________________________________________________________________________________________________ 189 | CPU 11 Interrupt cycle time (s): 41.344044 190 | CPU 11 ISR highest execution time (µs): 0.0 191 | CPU 11 ISR total execution time (s): 0.0 192 | CPU 11 ISR count: 0 193 | CPU 11 DPC highest execution time (µs): 220.12020 194 | CPU 11 DPC total execution time (s): 0.093535 195 | CPU 11 DPC count: 9880 196 | _________________________________________________________________________________________________________ 197 | CPU 12 Interrupt cycle time (s): 20.919456 198 | CPU 12 ISR highest execution time (µs): 0.0 199 | CPU 12 ISR total execution time (s): 0.0 200 | CPU 12 ISR count: 0 201 | CPU 12 DPC highest execution time (µs): 222.240401 202 | CPU 12 DPC total execution time (s): 0.068877 203 | CPU 12 DPC count: 5422 204 | _________________________________________________________________________________________________________ 205 | CPU 13 Interrupt cycle time (s): 26.80610 206 | CPU 13 ISR highest execution time (µs): 0.0 207 | CPU 13 ISR total execution time (s): 0.0 208 | CPU 13 ISR count: 0 209 | CPU 13 DPC highest execution time (µs): 751.833723 210 | CPU 13 DPC total execution time (s): 0.172265 211 | CPU 13 DPC count: 9240 212 | _________________________________________________________________________________________________________ 213 | CPU 14 Interrupt cycle time (s): 22.084130 214 | CPU 14 ISR highest execution time (µs): 0.0 215 | CPU 14 ISR total execution time (s): 0.0 216 | CPU 14 ISR count: 0 217 | CPU 14 DPC highest execution time (µs): 215.893823 218 | CPU 14 DPC total execution time (s): 0.112777 219 | CPU 14 DPC count: 7812 220 | _________________________________________________________________________________________________________ 221 | CPU 15 Interrupt cycle time (s): 19.939116 222 | CPU 15 ISR highest execution time (µs): 0.0 223 | CPU 15 ISR total execution time (s): 0.0 224 | CPU 15 ISR count: 0 225 | CPU 15 DPC highest execution time (µs): 193.732888 226 | CPU 15 DPC total execution time (s): 0.105130 227 | CPU 15 DPC count: 8986 228 | _________________________________________________________________________________________________________ 229 | CPU 16 Interrupt cycle time (s): 19.345271 230 | CPU 16 ISR highest execution time (µs): 0.0 231 | CPU 16 ISR total execution time (s): 0.0 232 | CPU 16 ISR count: 0 233 | CPU 16 DPC highest execution time (µs): 225.774290 234 | CPU 16 DPC total execution time (s): 0.081494 235 | CPU 16 DPC count: 5250 236 | _________________________________________________________________________________________________________ 237 | CPU 17 Interrupt cycle time (s): 19.937634 238 | CPU 17 ISR highest execution time (µs): 0.0 239 | CPU 17 ISR total execution time (s): 0.0 240 | CPU 17 ISR count: 0 241 | CPU 17 DPC highest execution time (µs): 395.485810 242 | CPU 17 DPC total execution time (s): 0.146196 243 | CPU 17 DPC count: 7164 244 | _________________________________________________________________________________________________________ 245 | CPU 18 Interrupt cycle time (s): 19.649502 246 | CPU 18 ISR highest execution time (µs): 0.0 247 | CPU 18 ISR total execution time (s): 0.0 248 | CPU 18 ISR count: 0 249 | CPU 18 DPC highest execution time (µs): 228.195659 250 | CPU 18 DPC total execution time (s): 0.143137 251 | CPU 18 DPC count: 7474 252 | _________________________________________________________________________________________________________ 253 | CPU 19 Interrupt cycle time (s): 19.639766 254 | CPU 19 ISR highest execution time (µs): 0.0 255 | CPU 19 ISR total execution time (s): 0.0 256 | CPU 19 ISR count: 0 257 | CPU 19 DPC highest execution time (µs): 780.170952 258 | CPU 19 DPC total execution time (s): 0.441493 259 | CPU 19 DPC count: 23145 260 | _________________________________________________________________________________________________________ 261 | -------------------------------------------------------------------------------- /LatencyMon/latencymon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Zephkek/Asus-ROG-Aml-Deep-Dive/6025e6f7c12972c21a8332bce7bf8d776bc7eb86/LatencyMon/latencymon.png -------------------------------------------------------------------------------- /Other/CPU0.md: -------------------------------------------------------------------------------- 1 | 2 | ### **Summary** 3 | 4 | > **Hypothesis:** The `acpi.sys` driver explicitly pins its primary interrupt (the SCI) to CPU 0. 5 | > 6 | > **Conclusion:** **Hypothesis is false.** `acpi.sys` connects the SCI using `IoConnectInterruptEx` with `CONNECT_LINE_BASED (Version = 2)` and does **not** pass a CPU affinity. The HAL resolves a **software** affinity (on my VM it ends up as `0x3`, so CPU0+CPU1). For **hardware**, the HAL programs the IOAPIC entry for the SCI (GSI/IRQ 9) to **Lowest-priority delivery** with a **Logical** destination mask that matches that set. 7 | > 8 | > It is **not** physically pinned to CPU 0, but it persistently lands there as a result of the Windows kernel's scheduling and power management policies. The hardware is configured for "lowest priority" delivery, which includes a fair, rotating arbitration mechanism to handle ties [2]. However, the Windows scheduler frequently parks other cores during idle periods, leaving CPU 0 as the only processor in a responsive state. This effectively eliminates any tie-breaking scenario and makes CPU 0 the de facto target for the interrupt. 9 | 10 | > This report documents the end-to-end methodology used to trace the behavior from software to hardware and to fulfill my curiosity about this. 11 | 12 | --- 13 | 14 | ### 1. My Methodology 15 | 16 | I have adopted a high level approach to this, moving from high-level code down to the physical hardware state. Each step builds upon the last to formulate a clear chain of understanding. 17 | 18 | 1. **Static Analysis (Code Intent):** Reverse engineering `acpi.sys`, `ntoskrnl.exe` in IDA/Ghidra to understand the intended code path and how interrupt affinity *should* be handled. 19 | 2. **Live Kernel Debugging (Software Reality):** Intercepting key function calls in WinDbg to prove: 20 | 21 | * What parameters `acpi.sys` actually sends. 22 | * What affinity policy the kernel/HAL ultimately decides upon. 23 | 3. **Hardware State Analysis (Physical Reality):** Dumping the state of the virtual IOAPIC to prove how the interrupt is physically routed, confirming the ultimate outcome of the kernel's decision. 24 | 25 | --- 26 | 27 | ### 2. Static Analysis: The Driver's Intent 28 | 29 | I've reversed the key functions involved in ACPI interrupt setup. 30 | 31 | * **`acpi!OSInterruptVector`:** This is the function responsible for connecting the SCI. My analysis showed it calls `IoConnectInterruptEx` with a `Parameters.Version = 2` structure. 32 | * **`nt!IoConnectInterruptEx`:** The disassembly for this function shows that a Version 2 request is routed to the "line-based" connection path, which does not process a driver-supplied affinity mask. 33 | * **Conclusion:** The `acpi.sys` driver code is designed to be passive. It requests a connection without specifying an affinity, delegating the decision to the OS. 34 | 35 | Using Line-Based connect, no affinity provided 36 | 37 | --- 38 | 39 | ### 3. Static Analysis: The Kernel's Intent 40 | 41 | After receiving the connection request from a driver, the kernel's I/O Manager uses the low-level `nt!IopConnectInterrupt` function to act on the policy decision made by the HAL. By analyzing this function, we can understand the kernel's intent for implementing that policy. 42 | 43 | * **Function Purpose:** To take the abstract connection data (including the final affinity mask from the HAL) and create the concrete kernel objects (`_KINTERRUPT`) that are physically bound to specific CPU cores. 44 | 45 | * **The Logic:** 46 | 47 | 1. **Affinity Unpacking:** The function's first action is to read the Group number and Affinity Mask from the `_IO_CONNECT_ACTIVE_CONTEXT` structure that was populated by the HAL. 48 | 2. **Per-CPU Object Creation:** The code then enters a loop that iterates through each bit set in the affinity mask. For *every valid CPU*, it allocates a `_KINTERRUPT` object and explicitly initializes it to be permanently bound to that specific CPU core using `KeInitializeInterruptEx`. 49 | 3. **Connection:** Finally, it connects this set of CPU-specific interrupt objects to the system's dispatch mechanism. 50 | 51 | * **Conclusion:** The kernel's intent is to fully honor the affinity mask provided by the HAL. It doesn't just "prefer" one core, it creates the necessary kernel objects to enable interrupt delivery to **every single processor** specified in the mask. 52 | 53 | Add a subheading 54 | Add a subheading (2) 55 | 56 | --- 57 | 58 | ### 4. Live Kernel Debugging: Tracing the Policy 59 | 60 | ### Environment 61 | 62 | * **Guest OS:** Windows 11 Pro 24H2 (26100.1742) 63 | * **Hypervisor:** VMware Workstation 64 | * **vCPUs:** 4 65 | * **Debugger:** WinDbg (Preview) over **named pipe** serial KD 66 | * **Scope & applicability.** The results here are from a VMware guest using xAPIC/IOAPIC. On bare metal with **x2APIC** and/or **Interrupt Remapping (VT-d/AMD-IOMMU)**, the **programming path** (IOAPIC vs. remapping hardware) may differ, but the **policy** remains: the HAL resolves a **software eligible set**, and delivery uses **lowest-priority** semantics to one CPU in that set. 67 | 68 | #### 4.1. Proof Point #1: The ACPI Driver's Call 69 | 70 | I've set a breakpoint on `nt!IoConnectInterruptEx` and rebooted. 71 | 72 | * **Breakpoint Hit:** The debugger stopped on a call originating from `acpi!OSInterruptVector`. 73 | * **Parameter Analysis:** I've dumped the first ULONG of the parameters structure pointed to by `rcx`: 74 | 75 | ``` 76 | kd> dd @rcx L1 77 | ffff.... 00000002 78 | ``` 79 | 80 | * **Conclusion:** This proves that ``acpi.sys`` is using ```CONNECT_LINE_BASED (Version = 2)```, providing no affinity. 81 | 82 | image 83 | 84 | #### 4.2. Proof Point #2: The HAL's Permissive Software Policy 85 | 86 | I've set a second breakpoint on `nt!IopConnectInterrupt`, the function that acts on the HAL's decision. 87 | 88 | * **Breakpoint Hit:** The debugger stopped inside this function. 89 | * **Parameter Analysis:** The parameters are passed via an internal, undocumented structure `_IO_CONNECT_ACTIVE_CONTEXT`. By analyzing its memory layout in the debugger and cross-referencing against the values of known adjacent fields, the resolved GROUP_AFFINITY was identified at an offset of +0x20: 90 | 91 | ``` 92 | kd> dq [addr]+20 L2 93 | ffff.... 00000000 00000003 00000000 00000000 94 | ``` 95 | 96 | * **Conclusion:** The HAL's default software policy for this interrupt is a mask of `0x3` (CPUs 0 and 1). This proves the affinity is not hardcoded to Core 0 at the software policy level. It creates a set of eligible processors. 97 | 98 | image 99 | 100 | #### 4.3. Identifying the Hardware Interrupt Line (GSI) 101 | 102 | Now we have to conclusively determine the interrupt request (IRQ) line assigned to the ACPI System Control Interrupt (SCI) on the target system. The hypothesis is that the SCI is assigned to IRQ 9 (as per default). To prove this, we will use the Windows Kernel Debugger (WinDbg) to inspect the ACPI tables loaded in physical memory. The two key tables for this verification are: 103 | 104 | 1. **FADT (Fixed ACPI Description Table):** This table contains a field, `SCI_Interrupt`, which explicitly defines the system interrupt vector for the SCI. 105 | 2. **MADT (Multiple APIC Description Table):** This table describes the system's interrupt controller configuration. It is used to confirm that the SCI's IRQ is not being re-mapped or overridden. 106 | 107 | #### Step 1: Locating the ACPI Root Tables 108 | 109 | The first step is to locate the root of the ACPI table structure. The Extended System Description Table (XSDT) contains pointers to all other ACPI description tables. We can dump this table using the `!rsdt` debugger extension. 110 | 111 | **Command:** 112 | 113 | ``` 114 | 0: kd> !rsdt 115 | ``` 116 | 117 | **Output:** 118 | 119 | {06C0F980-C237-4880-8335-A0EC1E0E7942} 120 | 121 | From this output, we successfully identified the physical memory addresses for our tables of interest: 122 | 123 | * **FADT (listed as FACP):** `0xfbfad0b` 124 | * **MADT (listed as APIC):** `0xfbfae73` 125 | 126 | #### Step 2: Analysis of the Fixed ACPI Description Table (FADT) 127 | 128 | I've dumped the raw physical memory of the table using the `!db` (display bytes physical) command. 129 | 130 | **Command:** 131 | 132 | ``` 133 | 0: kd> !db 0xfbfad0b L50 134 | ``` 135 | 136 | {8578FC50-973A-486F-A91C-46E55DA72537} 137 | 138 | **Analysis:** 139 | According to the ACPI specification, the `SCI_Interrupt` field is located at offset `+0x2E` from the start of the FADT [1]. We can locate this value in the memory dump: 140 | 141 | * Start Address: `0xfbfad0b` 142 | * Offset: `+0x2E` 143 | * Target Address: `0xfbfad39` 144 | 145 | Examining the third line of the output, which starts at `...ad2b`, we can count forward to find the byte at `...ad39`. 146 | 147 | 89C05E4B-3414-4164-8562-CE1A5E13AFC1 148 | 149 | The value at this location is **`0x09`**. This confirms that the FADT specifies interrupt vector 9 for the SCI. 150 | 151 | #### Step 3: Analysis of the Multiple APIC Description Table (MADT) 152 | 153 | To be certain that IRQ 9 isn't being redirected, we need to inspect the MADT. We're looking for a special entry called an "Interrupt Source Override" that would remap the IRQ. 154 | 155 | **Command:** 156 | 157 | ``` 158 | 0: kd> !db 0xfbfae73 L7a 159 | ``` 160 | 161 | **Output Data:** 162 | 163 | image 164 | 165 | **Analysis:** 166 | The memory dump shows the entire MADT, which contains a list of entries describing the system's interrupt controllers. By walking through this list entry by entry, we can account for the entire table and see exactly how interrupts are configured. 167 | 168 | If you parse it you will see these entries for the system's processor cores (Type 0), their NMIs (Type 4), and the main IOAPIC (Type 1). Most importantly, there is only **one** "Interrupt Source Override" (Type 2) in the entire table. As seen on the last line of the dump, this entry (`02 0a 00...`) is for **ISA IRQ 0**, remapping it to global interrupt 2. 169 | 170 | After accounting for every entry in the table, our complete scan confirms there is **no override entry for IRQ 9**. Because no override exists, IRQ 9 maintains its default 1-to-1 mapping, connecting directly to Global System Interrupt 9. 171 | 172 | #### 4.4 OS-Level Verification: Confirming the GSI in Action 173 | 174 | Our analysis of the FADT and MADT tables established the hardware's blueprint: the ACPI SCI is configured to use IRQ 9. To complete the proof, we will now verify that the Windows kernel itself follows this blueprint by connecting its SCI handler to the correct Global System Interrupt (GSI). 175 | 176 | * **Method:** The interrupt parameters, including the GSI, are passed in the internal `_IO_CONNECT_ACTIVE_CONTEXT` structure. As its definition is not in public symbols, its layout must be determined empirically. This is a standard reverse engineering practice for analyzing kernel behavior. We dump the memory of this structure. Based on this live analysis, the GSI was consistently found at the offset of `+0x40`. 177 | 178 | 1. First, we retrieve the pointer to the context structure from the stack. 179 | 2. Next, we dump the memory of this structure. Through analysis of its layout, the GSI was determined to be at an offset of **`+0x40`**. 180 | 181 | * **Results:** The commands below execute this process, revealing the GSI value used by the kernel. 182 | 183 | ``` 184 | 0: kd> dq @rsp+58 L1 185 | fffff806`8d73a830 fffff806`8d73a970 186 | 187 | 0: kd> dd fffff806`8d73a970+40 L1 188 | 189 | ``` 190 | 191 | {93E47C47-ED25-442A-A49B-F38D9E05ECE1} 192 | 193 | * **Conclusion:** The memory dump at the `+0x40` offset clearly shows the value `0x00000009`. This confirms that the Windows kernel is requesting to connect its ACPI SCI handler to **GSI 9**. This OS-level action perfectly corroborates our hardware-level analysis, providing end-to-end proof that the ACPI SCI is operating on IRQ 9. 194 | 195 | #### 4.5. Final IOAPIC state 196 | 197 | Results show: 198 | 199 | DCFC7AEF-F15E-4045-BDA2-6996D29C6F07 200 | 201 | ``` 202 | Inti09.: 03000000`0000a9b0 Vec:B0 LowestDl Lg:03000000 lvl low 203 | ``` 204 | 205 | This line is a parsed representation of the 64-bit value that configures GSI 9. Let's break down what each component means, with reference to Intel's official architecture: 206 | 207 | * **`Vec:B0` (Vector):** This sets the interrupt vector to `0xB0`. When a CPU receives this interrupt, it will use this number to look up the correct handler (the ISR) in its Interrupt Descriptor Table (IDT). This corresponds to bits 0-7 of the RTE. 208 | 209 | * **`lvl low` (Trigger Mode & Polarity):** This confirms the interrupt is configured as **level-triggered** (bit 15) and **active-low** (bit 13). This is a critical setting that matches the electrical specification of the ACPI SCI, which remains asserted at a low voltage level until the OS services it. 210 | 211 | * **`LowestDl` (Delivery Mode):** This is the most important setting for our analysis. It sets the **Delivery Mode** (bits 8-10 of the RTE) to `001b`, which Intel defines as **"Lowest Priority"**. This instructs the I/O APIC *not* to send the interrupt to a fixed, predetermined CPU. Instead, it targets a group of CPUs, and the interrupt is delivered to whichever processor in that group is currently running at the lowest interrupt priority. This hardware feature is the foundation for interrupt load balancing. 212 | 213 | * **`Lg:03000000` (Destination Mode & Destination):** This defines the group of CPUs eligible to receive the interrupt. 214 | * The `Lg` signifies that the **Destination Mode** (bit 11) is set to **Logical**. In this mode, the `Destination` field (bits 56-63) is interpreted as a bitmap, where each bit represents a CPU. 215 | * The value `0x03` (`0b00000011`) is a mask where bits 0 and 1 are set. This explicitly defines the target group as **{CPU 0, CPU 1}**, perfectly matching the software affinity (`0x3`) that the HAL decided upon in section 4.2. 216 | 217 | **In summary, these hardware settings provide the definitive proof.** The I/O APIC is explicitly commanded to take any active-low, level-triggered signal on GSI 9 and deliver it as interrupt vector `0xB0` using the "Lowest Priority" delivery scheme to the logical set of processors containing CPU 0 and CPU 1. 218 | 219 | This immediately raises the next logical question: if both CPU 0 and CPU 1 are eligible targets and running at the same priority, how does the hardware decide which one gets the interrupt? This is where the processor's arbitration mechanism comes into play. [2] 220 | 221 | --- 222 | 223 | ### 5. The Question: Why Core 0 Almost Always Wins 224 | 225 | A logical question comes from the evidence: if the hardware uses a fair, rotating arbitration for tie-breaking, why does the ACPI SCI land on Core 0 nearly 100% of the time on a typical Windows system? 226 | 227 | The answer is that the hardware's tie-breaking is rarely needed because **the Windows kernel's software policies prevent a tie from ever occurring.** 228 | 229 | The IOAPIC's rule is to deliver an interrupt to the lowest-priority processor *that is able to service it*. An advanced OS like Windows heavily manages processor power states to improve efficiency. 230 | 231 | 1. **Core Parking and Idle States (C-States):** On a lightly loaded or idle system, the Windows scheduler actively works to consolidate tasks onto a minimal number of cores (usually starting with Core 0). Other cores are placed into a "parked" state, allowing them to enter deep sleep (C-states). 232 | 2. **Eliminating the Competition:** A processor in a deep C-state is not considered a ready target for an interrupt. When the SCI fires, the IOAPIC looks at its destination set (`{CPU0, CPU1}`) and finds that CPU 1 is in a deep sleep state. CPU 0, which the kernel deliberately keeps more active for system housekeeping, is the only viable target. 233 | 3. **No Tie, No Arbitration:** Since there is only one ready processor, the interrupt is sent directly to CPU 0. The hardware's fair arbitration logic is never invoked because there is no tie to break. The OS's power management strategy has created a scenario where CPU 0 is the winner by default. 234 | 235 | Therefore, the persistent targeting of CPU 0 is not a sign of hardware pinning but rather a predictable outcome of the synergy between the IOAPIC's delivery rules and the Windows scheduler's power-saving heuristics. 236 | 237 | --- 238 | 239 | ### **6. Conclusion: The Truth About the SCI and CPU 0** 240 | 241 | After a full-stack investigation from driver code down to hardware registers, the answer is definitive: **the `acpi.sys` SCI is not, by any mechanism, hard-wired or pinned to CPU 0.** 242 | 243 | The persistent observation that it lands on CPU 0 is an emergent behavior resulting from three layers of policy: 244 | 245 | 1. **The Driver is Hands-Off (`acpi.sys`):** The ACPI driver does not request a specific CPU affinity, delegating the decision to the operating system. 246 | 2. **The HAL Forms a Team (Windows HAL):** The Hardware Abstraction Layer establishes a software policy, creating a set of eligible processors for the SCI (CPUs 0 and 1 in this case). It then programs the hardware to match this policy. 247 | 3. **The OS Makes CPU 0 the Only Viable Player (Windows Scheduler):** The kernel’s power manager aggressively parks idle cores. This ensures that when an SCI occurs on a quiet system, CPU 0 is the only processor in the eligible "team" that is actually awake and ready. The IOAPIC, following its rules, delivers the interrupt to the sole available target. 248 | 249 | 250 | #### References: 251 | 252 | **[1]** UEFI ACPI Spec 6.5a, *Advanced Configuration and Power Interface (ACPI) Specification*, Version 6.5a, §5.2.9 "Fixed ACPI Description Table (FADT)" **SCI_INT** (2 bytes at offset 46). Available at: [https://uefi.org/sites/default/files/resources/ACPI_Spec_6.5a_Final.pdf](https://uefi.org/sites/default/files/resources/ACPI_Spec_6.5a_Final.pdf) 253 | 254 | **[2]** Intel Corporation, *Intel® 82093AA I/O Advanced Programmable Interrupt Controller (IOAPIC) ; Datasheet*, §§3.2.1 “IOAPICID - IOAPIC Identification Register” & 3.2.3 "IOAPICARB IOAPIC Arbitration Register," pp. 2, 9. Available at: [https://pdos.csail.mit.edu/6.828/2016/readings/ia32/ioapic.pdf](https://pdos.csail.mit.edu/6.828/2016/readings/ia32/ioapic.pdf). 255 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # The ASUS Gaming Laptop ACPI Firmware Bug: A Deep Technical Investigation 2 | 3 | ## If You're Here, You Know The Pain 4 | 5 | You own a high-end ASUS ROG laptop perhaps a Strix, Scar, or Zephyrus. It's specifications are impressive: an RTX 30/40 series GPU, a top-tier Intel processor, and plenty of RAM. Yet, it stutters during basic tasks like watching a YouTube video, audio crackles and pops on Discord calls, the mouse cursor freezes for a split second, just long enough to be infuriating. 6 | 7 | You've likely tried all the conventional fixes: 8 | - Updating every driver imaginable, multiple times. 9 | - Performing a "clean" reinstallation of Windows. 10 | - Disabling every conceivable power-saving option. 11 | - Manually tweaking processor interrupt affinities. 12 | - Following convoluted multi-step guides from Reddit threads. 13 | - Even installing Linux, only to find the problem persists. 14 | 15 | If none of that worked, it's because the issue isn't with the operating system or a driver. The problem is far deeper, embedded in the machine's firmware, the UEFI. 16 | 17 | ## Initial Symptoms and Measurement 18 | 19 | ### The Pattern Emerges 20 | 21 | The first tool in any performance investigator's toolkit for these symptoms is LatencyMon. It acts as a canary in the coal mine for system-wide latency issues. On an affected ASUS Zephyrus M16, the results are immediate and damning: 22 | 23 | ``` 24 | CONCLUSION 25 | Your system appears to be having trouble handling real-time audio and other tasks. 26 | You are likely to experience buffer underruns appearing as drop outs, clicks or pops. 27 | 28 | HIGHEST MEASURED INTERRUPT TO PROCESS LATENCY 29 | Highest measured interrupt to process latency (μs): 65,816.60 30 | Average measured interrupt to process latency (μs): 23.29 31 | 32 | HIGHEST REPORTED ISR ROUTINE EXECUTION TIME 33 | Highest ISR routine execution time (μs): 536.80 34 | Driver with highest ISR routine execution time: ACPI.sys 35 | 36 | HIGHEST REPORTED DPC ROUTINE EXECUTION TIME 37 | Highest DPC routine execution time (μs): 5,998.83 38 | Driver with highest DPC routine execution time: ACPI.sys 39 | ``` 40 | 41 | The data clearly implicates `ACPI.sys`. However, the per-CPU data reveals a more specific pattern: 42 | 43 | ``` 44 | CPU 0 Interrupt cycle time (s): 208.470124 45 | CPU 0 ISR highest execution time (μs): 536.804674 46 | CPU 0 DPC highest execution time (μs): 5,998.834725 47 | CPU 0 DPC total execution time (s): 90.558238 48 | ``` 49 | 50 | CPU 0 is taking the brunt of the impact, spending over 90 seconds processing interrupts while other cores remain largely unaffected. This isn't a failure of load balancing; it's a process locked to a single core. 51 | 52 | A similar test on a Scar 15 from 2022 shows the exact same culprit: high DPC latency originating from `ACPI.sys`. 53 | 54 | latencymon 55 | 56 | It's easy to blame a Windows driver, but `ACPI.sys` is not a typical driver. It primarily functions as an interpreter for ACPI Machine Language (AML), the code provided by the laptop's firmware (UEFI). If `ACPI.sys` is slow, it's because the firmware is feeding it inefficient or flawed AML code to execute. These slowdowns are often triggered by General Purpose Events (GPEs) and traffic from the Embedded Controller (EC). To find the true source, we must dig deeper. 57 | 58 | ## Capturing the Problem in More Detail: ETW Tracing 59 | 60 | ### Setting Up Advanced ACPI Tracing 61 | 62 | To understand what `ACPI.sys` is doing during these latency spikes, we can use Event Tracing for Windows (ETW) to capture detailed logs from the ACPI providers. 63 | 64 | ```powershell 65 | # Find the relevant ACPI ETW providers 66 | logman query providers | findstr /i acpi 67 | # This returns two key providers: 68 | # Microsoft-Windows-Kernel-Acpi {C514638F-7723-485B-BCFC-96565D735D4A} 69 | # Microsoft-ACPI-Provider {DAB01D4D-2D48-477D-B1C3-DAAD0CE6F06B} 70 | 71 | # Start a comprehensive trace session 72 | logman start ACPITrace -p {DAB01D4D-2D48-477D-B1C3-DAAD0CE6F06B} 0xFFFFFFFF 5 -o C:\Temp\acpi.etl -ets 73 | logman update ACPITrace -p {C514638F-7723-485B-BCFC-96565D735D4A} 0xFFFFFFFF 5 -ets 74 | 75 | # Then once we're done we can stop the trace and check the etl file and save the data in csv format aswell. 76 | logman stop ACPITrace -ets 77 | tracerpt C:\Temp\acpi.etl -o C:\Temp\acpi_events.csv -of CSV 78 | ``` 79 | 80 | ### An Unexpected Discovery 81 | 82 | Analyzing the resulting trace file in the Windows Performance Analyzer reveals a crucial insight. The spikes aren't random; they are periodic, occurring like clockwork every 30 to 60 seconds. 83 | 84 | 61c7abb1-d7aa-4b69-9a88-22cca7352f00 85 | 86 | Random interruptions often suggest hardware faults or thermal throttling. A perfectly repeating pattern points to a systemic issue, a timer or a scheduled event baked into the system's logic. 87 | 88 | The raw event data confirms this pattern: 89 | ```csv 90 | Clock-Time (100ns), Event, Kernel(ms), CPU 91 | 134024027290917802, _GPE._L02 started, 13.613820, 0 92 | 134024027290927629, _SB...BAT0._STA started, 0.000000, 4 93 | 134024027290932512, _GPE._L02 finished, -, 6 94 | ``` 95 | 96 | The first event, `_GPE._L02`, is an interrupt handler that takes **13.6 milliseconds** to execute. For a high-priority interrupt, this is an eternity and is catastrophic for real-time system performance. 97 | 98 | Deeper in the trace, another bizarre behavior emerges; the system repeatedly attempts to power the discrete GPU on and off, even when it's supposed to be permanently active. 99 | ```csv 100 | Clock-Time, Event, Duration 101 | 134024027315051227, _SB.PC00.GFX0._PS0 start, 278μs # GPU Power On 102 | 134024027315155404, _SB.PC00.GFX0._DOS start, 894μs # Display Output Switch 103 | 134024027330733719, _SB.PC00.GFX0._PS3 start, 1364μs # GPU Power Off 104 | [~15 seconds later] 105 | 134024027607550064, _SB.PC00.GFX0._PS0 start, 439μs # Power On Again! 106 | 134024027607657368, _SB.PC00.GFX0._DOS start, 1079μs # Display Output Switch 107 | 134024027623134006, _SB.PC00.GFX0._PS3 start, 394μs # Power Off Again! 108 | ... 109 | ``` 110 | ### Why This Behavior is Fundamentally Incorrect 111 | 112 | This power cycling is nonsensical because the laptop is configured for a scenario where it is impossible: **The system is in Ultimate Mode (via a MUX switch) with an external display connected.** 113 | 114 | In this mode: 115 | - The discrete NVIDIA GPU (dGPU) is the **only** active graphics processor. 116 | - The integrated Intel GPU (iGPU) is completely powered down and bypassed. 117 | - The dGPU is wired directly to the internal and external displays. 118 | - There is no mechanism for switching between GPUs. 119 | 120 | Yet, the firmware ignores MUX state nudging the iGPU path (GFX0) and, worse, engaging dGPU cut/notify logic (PEGP/PEPD) every 30-60 seconds. The dGPU in mux mode isn't just "preferred" - it's the ONLY path to the display. There's no fallback, and no alternative. When the firmware arms DGCE (power off), it's attempting something architecturally impossible. 121 | 122 | Most of the time, hardware sanity checks refuse these nonsensical commands, but even failed attempts introduce latency spikes causing audio dropouts, input lag, and accumulating performance degradation. Games freeze mid-session, videos buffer indefinitely, system responsiveness deteriorates until restart. 123 | 124 | #### The Catastrophic Edge Case 125 | 126 | Sometimes, under specific thermal conditions or race conditions, the power-down actually succeeds. When the firmware manages to power down the GPU that's driving the display, the sequence is predictable and catastrophic: 127 | 128 | 1. **Firmware OFF attempt** - cuts the dgpu path via PEG1.DGCE 129 | 2. **Hardware complies** - safety checks fail or timing aligns 130 | 3. **Display signal cuts** - monitors go black 131 | 4. **User input triggers wake** - mouse/keyboard activity 132 | 5. **Windows calls `PowerOnMonitor()`** - attempt display recovery 133 | 6. **NVIDIA driver executes `_PS0`** - GPU power on command 134 | 7. **GPU enters impossible state** - firmware insists OFF, Windows needs ON 135 | 8. **Driver thread blocks indefinitely** - waiting for GPU response 136 | 9. **30-second watchdog expires** - Windows gives up 137 | 10. **System crashes with BSOD** 138 | 139 | ``` 140 | 5: kd> !analyze -v 141 | ******************************************************************************* 142 | * * 143 | * Bugcheck Analysis * 144 | * * 145 | ******************************************************************************* 146 | 147 | WIN32K_POWER_WATCHDOG_TIMEOUT (19c) 148 | Win32k did not turn the monitor on in a timely manner. 149 | Arguments: 150 | Arg1: 0000000000000050, Calling monitor driver to power on. 151 | Arg2: ffff8685b1463080, Pointer to the power request worker thread. 152 | Arg3: 0000000000000000 153 | Arg4: 0000000000000000 154 | ... 155 | STACK_TEXT: 156 | fffff685`3a767130 fffff800`94767be0 : 00000000`00000047 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiSwapContext+0x76 157 | fffff685`3a767270 fffff800`94726051 : ffff8685`b1463080 00000027`00008b94 fffff685`3a767458 fffff800`00000000 : nt!KiSwapThread+0x6a0 158 | fffff685`3a767340 fffff800`94724ed3 : fffff685`00000000 00000000`00000043 00000000`00000002 0000008a`fbf50968 : nt!KiCommitThreadWait+0x271 159 | fffff685`3a7673e0 fffff800`9471baf2 : fffff685`3a7675d0 02000000`0000001b 00000000`00000000 fffff800`94724500 : nt!KeWaitForSingleObject+0x773 160 | fffff685`3a7674d0 fffff800`9471b7d5 : ffff8685`9cbec810 fffff685`3a7675b8 00000000`00010224 fffff800`00000003 : nt!ExpWaitForFastResource+0x92 161 | fffff685`3a767580 fffff800`9471b49d : 00000000`00000000 ffff8685`9cbec850 ffff8685`b1463080 00000000`00000000 : nt!ExpAcquireFastResourceExclusiveSlow+0x1e5 162 | fffff685`3a767630 fffff800`28faca9b : fffff800`262ee9c8 00000000`00000003 ffff8685`9cbec810 02000000`00000065 : nt!ExAcquireFastResourceExclusive+0x1bd 163 | fffff685`3a767690 fffff800`28facbe5 : ffff8685`b31de000 00000000`00000000 ffffd31d`9a05244f 00000000`00000000 : win32kbase!::+0x2b 164 | fffff685`3a7676c0 fffff800`28e5f864 : ffffad0c`94d10878 fffff685`3a767769 ffffad0c`94d10830 ffff8685`b31de000 : win32kbase!UserCritInternal::`anonymous namespace'::EnterCritInternalEx+0x4d 165 | fffff685`3a7676f0 fffff800`28e5f4ef : 00000000`00000000 00000000`00000000 fffff800`262ee9c8 00000000`00000000 : win32kbase!DrvSetWddmDeviceMonitorPowerState+0x354 166 | fffff685`3a7677d0 fffff800`28e2abab : ffff8685`b31de000 00000000`00000000 ffff8685`b31de000 00000000`00000000 : win32kbase!DrvSetMonitorPowerState+0x2f 167 | fffff685`3a767800 fffff800`28ef22fa : 00000000`00000000 fffff685`3a7678d9 00000000`00000001 00000000`00000001 : win32kbase!PowerOnMonitor+0x19b 168 | fffff685`3a767870 fffff800`28ef13dd : ffff8685`94a40700 ffff8685`a2eb31d0 00000000`00000001 00000000`00000020 : win32kbase!xxxUserPowerEventCalloutWorker+0xaaa 169 | fffff685`3a767940 fffff800`4bab21c2 : ffff8685`b1463080 fffff685`3a767aa0 00000000`00000000 00000000`00000020 : win32kbase!xxxUserPowerCalloutWorker+0x13d 170 | fffff685`3a7679c0 fffff800`26217f3a : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : win32kfull!NtUserUserPowerCalloutWorker+0x22 171 | fffff685`3a7679f0 fffff800`94ab8d55 : 00000000`000005bc 00000000`00000104 ffff8685`b1463080 00000000`00000000 : win32k!NtUserUserPowerCalloutWorker+0x2e 172 | fffff685`3a767a20 00007ff8`ee71ca24 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiSystemServiceCopyEnd+0x25 173 | 000000cc`d11ffbc8 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : 0x00007ff8`ee71ca24 174 | 175 | ... 176 | ``` 177 | The crash dump confirms the thread is stuck in `win32kbase!DrvSetWddmDeviceMonitorPowerState`, waiting for the NVIDIA driver to respond. It can't because it's caught between a confused power state, windows wanting to turn on the GPU while the firmware is arming the GPU cut off. 178 | 179 | ### Understanding General Purpose Events 180 | 181 | GPEs are the firmware's mechanism for signaling hardware events to the operating system. They are essentially hardware interrupts that trigger the execution of ACPI code. The trace data points squarely at `_GPE._L02` as the source of our latency. 182 | 183 | A closer look at the timing reveals a consistent and problematic pattern: 184 | ``` 185 | _GPE._L02 Event Analysis from ROG Strix Trace: 186 | 187 | Event 1 @ Clock 134024027290917802 188 | Duration: 13,613,820 ns (13.61ms) 189 | Triggered: Battery and AC adapter status checks 190 | 191 | Event 2 @ Clock 134024027654496591 192 | Duration: 13,647,255 ns (13.65ms) 193 | Triggered: Battery and AC adapter status checks 194 | 195 | Event 3 @ Clock 134024028048493318 196 | Duration: 13,684,515 ns (13.68ms) 197 | Triggered: Battery and AC adapter status checks 198 | 199 | Interval between events: ~36-39 seconds 200 | Consistency: The duration is remarkably stable and the interval is periodic. 201 | ``` 202 | 203 | ### The Correlation 204 | 205 | Every single time the lengthy `_GPE._L02` event fires, it triggers the exact same sequence of ACPI method calls. 206 | 207 | 64921999-7614-4706-a5ac-54c39c38fd0b 208 | 209 | The pattern is undeniable: 210 | 1. A hardware interrupt fires `_GPE._L02`. 211 | 2. The handler executes methods to check battery status. 212 | 3. Shortly thereafter, the firmware attempts to change the GPU's power state. 213 | 4. The system runs normally for about 30-60 seconds. 214 | 5. The cycle repeats. 215 | 216 | ## Extracting and Decompiling the Firmware Code 217 | 218 | ### Getting to the Source 219 | 220 | To analyze the code responsible for this behavior, we must extract and decompile the ACPI tables provided by the UEFI to the operating system. 221 | 222 | ```bash 223 | # Extract all ACPI tables into binary .dat files 224 | acpidump -b 225 | 226 | # Output includes: 227 | # DSDT.dat - The main Differentiated System Description Table 228 | # SSDT1.dat ... SSDT17.dat - Secondary System Description Tables 229 | 230 | # Decompile the main table into human-readable ACPI Source Language (.dsl) 231 | iasl -d dsdt.dat 232 | ``` 233 | This decompiled ASL provides a direct view into the firmware's executable logic. It is a precise representation of the exact instructions that the ACPI.sys driver is fed by the firmware and executes at the highest privilege level within the Windows kernel. Any logical flaws found in this code are the direct cause of the system's behavior. 234 | 235 | 236 | ### Finding the GPE Handler 237 | 238 | Searching the decompiled `DSDT.dsl` file, we find the definition for our problematic GPE handler: 239 | 240 | ```asl 241 | Scope (_GPE) 242 | { 243 | Method (_L02, 0, NotSerialized) // _Lxx: Level-Triggered GPE 244 | { 245 | \_SB.PC00.LPCB.ECLV () 246 | } 247 | } 248 | ``` 249 | This code is simple: when the `_L02` interrupt occurs, it calls a single method, `ECLV`. The "L" prefix in `_L02` signifies that this is a **level-triggered** interrupt, meaning it will continue to fire as long as the underlying hardware condition is active. This is a critical detail. 250 | 251 | ### The Catastrophic `ECLV` Implementation 252 | 253 | Following the call to `ECLV()`, we uncover a deeply flawed implementation that is the direct cause of the system-wide stuttering. 254 | 255 | ```asl 256 | Method (ECLV, 0, NotSerialized) // Starting at line 099244 257 | { 258 | // Main loop - continues while events exist OR sleep events are pending 259 | // AND we haven't exceeded our time budget (TI3S < 0x78) 260 | While (((CKEV() != Zero) || (SLEC != Zero)) && (TI3S < 0x78)) 261 | { 262 | Local1 = One 263 | While (Local1 != Zero) 264 | { 265 | Local1 = GEVT() // Get next event from queue 266 | LEVN (Local1) // Process the event 267 | TIMC += 0x19 // Increment time counter by 25 268 | 269 | // This is where it gets really bad 270 | If ((SLEC != Zero) && (Local1 == Zero)) 271 | { 272 | // No events but sleep events pending 273 | If (TIMC == 0x19) 274 | { 275 | Sleep (0x64) // Sleep for 100 milliseconds!!! 276 | TIMC = 0x64 // Set time counter to 100 277 | TI3S += 0x04 // Increment major counter by 4 278 | } 279 | Else 280 | { 281 | Sleep (0x19) // Sleep for 25 milliseconds!!! 282 | TI3S++ // Increment major counter by 1 283 | } 284 | } 285 | } 286 | } 287 | 288 | // Here's where it gets even worse 289 | If (TI3S >= 0x78) // If we hit our time budget (120) 290 | { 291 | TI3S = Zero 292 | If (EEV0 == Zero) 293 | { 294 | EEV0 = 0xFF // Force another event to be pending! 295 | } 296 | } 297 | } 298 | ``` 299 | 300 | ### Breaking Down this monstrosity 301 | 302 | This short block of code violates several fundamental principles of firmware and kernel programming. 303 | 304 | **Wtf 1: Sleeping in an Interrupt Context** 305 | ```asl 306 | Sleep (0x64) // 100ms sleep 307 | Sleep (0x19) // 25ms sleep 308 | ``` 309 | An interrupt handler runs at a very high priority to service hardware requests quickly. The `Sleep()` function completely halts the execution of the CPU core it is running on (CPU 0 in this case). While CPU 0 is sleeping, it cannot: 310 | - Process any other hardware interrupts. 311 | - Allow the kernel to schedule other threads. 312 | - Update system timers. 313 | 314 | > Clarification: These Sleep() calls live in the ACPI GPE handling path for the GPE L02, these calls get executed at PASSIVE_LEVEL after the SCI/GPE is acknowledged so it's not a raw ISR (because i don't think windows will even allow that) but analyzing this further while the control method runs the GPE stays masked and the ACPI/EC work is serialized. With the Sleep() calls inside that path and the self rearm it seems to have the effect of making ACPI.sys get tied up in long periodic bursts (often on CPU 0) which still have the same effect on the system. 315 | 316 | **Wtf 2: Time-Sliced Interrupt Processing** 317 | The entire loop is designed to run for an extended period, processing events in batches. It's effectively a poorly designed task scheduler running inside an interrupt handler, capable of holding a CPU core hostage for potentially seconds at a time. 318 | 319 | **Wtf 3: Self-Rearming Interrupt** 320 | ```asl 321 | If (EEV0 == Zero) 322 | { 323 | EEV0 = 0xFF // Forces all EC event bits on 324 | } 325 | ``` 326 | This logic ensures that even if the Embedded Controller's event queue is empty, the code will create a new, artificial event. This guarantees that another interrupt will fire shortly after, creating the perfectly periodic pattern of ACPI spikes observed in the traces. 327 | 328 | ## The Event Dispatch System 329 | 330 | ### How Events Route to Actions 331 | 332 | The LEVN() method takes an event and routes it: 333 | 334 | ```asl 335 | Method (LEVN, 1, NotSerialized) 336 | { 337 | If ((Arg0 != Zero)) 338 | { 339 | MBF0 = Arg0 340 | P80B = Arg0 341 | Local6 = Match (LEGA, MEQ, Arg0, MTR, Zero, Zero) 342 | If ((Local6 != Ones)) 343 | { 344 | LGPA (Local6) 345 | } 346 | } 347 | } 348 | 349 | ``` 350 | 351 | ### The `LGPA` Dispatch Table 352 | 353 | The LGPA() method is a giant switch statement handling different events: 354 | 355 | ```asl 356 | Method (LGPA, 1, Serialized) // Line 098862 357 | { 358 | Switch (ToInteger (Arg0)) 359 | { 360 | Case (Zero) // Most common case - power event 361 | { 362 | DGD2 () // GPU-related function 363 | ^EC0._QA0 () // EC query method 364 | PWCG () // Power change - this is our battery polling 365 | } 366 | 367 | Case (0x18) // GPU-specific event 368 | { 369 | If (M6EF == One) 370 | { 371 | Local0 = 0xD2 372 | } 373 | Else 374 | { 375 | Local0 = 0xD1 376 | } 377 | NOD2 (Local0) // Notify GPU driver 378 | } 379 | 380 | Case (0x1E) // Another GPU event 381 | { 382 | Notify (^^PEG1.PEGP, 0xD5) // Direct GPU notification 383 | ROCT = 0x55 // Sets flag for follow-up 384 | } 385 | 386 | } 387 | } 388 | ``` 389 | This shows a direct link: a GPE fires, and the dispatch logic calls functions related to battery polling and GPU notifications. 390 | 391 | ## The Battery Polling Function 392 | 393 | The `PWCG()` method, called by multiple event types, is responsible for polling the battery and AC adapter status. 394 | 395 | ```asl 396 | Method (PWCG, 0, NotSerialized) 397 | { 398 | Notify (ADP0, Zero) // Tell OS to check the AC adapter 399 | ^BAT0._BST () // Execute the Battery Status method 400 | Notify (BAT0, 0x80) // Tell OS the battery status has changed 401 | ^BAT0._BIF () // Execute the Battery Information method 402 | Notify (BAT0, 0x81) // Tell OS the battery info has changed 403 | } 404 | ``` 405 | Which we can see here: 406 | 407 | image 408 | 409 | Each of these operations requires communication with the Embedded Controller, adding to the workload inside the already-stalled interrupt handler. 410 | 411 | ### The GPU Notification System 412 | 413 | The `NOD2()` method sends notifications to the GPU driver. 414 | 415 | ```asl 416 | Method (NOD2, 1, Serialized) 417 | { 418 | If ((Arg0 != DNOT)) 419 | { 420 | DNOT = Arg0 421 | Notify (^^PEG1.PEGP, Arg0) 422 | } 423 | 424 | If ((ROCT == 0x55)) 425 | { 426 | ROCT = Zero 427 | Notify (^^PEG1.PEGP, 0xD1) // Hardware-Specific 428 | } 429 | } 430 | ``` 431 | These notifications (`0xD1`, `0xD2`, etc.) are hardware-specific signals that tell the NVIDIA driver to re-evaluate its power state, which prompts driver power-state re-evaluation; in traces this surfaces as iGPU GFX0._PSx/_DOS toggles plus dGPU state changes via PEPD._DSM/DGCE. 432 | 433 | 434 | ## The Mux Mode Confusion: A Firmware with a Split Personality 435 | 436 | Here's where a simple but catastrophic oversight in the firmware's logic causes system-wide failure. High-end ASUS gaming laptops feature a MUX (Multiplexer) switch, a piece of hardware that lets the user choose between two distinct graphics modes: 437 | 438 | 1. **Optimus Mode:** The power-saving default. The integrated Intel GPU (iGPU) is physically connected to the display. The powerful NVIDIA GPU (dGPU) only renders demanding applications when needed, passing finished frames to the iGPU to be drawn on screen. 439 | 2. **Ultimate/Mux Mode:** The high-performance mode. The MUX switch physically rewires the display connections, bypassing the iGPU entirely and wiring the NVIDIA dGPU directly to the screen. In this mode, the dGPU is not optional; it is the **only** graphics processor capable of outputting an image. 440 | 441 | Any firmware managing this hardware **must** be aware of which mode the system is in. Sending a command intended for one GPU to the other is futile and, in some cases, dangerous. Deep within the ACPI code, a hardware status flag named `HGMD` is used to track this state. To understand the flaw, we first need to decipher what `HGMD` means, and the firmware itself gives us the key. 442 | 443 | #### **Decoding the Firmware's Logic with the Brightness Method** 444 | 445 | For screen brightness to work, the command must be sent to the GPU that is physically controlling the display backlight. A command sent to the wrong GPU will simply do nothing. Therefore, the brightness control method (`BRTN`) *must* be aware of the MUX switch state to function at all. It is the firmware's own Rosetta Stone. 446 | 447 | ```asl 448 | // Brightness control - CORRECTLY checks for mux mode 449 | Method (BRTN, 1, Serialized) // Line 034003 450 | { 451 | If (((DIDX & 0x0F0F) == 0x0400)) 452 | { 453 | If (HGMD == 0x03) // 0x03 = Ultimate/Mux mode 454 | { 455 | // In mux mode, notify discrete GPU 456 | Notify (\_SB.PC00.PEG1.PEGP.EDP1, Arg0) 457 | } 458 | Else 459 | { 460 | // In Optimus, notify integrated GPU 461 | Notify (\_SB.PC00.GFX0.DD1F, Arg0) 462 | } 463 | } 464 | } 465 | ``` 466 | 467 | The logic here is flawless and revealing. The code uses the `HGMD` flag to make a binary decision. If `HGMD` is `0x03`, it sends the command to the NVIDIA GPU. If not, it sends it to the Intel GPU. The firmware itself, through this correct implementation, provides the undeniable definition: **`HGMD == 0x03` means the system is in Ultimate/Mux Mode.** 468 | 469 | #### **The Logical Contradiction: Unconditional Power Cycling in a Conditional Hardware State** 470 | 471 | This perfect, platform-aware logic is completely abandoned in the critical code paths responsible for power management. The `LGPA` method, which is called by the stutter-inducing interrupt, dispatches power-related commands to the GPU *without ever checking the MUX mode*. 472 | 473 | ```asl 474 | // GPU power notification - NO MUX CHECK! 475 | Case (0x18) 476 | { 477 | // This SHOULD have: If (HGMD != 0x03) 478 | // But it doesn't, so it runs even in mux mode 479 | If (M6EF == One) 480 | { 481 | Local0 = 0xD2 482 | } 483 | Else 484 | { 485 | Local0 = 0xD1 486 | } 487 | NOD2 (Local0) // Notifies GPU regardless of mode 488 | } 489 | ``` 490 | 491 | ### Another Path to the Same Problem: The Platform Power Management DSM 492 | 493 | This is not a single typo. A second, parallel power management system in the firmware exhibits the exact same flaw. The Platform Extension Plug-in Device (`PEPD`) is used by Windows to manage system-wide power states, such as turning off displays during modern standby. 494 | 495 | ```asl 496 | Device (PEPD) // Line 071206 497 | { 498 | Name (_HID, "INT33A1") // Intel Power Engine Plugin 499 | 500 | Method (_DSM, 4, Serialized) // Device Specific Method 501 | { 502 | // ... lots of setup code ... 503 | 504 | // Arg2 == 0x05: "All displays have been turned off" 505 | If ((Arg2 == 0x05)) 506 | { 507 | // Prepare for aggressive power saving 508 | If (CondRefOf (\_SB.PC00.PEG1.DHDW)) 509 | { 510 | ^^PC00.PEG1.DHDW () // GPU pre-shutdown work 511 | ^^PC00.PEG1.DGCE = One // Set "GPU Cut Enable" flag 512 | } 513 | 514 | If (S0ID == One) // If system supports S0 idle 515 | { 516 | GUAM (One) // Enter low power mode 517 | } 518 | 519 | ^^PC00.DPOF = One // Display power off flag 520 | 521 | // Tell USB controller about display state 522 | If (CondRefOf (\_SB.PC00.XHCI.PSLI)) 523 | { 524 | ^^PC00.XHCI.PSLI (0x05) 525 | } 526 | } 527 | 528 | // Arg2 == 0x06: "A display has been turned on" 529 | If ((Arg2 == 0x06)) 530 | { 531 | // Wake everything back up 532 | If (CondRefOf (\_SB.PC00.PEG1.DGCE)) 533 | { 534 | ^^PC00.PEG1.DGCE = Zero // Clear "GPU Cut Enable" 535 | } 536 | 537 | If (S0ID == One) 538 | { 539 | GUAM (Zero) // Exit low power mode 540 | } 541 | 542 | ^^PC00.DPOF = Zero // Display power on flag 543 | 544 | If (CondRefOf (\_SB.PC00.XHCI.PSLI)) 545 | { 546 | ^^PC00.XHCI.PSLI (0x06) 547 | } 548 | } 549 | } 550 | } 551 | ``` 552 | 553 | Once again, the firmware prepares to cut power to the discrete GPU without first checking if it's the only GPU driving the displays. This demonstrates that the Mux Mode Confusion is a systemic design flaw. The firmware is internally inconsistent, leading it to issue self-destructive commands that try to cripple the system. 554 | 555 | ## Cross-System Analysis 556 | 557 | Traces from multiple ASUS gaming laptop models confirm this is not an isolated issue. 558 | 559 | #### Scar 15 Analysis 560 | - **Trace Duration:** 4.1 minutes 561 | - **`_GPE._L02` Events:** 7 (every ~39 seconds) 562 | - **Avg. GPE Duration:** 1.56ms 563 | - **GPU Power Cycles:** 8 564 | 565 | #### Zephyrus M16 Analysis 566 | - **Trace Duration:** 19.9 minutes 567 | - **`_GPE._L02` Events:** 3 (same periodic pattern) 568 | - **Avg. GPE Duration:** 2.94ms 569 | - **GPU Power Cycles:** 197 (far more frequent) 570 | - **ASUS WMI Calls:** 2,370 (Armoury Crate amplifying the problem) 571 | 572 | ### What Actually Breaks 573 | 574 | The firmware acts as the hardware abstraction layer between Windows and the physical hardware. When ACPI control methods execute, they run under the Windows ACPI driver with specific timing constraints and because of these timing constraints GPE control methods need to finish quickly because the firing GPE stays masked until the method returns so sleeping or polling inside a path like that can trigger real time-glitches and produce very high latency numbers, as our tests indicate. 575 | 576 | Microsoft's [Hardware Lab Kit GlitchFree test](https://learn.microsoft.com/windows-hardware/test/hlk/testref/f0ed5aa8-ef49-4fc9-99b6-753c857e4e2d) validates this hardware-software contract by measuring audio/video glitches during HD playback. It fails systems with driver stalls exceeding a few milliseconds because such delays break real-time guarantees needed for smooth media playback. 577 | 578 | These ASUS systems violate those constraints. The firmware holds GPE._L02 masked for 13ms while sleeping in ECLV, serializing all ACPI/EC operations behind that delay. It polls battery state when it should use event-driven notifications. It attempts GPU power transitions without checking platform configuration (HGMD). All these problems result in powerful hardware crippled by firmware that doesn't understand its own execution context. 579 | 580 | ### The Universal Pattern 581 | 582 | Despite being different models, all affected systems exhibit the same core flaws: 583 | 1. `_GPE._L02` handlers take milliseconds to execute instead of microseconds. 584 | 2. The GPEs trigger unnecessary battery polling. 585 | 3. The firmware attempts to power cycle the GPU while in a fixed MUX mode. 586 | 4. The entire process is driven by a periodic, timer-like trigger. 587 | 588 | ## Summarizing the Findings 589 | 590 | This bug is a cascade of firmware design failures. 591 | 592 | ### Root Cause 1: The Misunderstanding of Interrupt Context 593 | 594 | On windows, the LXX / EXX run at PASSIVE_LEVEL via ACPI.sys but while a GPE control method runs **the firing GPE stays masked** and ACPI/EC work is **serialized**. ASUS's dispatch from GPE._L02 to ECLV loops, calls Sleep(25/100ms) and re-arms the EC stretching that masked window into tens of milliseconds (which would explain the 13ms CPU time in ETW (Kernel ms) delay for GPE Events) and producing a periodic ACPI.sys burst that causes the latency problems on the system. The correct behavior is to latch or clear the event, exit the method, and signal a driver with Notify for any heavy work; do not self-rearm or sleep in this path at all. 595 | 596 | ### Root Cause 2: Flawed Interrupt Handling 597 | The firmware artificially re-arms the interrupt, creating an endless loop of GPEs instead of clearing the source and waiting for the next legitimate hardware event. This transforms a hardware notification system into a disruptive, periodic timer. 598 | 599 | ### Root Cause 3: Lack of Platform Awareness 600 | The code that sends GPU power notifications does not check if the system is in MUX mode, a critical state check that is correctly performed in other parts of the firmware. This demonstrates inconsistency and a lack of quality control. 601 | 602 | ## Timeline of User Reports 603 | 604 | ### The Three-Year Pattern 605 | 606 | This issue is not new or isolated. User reports documenting identical symptoms with high ACPI.sys DPC latency, periodic stuttering, and audio crackling have been accumulating since at least 2021 across ASUS's entire gaming laptop lineup. 607 | 608 | **August 2021: First major reports (AMD Advantage Edition)** 609 | The earliest documented case on the official ASUS ROG forums is a **G15 Advantage Edition (G513QY, all-AMD)** owner reporting ["severe DPC latency from ACPI.sys"](https://rog-forum.asus.com/t5/rog-strix-series/g15-advantage-edition-g513qy-severe-dpc-latency-audio-dropouts/m-p/809512) with audio dropouts under any load. The thread, last edited in March 2024, shows the issue remained unresolved for years. 610 | 611 | **August 2021: Parallel reports (NVIDIA-based models)** 612 | Around the same time, **separate Reddit threads on NVIDIA-based ROG models** describe [identical ACPI.sys latency problems](https://www.reddit.com/r/ASUS/comments/odprtv/high_dpc_latency_from_acpisys_can_be_caused_by/). Different GPU vendors, same firmware/ACPI failure pattern. 613 | 614 | **2021-2023: Spreading Across Models** 615 | Throughout this period, the issue proliferates across ASUS's gaming lineup: 616 | - [ROG Strix models experience micro-stutters](https://www.reddit.com/r/techsupport/comments/mxtm86/i_need_help_high_acpisys_latency_and_microstutters/) 617 | - [TUF Gaming series reports throttling for seconds at a time](https://www.reddit.com/r/Asustuf/comments/1m2e40v/my_laptop_throttling_for_few_seconds/) 618 | - [G18 models exhibit the characteristic 45-second periodic stuttering](https://www.reddit.com/r/techsupport/comments/17rqfq5/new_laptop_started_stuttering_every_45_seconds/) 619 | 620 | **2023-2024: The Problem Persists in New Models** 621 | Even the latest generations aren't immune: 622 | - [2023 Zephyrus M16 owners report persistent audio issues](https://www.reddit.com/r/ZephyrusM16/comments/1j33ld6/this_machine_has_been_nothing_but_problems_no/) 623 | - [2023 G16 models continue experiencing audio pops/crackles](https://www.reddit.com/r/ZephyrusG14/comments/1l4jb13/audio_popscrackles_on_zephyrus_g16_2023/) 624 | - [2024 Intel G16 models require workarounds for audio stuttering](https://www.reddit.com/r/ZephyrusG14/comments/1i2w9ah/resolving_audio_popsstuttering_on_2024_intel_g16/) 625 | 626 | ## Conclusion 627 | 628 | The evidence is undeniable: 629 | - **Measured Proof:** GPE handlers are measured blocking a CPU core for over 13 milliseconds. 630 | - **Code Proof:** The decompiled firmware explicitly contains `Sleep()` calls within an interrupt handler. 631 | - **Logical Proof:** The code lacks critical checks for the laptop's hardware state (MUX mode). 632 | - **Systemic Proof:** The issue is reproducible across different models and UEFI versions. 633 | 634 | > Matthew Garrett had commented on this analysis, suggesting the system-wide freezes are likely caused by the firmware entering System Management Mode (SMM), highly recommend also checking this out for additional context and understanding: https://news.ycombinator.com/item?id=45282069 635 | 636 | Until a fix is implemented, millions of buyers of Asus laptops from approx. 2021 to present day are facing stutters on the simplest of tasks, such as watching YouTube, for the simple mistake of using a sleep call inside of an inefficient interrupt handler and not checking the GPU environment properly. 637 | 638 | The code is there. The traces prove it. ASUS must fix its firmware. 639 | 640 | > Update 1: ASUS has officially put out a statement: https://x.com/asus_rogna/status/1968404596658983013?s=46 641 | 642 | > Update 2: Reply from ASUS RD received; repro info sent over 643 | 644 | > Update 3: Asus sent me beta BIOS, currently testing. (https://x.com/ASUS_ROGNA/status/1971662996339646645/photo/1) 645 | 646 | *Investigation conducted using the Windows Performance Toolkit, ACPI table extraction tools, and Intel ACPI Component Architecture utilities. All code excerpts are from official ASUS firmware. Traces were captured on multiple affected systems, all showing consistent behavior. I used an LLM for wording. The research, traces, and AML decomp are mine. Every claim is verified and reproducible if you follow the steps in the article; logs and commands are in the repo. If you think something's wrong, cite the exact timestamp/method/line. "AI wrote it" is not an argument.* 647 | 648 | 649 | 650 | 651 | 652 | 653 | 654 | 655 | 656 | 657 | 658 | 659 | 660 | 661 | 662 | 663 | 664 | 665 | 666 | 667 | 668 | 669 | 670 | 671 | 672 | 673 | 674 | 675 | --------------------------------------------------------------------------------