provide a multiplier to reduce AMDGPU power cap

This commit is contained in:
Josh Lay 2022-05-05 21:48:35 -05:00
parent 5f6931aacb
commit f20e479c59
Signed by: jlay
GPG key ID: B265E45CACAD108A
2 changed files with 7 additions and 2 deletions

View file

@ -2,6 +2,10 @@
- hosts: localhost - hosts: localhost
become: yes become: yes
vars: vars:
power_max_multi: 0.90 # should not exceed 1.0, must be a float. note: driver seems to do its own rounding
power_max: "{{ power_max_b64['content'] | b64decode }}"
power_cap_float: "{{ power_max |float * power_max_multi }}"
power_cap: "{{ power_cap_float |int }}"
card: card0 # default to card0 card: card0 # default to card0
base_profiles: # standard tuned profiles available on Fedora, should dynamically discover? base_profiles: # standard tuned profiles available on Fedora, should dynamically discover?
- balanced - balanced
@ -37,7 +41,7 @@
- name: get max power capability for {{ card }} - name: get max power capability for {{ card }}
slurp: slurp:
src: "{{ hwmon.files.0.path }}" src: "{{ hwmon.files.0.path }}"
register: power_max register: power_max_b64
- name: ensure tuned is installed - name: ensure tuned is installed
package: package:
name: tuned name: tuned

View file

@ -5,7 +5,8 @@ summary={{ item.1 }} + TCP/RAID tweaks + AMDGPU pp_power_profile_mode = {{ item.
[sysfs] [sysfs]
/sys/class/drm/{{ card }}/device/power_dpm_force_performance_level = manual /sys/class/drm/{{ card }}/device/power_dpm_force_performance_level = manual
/sys/class/drm/{{ card }}/device/pp_power_profile_mode = {{ item.0.value }} /sys/class/drm/{{ card }}/device/pp_power_profile_mode = {{ item.0.value }}
/sys/class/drm/{{ card }}/device/hwmon/hwmon9/power1_cap = {{ power_max['content'] | b64decode }} # limit to {{ power_max_multi * 100.0 |int }}% of the max power cap, nearest (higher) whole number
/sys/class/drm/{{ card }}/device/hwmon/hwmon9/power1_cap = {{ power_cap }}
[sysctl] [sysctl]
net.core.default_qdisc=fq net.core.default_qdisc=fq