Skip to main content

Lspci

The PCI Utilities package contains a library for portable access to PCI bus configuration registers and several utilities based on this library.

  • lspci: displays detailed information about all PCI buses and devices.

Dependency

Most Linux distro comes with lspci pre-installed. On Windows, VC is packaging a win-x64 build inside VC package itself.

Supported Platforms

  • linux-x64
  • linux-arm64
  • win-x64

lspci Output Description

The following section describes the various counters/metrics that are available with the lspci toolset.

The command we are using is lspci -vvv. The data structure of the lspci output is not a straightforward dicctionary. The data structure is parsed according to the contract at PciDevice.cs.

For each PCI device, we are parsing the name, address, various properties and capabilities.

Example

This is an example of the minimum profile to run LspciMonitor. The PCI devices is not expected to change often, so the monitor frequency could be set very low.

{
"Description": "Default Monitors",
"Parameters": {
"MonitorFrequency": "12:00:00",
"MonitorWarmupPeriod": "00:01:00"
},
"Monitors": [
{
"Type": "LspciMonitor",
"Parameters": {
"Scenario": "CapturePCIDevicesDetails",
"MonitorFrequency": "$.Parameters.MonitorFrequency",
"MonitorWarmupPeriod": "$.Parameters.MonitorWarmupPeriod"
}
}
]
}