3.7. Active-State Power Management

Active-State Power Management (ASPM) saves power in the Peripheral Component Interconnect Express (PCI Express or PCIe) subsystem by setting a lower power state for PCIe links when the devices to which they connect are not in use. ASPM controls the power state at both ends of the link, and saves power in the link even when the device at the end of the link is in a fully powered-on state.
When ASPM is enabled, device latency increases because of the time required to transition the link between different power states. ASPM has three policies to determine power states:
default
sets PCIe link power states according to the defaults specified by the firmware on the system (for example, BIOS). This is the default state for ASPM.
powersave
sets ASPM to save power wherever possible, regardless of the cost to performance.
performance
disables ASPM to allow PCIe links to operate with maximum performance.
You can forcibly enable or disable ASPM support by using the pcie_aspm kernel parameter:
  • pcie_aspm=off disables ASPM
  • pcie_aspm=force enables ASPM, even on devices that do not support ASPM
If the hardware supports ASPM, the operating system enables ASPM automatically at boot time. To check the ASPM support, see the output of the following command:
~]$ journalctl -b | grep ASPM

Warning

If you forcibly enable ASPM by using pcie_aspm=force on hardware that does not support ASPM, the system might become unresponsive. Before setting pcie_aspm=force, ensure that all PCIe hardware on the system supports ASPM.
To set the ASPM policies, use one of the following options:
  • modify the settings in the /sys/module/pcie_aspm/parameters/policy file
  • specify the pcie_aspm.policy kernel parameter at boot time
    For example, pcie_aspm.policy=performance sets the ASPM performance policy.