[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <add9d575-191e-d7a6-e3e1-dfc7ea7f35c8@amd.com>
Date: Tue, 13 Apr 2021 20:51:56 +0700
From: "Suthikulpanit, Suravee" <suravee.suthikulpanit@....com>
To: David Coe <david.coe@...e.co.uk>, linux-kernel@...r.kernel.org,
iommu@...ts.linux-foundation.org
Cc: joro@...tes.org, will@...nel.org, jsnitsel@...hat.com,
pmenzel@...gen.mpg.de, Jon.Grimm@....com,
Tj <ml.linux@...oe.vision>,
Shuah Khan <skhan@...uxfoundation.org>,
Alexander Monakov <amonakov@...ras.ru>,
Alex Hung <1917203@...s.launchpad.net>
Subject: Re: [PATCH 2/2] iommu/amd: Remove performance counter
pre-initialization test
On 4/10/2021 5:03 PM, David Coe wrote:
> Results for AMD Ryzen 4700U running Ubuntu 21.04β kernel 5.11.0-13
>
> $ sudo dmesg | grep IOMMU
> [ 0.490352] pci 0000:00:00.2: AMD-Vi: IOMMU performance counters supported
> [ 0.491985] pci 0000:00:00.2: AMD-Vi: Found IOMMU cap 0x40
> [ 0.493732] perf/amd_iommu: Detected AMD IOMMU #0 (2 banks, 4 counters/bank).
> [ 0.793259] AMD-Vi: AMD IOMMUv2 driver by Joerg Roedel <jroedel@...e.de>
>
> ....
>
> $ 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':
>
> 12 amd_iommu_0/cmd_processed/ (33.28%)
> 6 amd_iommu_0/cmd_processed_inv/ (33.32%)
> 0 amd_iommu_0/ign_rd_wr_mmio_1ff8h/ (33.36%)
> 290 amd_iommu_0/int_dte_hit/ (33.40%)
> 20 amd_iommu_0/int_dte_mis/ (33.46%)
> 391 amd_iommu_0/mem_dte_hit/ (33.49%)
> 3,720 amd_iommu_0/mem_dte_mis/ (33.49%)
> 44 amd_iommu_0/mem_iommu_tlb_pde_hit/ (33.46%)
> 810 amd_iommu_0/mem_iommu_tlb_pde_mis/ (33.45%)
> 35 amd_iommu_0/mem_iommu_tlb_pte_hit/ (33.41%)
> 746 amd_iommu_0/mem_iommu_tlb_pte_mis/ (33.37%)
> 0 amd_iommu_0/mem_pass_excl/ (33.32%)
> 0 amd_iommu_0/mem_pass_pretrans/ (33.28%)
> 0 amd_iommu_0/mem_pass_untrans/ (33.28%)
> 0 amd_iommu_0/mem_target_abort/ (33.27%)
> 715 amd_iommu_0/mem_trans_total/ (33.27%)
> 0 amd_iommu_0/page_tbl_read_gst/ (33.28%)
> 36 amd_iommu_0/page_tbl_read_nst/ (33.27%)
> 36 amd_iommu_0/page_tbl_read_tot/ (33.27%)
> 0 amd_iommu_0/smi_blk/ (33.28%)
> 0 amd_iommu_0/smi_recv/ (33.26%)
> 0 amd_iommu_0/tlb_inv/ (33.23%)
> 0 amd_iommu_0/vapic_int_guest/ (33.24%)
> 366 amd_iommu_0/vapic_int_non_guest/ (33.27%)
>
> The immediately obvious difference is the with the enormous count seen on mem_dte_mis on the older Ryzen 2400G. Will do some RTFM but anyone with comments and insight?
>
> 841,689,151,202,939 amd_iommu_0/mem_dte_mis/ (33.44%)
>
> Otherwise, all seems to running smoothly (especially for a distribution still in β). Bravo and many thanks all!
>
That doesn't look correct. Lemme do some more investigation also.
Thanks,
Suravee
Powered by blists - more mailing lists