Based on kernel version 6.11
. Page generated on 2024-09-24 08:21 EST
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 | =========================================== GPU Power/Thermal Controls and Monitoring =========================================== HWMON Interfaces ================ .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c :doc: hwmon GPU sysfs Power State Interfaces ================================ GPU power controls are exposed via sysfs files. power_dpm_state --------------- .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c :doc: power_dpm_state power_dpm_force_performance_level --------------------------------- .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c :doc: power_dpm_force_performance_level pp_table -------- .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c :doc: pp_table pp_od_clk_voltage ----------------- .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c :doc: pp_od_clk_voltage pp_dpm_* -------- .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c :doc: pp_dpm_sclk pp_dpm_mclk pp_dpm_socclk pp_dpm_fclk pp_dpm_dcefclk pp_dpm_pcie pp_power_profile_mode --------------------- .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c :doc: pp_power_profile_mode pm_policy --------------------- .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c :doc: pm_policy \*_busy_percent --------------- .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c :doc: gpu_busy_percent .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c :doc: mem_busy_percent gpu_metrics ----------- .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c :doc: gpu_metrics fan_curve --------- .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c :doc: fan_curve acoustic_limit_rpm_threshold ---------------------------- .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c :doc: acoustic_limit_rpm_threshold acoustic_target_rpm_threshold ----------------------------- .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c :doc: acoustic_target_rpm_threshold fan_target_temperature ---------------------- .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c :doc: fan_target_temperature fan_minimum_pwm --------------- .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c :doc: fan_minimum_pwm GFXOFF ====== GFXOFF is a feature found in most recent GPUs that saves power at runtime. The card's RLC (RunList Controller) firmware powers off the gfx engine dynamically when there is no workload on gfx or compute pipes. GFXOFF is on by default on supported GPUs. Userspace can interact with GFXOFF through a debugfs interface (all values in `uint32_t`, unless otherwise noted): ``amdgpu_gfxoff`` ----------------- Use it to enable/disable GFXOFF, and to check if it's current enabled/disabled:: $ xxd -l1 -p /sys/kernel/debug/dri/0/amdgpu_gfxoff 01 - Write 0 to disable it, and 1 to enable it. - Read 0 means it's disabled, 1 it's enabled. If it's enabled, that means that the GPU is free to enter into GFXOFF mode as needed. Disabled means that it will never enter GFXOFF mode. ``amdgpu_gfxoff_status`` ------------------------ Read it to check current GFXOFF's status of a GPU:: $ xxd -l1 -p /sys/kernel/debug/dri/0/amdgpu_gfxoff_status 02 - 0: GPU is in GFXOFF state, the gfx engine is powered down. - 1: Transition out of GFXOFF state - 2: Not in GFXOFF state - 3: Transition into GFXOFF state If GFXOFF is enabled, the value will be transitioning around [0, 3], always getting into 0 when possible. When it's disabled, it's always at 2. Returns ``-EINVAL`` if it's not supported. ``amdgpu_gfxoff_count`` ----------------------- Read it to get the total GFXOFF entry count at the time of query since system power-up. The value is an `uint64_t` type, however, due to firmware limitations, it can currently overflow as an `uint32_t`. *Only supported in vangogh* ``amdgpu_gfxoff_residency`` --------------------------- Write 1 to amdgpu_gfxoff_residency to start logging, and 0 to stop. Read it to get average GFXOFF residency % multiplied by 100 during the last logging interval. E.g. a value of 7854 means 78.54% of the time in the last logging interval the GPU was in GFXOFF mode. *Only supported in vangogh* |