Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Apply i2c patches from upstream #7

Open
wants to merge 145 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
145 commits
Select commit Hold shift + click to select a range
e5a17b7
UBUNTU: [Packaging] initialize linux-hwe-5.19
ianmay81 Sep 21, 2022
77421d8
UBUNTU: [Packaging] specify gcc-12 for jammy:hwe-5.19
ianmay81 Sep 28, 2022
d103abe
UBUNTU: [Packaging] update variants
ianmay81 Sep 28, 2022
f6cadb4
UBUNTU: Start new release
ianmay81 Sep 28, 2022
75e3b16
UBUNTU: [Config] Update versions for GCC and PAHOLE
ianmay81 Sep 27, 2022
25367f8
UBUNTU: [Packaging] Disable DKMS modules for jammy:hwe-5.19
ianmay81 Sep 27, 2022
4a84335
UBUNTU: Ubuntu-hwe-5.19-5.19.0-18.18~22.04.2
ianmay81 Sep 28, 2022
1269fc9
Revert "UBUNTU: [Packaging] Disable DKMS modules for jammy:hwe-5.19"
xnox Oct 5, 2022
71b6b04
UBUNTU: [Packaging] update update.conf
xnox Oct 7, 2022
5886f8f
UBUNTU: Start new release
xnox Oct 7, 2022
a2b15cd
UBUNTU: link-to-tracker: update tracking bug
xnox Oct 7, 2022
d8b15f0
UBUNTU: Ubuntu-hwe-5.19-5.19.0-18.18~22.04.3
xnox Oct 7, 2022
8bf7149
UBUNTU: [Packaging] update variants
ksacilotto Nov 17, 2022
e434fc1
UBUNTU: [Packaging] update Ubuntu.md
ksacilotto Nov 17, 2022
9ee0f5f
UBUNTU: Start new release
ksacilotto Nov 17, 2022
2a121ec
UBUNTU: link-to-tracker: update tracking bug
ksacilotto Nov 17, 2022
c1db7dd
UBUNTU: Ubuntu-hwe-5.19-5.19.0-24.25~22.04.1
ksacilotto Nov 17, 2022
67443ef
UBUNTU: Start new release
ksacilotto Dec 12, 2022
7b20d0f
UBUNTU: link-to-tracker: update tracking bug
ksacilotto Dec 12, 2022
725fccb
UBUNTU: Ubuntu-hwe-5.19-5.19.0-27.28~22.04.1
ksacilotto Dec 12, 2022
b409a41
UBUNTU: Start new release
ksacilotto Dec 15, 2022
fdeb596
UBUNTU: link-to-tracker: update tracking bug
ksacilotto Dec 15, 2022
febcfb7
UBUNTU: Ubuntu-hwe-5.19-5.19.0-28.29~22.04.1
ksacilotto Dec 15, 2022
e0beb56
Revert "UBUNTU: [Packaging] use versioned gcc-12"
ksacilotto Jan 12, 2023
ddc66b0
UBUNTU: Start new release
ksacilotto Jan 13, 2023
a3c303a
UBUNTU: [Packaging] update annotations for gcc version downgrade
ksacilotto Jan 13, 2023
0351e3b
UBUNTU: link-to-tracker: update tracking bug
ksacilotto Jan 13, 2023
bed7edf
UBUNTU: debian/dkms-versions -- update from kernel-versions (main/202…
ksacilotto Jan 13, 2023
49640cc
UBUNTU: Ubuntu-hwe-5.19-5.19.0-30.31~22.04.1
ksacilotto Jan 13, 2023
7de5a6a
UBUNTU: [Packaging] Drop unreachable config annotations
smb49 Jan 23, 2023
73d6dbd
UBUNTU: Start new release
smb49 Jan 23, 2023
815077a
UBUNTU: link-to-tracker: update tracking bug
smb49 Jan 23, 2023
57c9b8c
UBUNTU: Ubuntu-hwe-5.19-5.19.0-31.32~22.04.1
smb49 Jan 23, 2023
0e66dc5
UBUNTU: [Packaging] update variants
ksacilotto Jan 30, 2023
619e61c
UBUNTU: [Packaging] Fix gcc version detection
ksacilotto Jan 30, 2023
4fa0f5e
UBUNTU: Start new release
ksacilotto Jan 30, 2023
1d481a7
UBUNTU: link-to-tracker: update tracking bug
ksacilotto Jan 30, 2023
ea4529f
UBUNTU: debian/dkms-versions -- update from kernel-versions (main/202…
ksacilotto Jan 30, 2023
8aeb7eb
UBUNTU: Ubuntu-hwe-5.19-5.19.0-32.33~22.04.1
ksacilotto Jan 30, 2023
f320352
UBUNTU: Start new release
ksacilotto Feb 17, 2023
d6febb4
UBUNTU: link-to-tracker: update tracking bug
ksacilotto Feb 17, 2023
f8d1f60
UBUNTU: Ubuntu-hwe-5.19-5.19.0-35.36~22.04.1
ksacilotto Feb 17, 2023
315550d
UBUNTU: Start new release
smb49 Mar 8, 2023
1965314
UBUNTU: link-to-tracker: update tracking bug
smb49 Mar 8, 2023
74ae507
UBUNTU: Ubuntu-hwe-5.19-5.19.0-37.38~22.04.1
smb49 Mar 8, 2023
e489c1c
UBUNTU: Start new release
LukeNow Mar 17, 2023
c460462
UBUNTU: link-to-tracker: update tracking bug
LukeNow Mar 17, 2023
48df2dc
UBUNTU: Ubuntu-hwe-5.19-5.19.0-38.39~22.04.1
LukeNow Mar 17, 2023
4a99ad9
UBUNTU: Start new release
ksacilotto Mar 31, 2023
d01d838
UBUNTU: link-to-tracker: update tracking bug
ksacilotto Mar 31, 2023
f22ec32
UBUNTU: Ubuntu-hwe-5.19-5.19.0-40.41~22.04.1
ksacilotto Mar 31, 2023
ecfbf30
UBUNTU: Start new release
Apr 18, 2023
5802b42
UBUNTU: link-to-tracker: update tracking bug
Apr 18, 2023
a040342
UBUNTU: [Config]: Make sure CONFIG_NET_CLS_TCINDEX is not available
Apr 13, 2023
c0cdf33
UBUNTU: Ubuntu-hwe-5.19-5.19.0-41.42~22.04.1
Apr 18, 2023
328779d
UBUNTU: [Packaging] bionic-hwe-5.4: Add PPA 'ppa2' to etc/getabis
roxanan1996 Apr 21, 2023
55473d6
UBUNTU: Start new release
roxanan1996 Apr 21, 2023
1a9dc70
UBUNTU: link-to-tracker: update tracking bug
roxanan1996 Apr 21, 2023
1b64596
UBUNTU: Ubuntu-hwe-5.19-5.19.0-42.43~22.04.1
roxanan1996 Apr 21, 2023
e372b52
UBUNTU: [Packaging] update variants
roxanan1996 May 19, 2023
8d2d132
UBUNTU: Start new release
roxanan1996 May 19, 2023
d701dcf
UBUNTU: link-to-tracker: update tracking bug
roxanan1996 May 19, 2023
0680494
UBUNTU: Ubuntu-hwe-5.19-5.19.0-43.44~22.04.1
roxanan1996 May 19, 2023
6b6e40a
UBUNTU: [Packaging] resync git-ubuntu-log
LukeNow May 30, 2023
82ccef0
UBUNTU: [Packaging] resync getabis
LukeNow May 30, 2023
ed23539
UBUNTU: Start new release
LukeNow May 30, 2023
e72ac93
UBUNTU: link-to-tracker: update tracking bug
LukeNow May 30, 2023
c1d85b9
UBUNTU: [Config] hwe-5.19: Drop mxsfb module for ppc64el
LukeNow May 30, 2023
b9b998e
UBUNTU: Ubuntu-hwe-5.19-5.19.0-44.45~22.04.1
LukeNow May 30, 2023
3fc9bf9
UBUNTU: [Packaging] Initialize linux-nvidia-5.19
ianmay81 Oct 19, 2022
6c3d492
UBUNTU: [Packaging] update variants
ianmay81 Nov 10, 2022
a878ccf
UBUNTU: [Packaging] update Ubuntu.md
ianmay81 Nov 10, 2022
efbc709
UBUNTU: Start new release
ianmay81 Nov 10, 2022
13f7220
UBUNTU: Ubuntu-nvidia-5.19-5.19.0-1001.1
ianmay81 Nov 10, 2022
c2d3621
ACPI: ARM Performance Monitoring Unit Table (APMT) initial support
bwicaksononv Sep 29, 2022
4c269aa
ACPI: APMT: Fix kerneldoc and indentation
bwicaksononv Nov 11, 2022
075cad1
perf: arm_cspmu: Add support for ARM CoreSight PMU driver
bwicaksononv Nov 11, 2022
d16aa28
perf: arm_cspmu: Add support for NVIDIA SCF and MCF attribute
bwicaksononv Nov 11, 2022
d7cd8fc
perf: arm_cspmu: Fix modular builds due to missing MODULE_LICENSE()s
willdeacon Nov 15, 2022
cc1f4b6
perf: arm_cspmu: Fix build failure on x86_64
bwicaksononv Nov 16, 2022
ecf9518
perf: arm_cspmu: Fix module cyclic dependency
bwicaksononv Nov 16, 2022
3a51a60
perf: arm_cspmu: Fix build failure acpi_dev_parent
bwicaksononv Nov 19, 2022
60dd49e
arm64: defconfig: enable ARM CoreSight PMU driver
bwicaksononv Nov 11, 2022
2d98ab8
iommu: Add return value rules to attach_dev op and APIs
nicolinc Oct 17, 2022
b4e10b9
iommu: Regulate EINVAL in ->attach_dev callback functions
nicolinc Oct 17, 2022
4d01aeb
iommu: Use EINVAL for incompatible device/domain in ->attach_dev
nicolinc Oct 17, 2022
f4473f2
iommu: Propagate return value in ->attach_dev callback functions
nicolinc Oct 17, 2022
9055308
spi: tegra210-quad: Multi-cs support
kkyarlagadda Jun 7, 2022
5aac874
arm64: tegra: Enable Tegra SPI & QSPI in deconfig
kkyarlagadda Sep 13, 2022
08bfe98
UBUNTU: [Packaging] update variants
nvidia-bfigg Dec 14, 2022
84a73a8
UBUNTU: Start new release
nvidia-bfigg Dec 14, 2022
6499703
UBUNTU: link-to-tracker: update tracking bug
nvidia-bfigg Dec 14, 2022
5769028
UBUNTU: [CONFIG] general updates
nvidia-bfigg Dec 14, 2022
2f3bdf1
UBUNTU: Ubuntu-linux-nvidia-5.19-5.19.0-1002.2
nvidia-bfigg Dec 14, 2022
8dfe0bc
UBUNTU: SAUCE: arm64: defconfig: increase NR_CPUS to 512
shankerd04 Jan 6, 2023
bf91c92
UBUNTU: SAUCE: arm64: defconfig: Increase NUMA NODE count to 2^6
shankerd04 Jan 6, 2023
d85b277
UBUNTU: SAUCE: rtc: efi: Enable SET/GET WAKEUP services as optional
shankerd04 Dec 27, 2022
5130f64
UBUNTU: SAUCE: arm64: gic: increase the number of IRQ descriptors
shankerd04 Jan 3, 2023
6ad1595
UBUNTU: [CONFIG] increase NR_CPUS to 512 for ARM64
nvidia-bfigg Jan 6, 2023
7b9ce19
UBUNTU: [config] add annotation for NR_CPUS
ianmay81 Jan 6, 2023
68642af
UBUNTU: SAUCE: tpm: tegra: Support SPI tpm wait state detect
kkyarlagadda Jan 4, 2023
84f2a45
UBUNTU: SAUCE: spi: tegra210-quad: Enable TPM wait polling
kkyarlagadda Jan 5, 2023
9149432
UBUNTU: Start new release
nvidia-bfigg Jan 12, 2023
257ecb2
UBUNTU: debian/dkms-versions -- add mstflint 4.21.0-7 to the list of …
nvidia-bfigg Jan 13, 2023
e6067d8
UBUNTU: link-to-tracker: update tracking bug
nvidia-bfigg Jan 12, 2023
776377a
UBUNTU: Ubuntu-nvidia-5.19-5.19.0-1003.3
nvidia-bfigg Jan 12, 2023
478013c
UBUNTU: Start new release
nvidia-bfigg Jan 13, 2023
081c56f
UBUNTU: debian/dkms-versions -- add 'arch=arm64' to the mstflint dkms…
nvidia-bfigg Jan 13, 2023
913b8b4
UBUNTU: [CONFIG] set the _AAEON configuration variables to 'n' and set
nvidia-bfigg Jan 13, 2023
5188ba9
UBUNTU: Ubuntu-nvidia-5.19-5.19.0-1004.4
nvidia-bfigg Jan 13, 2023
cc5762b
UBUNTU: [Config] nvidia-5.19: disable building of ODM drivers
nvidia-bfigg Jan 17, 2023
486bf41
UBUNTU: [packaging] nvidia-5.19: add exclude for parent debian dir
ianmay81 Jan 18, 2023
5bed74a
UBUNTU: Start new release
ianmay81 Jan 20, 2023
45048e2
UBUNTU: link-to-tracker: update tracking bug
ianmay81 Jan 20, 2023
148e0b9
UBUNTU: [config] nvidia-5.19: update configs
ianmay81 Jan 20, 2023
69206d6
UBUNTU: Ubuntu-nvidia-5.19-5.19.0-1005.5
ianmay81 Jan 20, 2023
0fb2a36
UBUNTU: Start new release
ianmay81 Jan 24, 2023
4e84051
UBUNTU: link-to-tracker: update tracking bug
ianmay81 Jan 24, 2023
083db48
UBUNTU: Ubuntu-nvidia-5.19-5.19.0-1007.7
ianmay81 Jan 24, 2023
5940c07
UBUNTU: [Packaging] update variants
ianmay81 Mar 22, 2023
48b6992
UBUNTU: Start new release
ianmay81 Mar 22, 2023
19b899d
UBUNTU: link-to-tracker: update tracking bug
ianmay81 Mar 22, 2023
e26f942
UBUNTU: [config] nvidia-5.19: update configs
ianmay81 Mar 22, 2023
c7c2ebe
UBUNTU: debian/dkms-versions -- update from kernel-versions (main/mas…
ianmay81 Mar 22, 2023
af23f9a
UBUNTU: Ubuntu-nvidia-5.19-5.19.0-1009.9
ianmay81 Mar 22, 2023
0d2d700
UBUNTU: [Packaging] update variants
ianmay81 Mar 27, 2023
a33ab05
NFS: Patch NFS driver to support GDS
nvidia-bfigg Apr 13, 2023
99819e0
UBUNTU: Start new release
nvidia-bfigg Apr 24, 2023
e674f03
UBUNTU: [Packaging] bionic-hwe-5.4: Add PPA 'ppa2' to etc/getabis
nvidia-bfigg Apr 24, 2023
4b90c60
UBUNTU: [Config]: Make sure CONFIG_NET_CLS_TCINDEX is not available
nvidia-bfigg Apr 24, 2023
b806ba7
UBUNTU: link-to-tracker: update tracking bug
nvidia-bfigg Apr 24, 2023
9758f04
UBUNTU: debian/dkms-versions -- update from kernel-versions (main/mas…
nvidia-bfigg Apr 24, 2023
5da32c9
UBUNTU: [Config] CONFIG_TDX_GUEST_DRVER=m
nvidia-bfigg Apr 24, 2023
37a675b
UBUNTU: [Config] Matching configs with annotations:
nvidia-bfigg Apr 24, 2023
3d189a3
UBUNTU: Ubuntu-nvidia-5.19-5.19.0-1010.10
nvidia-bfigg Apr 24, 2023
5d01bc8
NVIDIA: [Packaging] mstflint version changed to 4.24.0-1~jammy and n…
nvidia-bfigg May 16, 2023
055c9ec
drm/ast: Fix ARM compatibility
jammyaspeed Apr 21, 2023
16ac622
UBUNTU: [Packaging] update variants
ianmay81 May 31, 2023
66aa749
UBUNTU: Start new release
ianmay81 Jun 1, 2023
207a146
UBUNTU: [Packaging] add nvidia build depends for nvidia-fs-dkms
ianmay81 Jun 2, 2023
7779f6f
UBUNTU: [Configs] nvidia-5.19: update configs
ianmay81 May 31, 2023
e17d9d5
UBUNTU: link-to-tracker: update tracking bug
ianmay81 Jun 2, 2023
f3ad594
UBUNTU: Ubuntu-nvidia-5.19-5.19.0-1014.14
ianmay81 Jun 2, 2023
d5ac1f5
i2c: tegra: Set ACPI node as primary fwnode
Nov 17, 2022
d128c6b
i2c: tegra: Fix PEC support for SMBUS block read
Apr 27, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions Documentation/admin-guide/perf/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,3 +17,4 @@ Performance monitor support
xgene-pmu
arm_dsu_pmu
thunderx2-pmu
nvidia-pmu
299 changes: 299 additions & 0 deletions Documentation/admin-guide/perf/nvidia-pmu.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,299 @@
=========================================================
NVIDIA Tegra SoC Uncore Performance Monitoring Unit (PMU)
=========================================================

The NVIDIA Tegra SoC includes various system PMUs to measure key performance
metrics like memory bandwidth, latency, and utilization:

* Scalable Coherency Fabric (SCF)
* NVLink-C2C0
* NVLink-C2C1
* CNVLink
* PCIE

PMU Driver
----------

The PMUs in this document are based on ARM CoreSight PMU Architecture as
described in document: ARM IHI 0091. Since this is a standard architecture, the
PMUs are managed by a common driver "arm-cs-arch-pmu". This driver describes
the available events and configuration of each PMU in sysfs. Please see the
sections below to get the sysfs path of each PMU. Like other uncore PMU drivers,
the driver provides "cpumask" sysfs attribute to show the CPU id used to handle
the PMU event. There is also "associated_cpus" sysfs attribute, which contains a
list of CPUs associated with the PMU instance.

.. _SCF_PMU_Section:

SCF PMU
-------

The SCF PMU monitors system level cache events, CPU traffic, and
strongly-ordered (SO) PCIE write traffic to local/remote memory. Please see
:ref:`NVIDIA_Uncore_PMU_Traffic_Coverage_Section` for more info about the PMU
traffic coverage.

The events and configuration options of this PMU device are described in sysfs,
see /sys/bus/event_sources/devices/nvidia_scf_pmu_<socket-id>.

Example usage:

* Count event id 0x0 in socket 0::

perf stat -a -e nvidia_scf_pmu_0/event=0x0/

* Count event id 0x0 in socket 1::

perf stat -a -e nvidia_scf_pmu_1/event=0x0/

NVLink-C2C0 PMU
--------------------

The NVLink-C2C0 PMU monitors incoming traffic from a GPU/CPU connected with
NVLink-C2C (Chip-2-Chip) interconnect. The type of traffic captured by this PMU
varies dependent on the chip configuration:

* NVIDIA Grace Hopper Superchip: Hopper GPU is connected with Grace SoC.

In this config, the PMU captures GPU ATS translated or EGM traffic from the GPU.

* NVIDIA Grace CPU Superchip: two Grace CPU SoCs are connected.

In this config, the PMU captures read and relaxed ordered (RO) writes from
PCIE device of the remote SoC.

Please see :ref:`NVIDIA_Uncore_PMU_Traffic_Coverage_Section` for more info about
the PMU traffic coverage.

The events and configuration options of this PMU device are described in sysfs,
see /sys/bus/event_sources/devices/nvidia_nvlink_c2c0_pmu_<socket-id>.

Example usage:

* Count event id 0x0 from the GPU/CPU connected with socket 0::

perf stat -a -e nvidia_nvlink_c2c0_pmu_0/event=0x0/

* Count event id 0x0 from the GPU/CPU connected with socket 1::

perf stat -a -e nvidia_nvlink_c2c0_pmu_1/event=0x0/

* Count event id 0x0 from the GPU/CPU connected with socket 2::

perf stat -a -e nvidia_nvlink_c2c0_pmu_2/event=0x0/

* Count event id 0x0 from the GPU/CPU connected with socket 3::

perf stat -a -e nvidia_nvlink_c2c0_pmu_3/event=0x0/

NVLink-C2C1 PMU
-------------------

The NVLink-C2C1 PMU monitors incoming traffic from a GPU connected with
NVLink-C2C (Chip-2-Chip) interconnect. This PMU captures untranslated GPU
traffic, in contrast with NvLink-C2C0 PMU that captures ATS translated traffic.
Please see :ref:`NVIDIA_Uncore_PMU_Traffic_Coverage_Section` for more info about
the PMU traffic coverage.

The events and configuration options of this PMU device are described in sysfs,
see /sys/bus/event_sources/devices/nvidia_nvlink_c2c1_pmu_<socket-id>.

Example usage:

* Count event id 0x0 from the GPU connected with socket 0::

perf stat -a -e nvidia_nvlink_c2c1_pmu_0/event=0x0/

* Count event id 0x0 from the GPU connected with socket 1::

perf stat -a -e nvidia_nvlink_c2c1_pmu_1/event=0x0/

* Count event id 0x0 from the GPU connected with socket 2::

perf stat -a -e nvidia_nvlink_c2c1_pmu_2/event=0x0/

* Count event id 0x0 from the GPU connected with socket 3::

perf stat -a -e nvidia_nvlink_c2c1_pmu_3/event=0x0/

CNVLink PMU
---------------

The CNVLink PMU monitors traffic from GPU and PCIE device on remote sockets
to local memory. For PCIE traffic, this PMU captures read and relaxed ordered
(RO) write traffic. Please see :ref:`NVIDIA_Uncore_PMU_Traffic_Coverage_Section`
for more info about the PMU traffic coverage.

The events and configuration options of this PMU device are described in sysfs,
see /sys/bus/event_sources/devices/nvidia_cnvlink_pmu_<socket-id>.

Each SoC socket can be connected to one or more sockets via CNVLink. The user can
use "rem_socket" bitmap parameter to select the remote socket(s) to monitor.
Each bit represents the socket number, e.g. "rem_socket=0xE" corresponds to
socket 1 to 3.
/sys/bus/event_sources/devices/nvidia_cnvlink_pmu_<socket-id>/format/rem_socket
shows the valid bits that can be set in the "rem_socket" parameter.

The PMU can not distinguish the remote traffic initiator, therefore it does not
provide filter to select the traffic source to monitor. It reports combined
traffic from remote GPU and PCIE devices.

Example usage:

* Count event id 0x0 for the traffic from remote socket 1, 2, and 3 to socket 0::

perf stat -a -e nvidia_cnvlink_pmu_0/event=0x0,rem_socket=0xE/

* Count event id 0x0 for the traffic from remote socket 0, 2, and 3 to socket 1::

perf stat -a -e nvidia_cnvlink_pmu_1/event=0x0,rem_socket=0xD/

* Count event id 0x0 for the traffic from remote socket 0, 1, and 3 to socket 2::

perf stat -a -e nvidia_cnvlink_pmu_2/event=0x0,rem_socket=0xB/

* Count event id 0x0 for the traffic from remote socket 0, 1, and 2 to socket 3::

perf stat -a -e nvidia_cnvlink_pmu_3/event=0x0,rem_socket=0x7/


PCIE PMU
------------

The PCIE PMU monitors all read/write traffic from PCIE root ports to
local/remote memory. Please see :ref:`NVIDIA_Uncore_PMU_Traffic_Coverage_Section`
for more info about the PMU traffic coverage.

The events and configuration options of this PMU device are described in sysfs,
see /sys/bus/event_sources/devices/nvidia_pcie_pmu_<socket-id>.

Each SoC socket can support multiple root ports. The user can use
"root_port" bitmap parameter to select the port(s) to monitor, i.e.
"root_port=0xF" corresponds to root port 0 to 3.
/sys/bus/event_sources/devices/nvidia_pcie_pmu_<socket-id>/format/root_port
shows the valid bits that can be set in the "root_port" parameter.

Example usage:

* Count event id 0x0 from root port 0 and 1 of socket 0::

perf stat -a -e nvidia_pcie_pmu_0/event=0x0,root_port=0x3/

* Count event id 0x0 from root port 0 and 1 of socket 1::

perf stat -a -e nvidia_pcie_pmu_1/event=0x0,root_port=0x3/

.. _NVIDIA_Uncore_PMU_Traffic_Coverage_Section:

Traffic Coverage
----------------

The PMU traffic coverage may vary dependent on the chip configuration:

* **NVIDIA Grace Hopper Superchip**: Hopper GPU is connected with Grace SoC.

Example configuration with two Grace SoCs::

********************************* *********************************
* SOCKET-A * * SOCKET-B *
* * * *
* :::::::: * * :::::::: *
* : PCIE : * * : PCIE : *
* :::::::: * * :::::::: *
* | * * | *
* | * * | *
* ::::::: ::::::::: * * ::::::::: ::::::: *
* : : : : * * : : : : *
* : GPU :<--NVLink-->: Grace :<---CNVLink--->: Grace :<--NVLink-->: GPU : *
* : : C2C : SoC : * * : SoC : C2C : : *
* ::::::: ::::::::: * * ::::::::: ::::::: *
* | | * * | | *
* | | * * | | *
* &&&&&&&& &&&&&&&& * * &&&&&&&& &&&&&&&& *
* & GMEM & & CMEM & * * & CMEM & & GMEM & *
* &&&&&&&& &&&&&&&& * * &&&&&&&& &&&&&&&& *
* * * *
********************************* *********************************

GMEM = GPU Memory (e.g. HBM)
CMEM = CPU Memory (e.g. LPDDR5X)

|
| Following table contains traffic coverage of Grace SoC PMU in socket-A:

::

+--------------+-------+-----------+-----------+-----+----------+----------+
| | Source |
+ +-------+-----------+-----------+-----+----------+----------+
| Destination | |GPU ATS |GPU Not-ATS| | Socket-B | Socket-B |
| |PCI R/W|Translated,|Translated | CPU | CPU/PCIE1| GPU/PCIE2|
| | |EGM | | | | |
+==============+=======+===========+===========+=====+==========+==========+
| Local | PCIE |NVLink-C2C0|NVLink-C2C1| SCF | SCF PMU | CNVLink |
| SYSRAM/CMEM | PMU |PMU |PMU | PMU | | PMU |
+--------------+-------+-----------+-----------+-----+----------+----------+
| Local GMEM | PCIE | N/A |NVLink-C2C1| SCF | SCF PMU | CNVLink |
| | PMU | |PMU | PMU | | PMU |
+--------------+-------+-----------+-----------+-----+----------+----------+
| Remote | PCIE |NVLink-C2C0|NVLink-C2C1| SCF | | |
| SYSRAM/CMEM | PMU |PMU |PMU | PMU | N/A | N/A |
| over CNVLink | | | | | | |
+--------------+-------+-----------+-----------+-----+----------+----------+
| Remote GMEM | PCIE |NVLink-C2C0|NVLink-C2C1| SCF | | |
| over CNVLink | PMU |PMU |PMU | PMU | N/A | N/A |
+--------------+-------+-----------+-----------+-----+----------+----------+

PCIE1 traffic represents strongly ordered (SO) writes.
PCIE2 traffic represents reads and relaxed ordered (RO) writes.

* **NVIDIA Grace CPU Superchip**: two Grace CPU SoCs are connected.

Example configuration with two Grace SoCs::

******************* *******************
* SOCKET-A * * SOCKET-B *
* * * *
* :::::::: * * :::::::: *
* : PCIE : * * : PCIE : *
* :::::::: * * :::::::: *
* | * * | *
* | * * | *
* ::::::::: * * ::::::::: *
* : : * * : : *
* : Grace :<--------NVLink------->: Grace : *
* : SoC : * C2C * : SoC : *
* ::::::::: * * ::::::::: *
* | * * | *
* | * * | *
* &&&&&&&& * * &&&&&&&& *
* & CMEM & * * & CMEM & *
* &&&&&&&& * * &&&&&&&& *
* * * *
******************* *******************

GMEM = GPU Memory (e.g. HBM)
CMEM = CPU Memory (e.g. LPDDR5X)

|
| Following table contains traffic coverage of Grace SoC PMU in socket-A:

::

+-----------------+-----------+---------+----------+-------------+
| | Source |
+ +-----------+---------+----------+-------------+
| Destination | | | Socket-B | Socket-B |
| | PCI R/W | CPU | CPU/PCIE1| PCIE2 |
| | | | | |
+=================+===========+=========+==========+=============+
| Local | PCIE PMU | SCF PMU | SCF PMU | NVLink-C2C0 |
| SYSRAM/CMEM | | | | PMU |
+-----------------+-----------+---------+----------+-------------+
| Remote | | | | |
| SYSRAM/CMEM | PCIE PMU | SCF PMU | N/A | N/A |
| over NVLink-C2C | | | | |
+-----------------+-----------+---------+----------+-------------+

PCIE1 traffic represents strongly ordered (SO) writes.
PCIE2 traffic represents reads and relaxed ordered (RO) writes.
6 changes: 3 additions & 3 deletions Ubuntu.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
Name: linux-unstable
Version: 5.17.0
Name: linux-nvidia-5.19
Version: 5.19.0
Series: 22.04 (jammy)
Description:
This is the source code for the Ubuntu linux kernel for the 22.04 series. This
source tree is used to produce the flavours: generic, generic-64k, generic-lpae.
source tree is used to produce the flavours: nvidia, nvidia-64k, nvidia-lowlatency.
This kernel is configured to support the widest range of desktop, laptop and
server configurations.
1 change: 1 addition & 0 deletions arch/arm64/Kconfig
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# SPDX-License-Identifier: GPL-2.0-only
config ARM64
def_bool y
select ACPI_APMT if ACPI
select ACPI_CCA_REQUIRED if ACPI
select ACPI_GENERIC_GSI if ACPI
select ACPI_GTDT if ACPI
Expand Down
5 changes: 5 additions & 0 deletions arch/arm64/configs/defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,9 @@ CONFIG_ARCH_ZYNQMP=y
CONFIG_ARM64_VA_BITS_48=y
CONFIG_SCHED_MC=y
CONFIG_SCHED_SMT=y
CONFIG_NR_CPUS=512
CONFIG_NUMA=y
CONFIG_NODES_SHIFT=6
CONFIG_KEXEC=y
CONFIG_KEXEC_FILE=y
CONFIG_CRASH_DUMP=y
Expand Down Expand Up @@ -512,6 +514,8 @@ CONFIG_SPI_QCOM_GENI=m
CONFIG_SPI_S3C64XX=y
CONFIG_SPI_SH_MSIOF=m
CONFIG_SPI_SUN6I=y
CONFIG_SPI_TEGRA210_QUAD=m
CONFIG_SPI_TEGRA114=m
CONFIG_SPI_SPIDEV=m
CONFIG_SPMI=y
CONFIG_PINCTRL_MAX77620=y
Expand Down Expand Up @@ -1214,6 +1218,7 @@ CONFIG_PHY_AM654_SERDES=m
CONFIG_PHY_J721E_WIZ=m
CONFIG_ARM_SMMU_V3_PMU=m
CONFIG_FSL_IMX8_DDR_PMU=m
CONFIG_ARM_CORESIGHT_PMU_ARCH_SYSTEM_PMU=y
CONFIG_QCOM_L2_PMU=y
CONFIG_QCOM_L3_PMU=y
CONFIG_HISI_PMU=y
Expand Down
4 changes: 4 additions & 0 deletions arch/arm64/include/asm/irq.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@

#ifndef __ASSEMBLER__

#if defined(CONFIG_ARM_GIC_V3_ITS)
#define NR_IRQS (1 << 19)
#endif

#include <asm-generic/irq.h>

struct pt_regs;
Expand Down
1 change: 1 addition & 0 deletions debian.hwe-5.19/abi/abiname
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
43
Loading