diff --git a/extra/amdpci/am_smi.py b/extra/amdpci/am_smi.py index ffee9db60b..7198bde2f5 100755 --- a/extra/amdpci/am_smi.py +++ b/extra/amdpci/am_smi.py @@ -236,8 +236,6 @@ class SMICtx: case _: return metrics.SmuMetrics.AverageSocketPower, metrics.SmuMetrics.dGPU_W_MAX def get_mem_usage(self, dev): - return 0 - usage = 0 pt_stack = [dev.mm.root_page_table] while len(pt_stack) > 0: @@ -246,8 +244,8 @@ class SMICtx: entry = pt.entries[i] if (entry & am.AMDGPU_PTE_VALID) == 0: continue - if pt.lv!=am.AMDGPU_VM_PTB and not dev.gmc.is_pte_huge_page(pt.lv, entry): - pt_stack.append(AMPageTableEntry(dev, entry & 0x0000FFFFFFFFF000, lv=pt.lv+1)) + if pt.lv < am.AMDGPU_VM_PDB0 and not dev.gmc.is_pte_huge_page(pt.lv, entry): + pt_stack.append(AMPageTableEntry(dev, dev.xgmi2paddr(entry & 0x0000FFFFFFFFF000), lv=pt.lv+1)) continue if (entry & am.AMDGPU_PTE_SYSTEM) != 0: continue usage += (1 << ((9 * (3-pt.lv)) + 12))