lkml.org 
[lkml]   [2021]   [Apr]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 2/2] iommu/amd: Remove performance counter pre-initialization test
From
Date
Well, well! This is a promising start to the weekend. Thank you both, 
Suravee and Paul.

Results for AMD Ryzen 4 2400G
running Ubuntu 21.04β kernel 5.11.0-13 and Windows 10 2H2 under KVM

$ sudo dmesg | grep IOMMU
[ 0.557725] pci 0000:00:00.2: AMD-Vi: IOMMU performance counters
supported
[ 0.561538] pci 0000:00:00.2: AMD-Vi: Found IOMMU cap 0x40
[ 0.562828] perf/amd_iommu: Detected AMD IOMMU #0 (2 banks, 4
counters/bank).
[ 0.881108] AMD-Vi: AMD IOMMUv2 driver by Joerg Roedel <jroedel@suse.de>

$ systool -m kvm_amd -v
Module = "kvm_amd"

Attributes:
coresize = "114688"
initsize = "0"
initstate = "live"
refcnt = "0"
srcversion = "4371BA17A41823101F90761"
taint = ""
uevent = <store method only>

Parameters:
avic = "0"
dump_invalid_vmcb = "N"
nested = "1"
npt = "1"
nrips = "1"
pause_filter_count_grow= "2"
pause_filter_count_max= "65535"
pause_filter_count_shrink= "0"
pause_filter_count = "3000"
pause_filter_thresh = "128"
sev_es = "0"
sev = "0"
vgif = "1"
vls = "1"

Sections:

$ compgen -G "/sys/kernel/iommu_groups/*/devices/*"
/sys/kernel/iommu_groups/9/devices/0000:09:00.0
/sys/kernel/iommu_groups/0/devices/0000:00:01.0
/sys/kernel/iommu_groups/10/devices/0000:0a:00.0
/sys/kernel/iommu_groups/2/devices/0000:00:01.6
/sys/kernel/iommu_groups/12/devices/0000:0b:00.0
/sys/kernel/iommu_groups/4/devices/0000:00:08.1
/sys/kernel/iommu_groups/6/devices/0000:00:14.0
/sys/kernel/iommu_groups/6/devices/0000:00:14.3
/sys/kernel/iommu_groups/8/devices/0000:02:04.0
/sys/kernel/iommu_groups/8/devices/0000:02:01.0
/sys/kernel/iommu_groups/8/devices/0000:04:00.0
/sys/kernel/iommu_groups/8/devices/0000:01:00.1
/sys/kernel/iommu_groups/8/devices/0000:02:06.0
/sys/kernel/iommu_groups/8/devices/0000:01:00.0
/sys/kernel/iommu_groups/8/devices/0000:01:00.2
/sys/kernel/iommu_groups/8/devices/0000:08:00.0
/sys/kernel/iommu_groups/8/devices/0000:02:00.0
/sys/kernel/iommu_groups/8/devices/0000:02:07.0
/sys/kernel/iommu_groups/8/devices/0000:03:00.0
/sys/kernel/iommu_groups/1/devices/0000:00:01.2
/sys/kernel/iommu_groups/11/devices/0000:0a:00.1
/sys/kernel/iommu_groups/11/devices/0000:0a:00.3
/sys/kernel/iommu_groups/11/devices/0000:0a:00.2
/sys/kernel/iommu_groups/11/devices/0000:0a:00.4
/sys/kernel/iommu_groups/11/devices/0000:0a:00.6
/sys/kernel/iommu_groups/3/devices/0000:00:08.0
/sys/kernel/iommu_groups/5/devices/0000:00:08.2
/sys/kernel/iommu_groups/7/devices/0000:00:18.5
/sys/kernel/iommu_groups/7/devices/0000:00:18.7
/sys/kernel/iommu_groups/7/devices/0000:00:18.0
/sys/kernel/iommu_groups/7/devices/0000:00:18.2
/sys/kernel/iommu_groups/7/devices/0000:00:18.4
/sys/kernel/iommu_groups/7/devices/0000:00:18.6
/sys/kernel/iommu_groups/7/devices/0000:00:18.1
/sys/kernel/iommu_groups/7/devices/0000:00:18.3

$ sudo kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used

$ sudo perf stat -e 'amd_iommu_0/cmd_processed/,
amd_iommu_0/cmd_processed_inv/, amd_iommu_0/ign_rd_wr_mmio_1ff8h/,
amd_iommu_0/int_dte_hit/, amd_iommu_0/int_dte_mis/,
amd_iommu_0/mem_dte_hit/, amd_iommu_0/mem_dte_mis/,
amd_iommu_0/mem_iommu_tlb_pde_hit/, amd_iommu_0/mem_iommu_tlb_pde_mis/,
amd_iommu_0/mem_iommu_tlb_pte_hit/, amd_iommu_0/mem_iommu_tlb_pte_mis/,
amd_iommu_0/mem_pass_excl/, amd_iommu_0/mem_pass_pretrans/,
amd_iommu_0/mem_pass_untrans/, amd_iommu_0/mem_target_abort/,
amd_iommu_0/mem_trans_total/, amd_iommu_0/page_tbl_read_gst/,
amd_iommu_0/page_tbl_read_nst/, amd_iommu_0/page_tbl_read_tot/,
amd_iommu_0/smi_blk/, amd_iommu_0/smi_recv/, amd_iommu_0/tlb_inv/,
amd_iommu_0/vapic_int_guest/, amd_iommu_0/vapic_int_non_guest/' sleep 10

Performance counter stats for 'system wide':

0 amd_iommu_0/cmd_processed/ (33.32%)
2 amd_iommu_0/cmd_processed_inv/ (33.35%)
0 amd_iommu_0/ign_rd_wr_mmio_1ff8h/ (33.39%)
340 amd_iommu_0/int_dte_hit/ (33.43%)
23 amd_iommu_0/int_dte_mis/ (33.44%)
556 amd_iommu_0/mem_dte_hit/ (33.44%)
841,689,151,202,939 amd_iommu_0/mem_dte_mis/ (33.44%)
74 amd_iommu_0/mem_iommu_tlb_pde_hit/ (33.44%)
502 amd_iommu_0/mem_iommu_tlb_pde_mis/ (33.41%)
1,195 amd_iommu_0/mem_iommu_tlb_pte_hit/ (33.36%)
8,017 amd_iommu_0/mem_iommu_tlb_pte_mis/ (33.33%)
0 amd_iommu_0/mem_pass_excl/ (33.29%)
0 amd_iommu_0/mem_pass_pretrans/ (33.28%)
16,504 amd_iommu_0/mem_pass_untrans/ (33.28%)
0 amd_iommu_0/mem_target_abort/ (33.28%)
2,842 amd_iommu_0/mem_trans_total/ (33.28%)
0 amd_iommu_0/page_tbl_read_gst/ (33.28%)
111 amd_iommu_0/page_tbl_read_nst/ (33.29%)
111 amd_iommu_0/page_tbl_read_tot/ (33.28%)
0 amd_iommu_0/smi_blk/ (33.28%)
0 amd_iommu_0/smi_recv/ (33.29%)
0 amd_iommu_0/tlb_inv/ (33.28%)
0 amd_iommu_0/vapic_int_guest/ (33.28%)
345 amd_iommu_0/vapic_int_non_guest/ (33.29%)

10.000799128 seconds time elapsed

Results for Ryzen 7 4700U to follow.

--
David Coe

\
 
 \ /
  Last update: 2021-04-10 10:19    [W:0.235 / U:1.208 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site