Something went wrong. Try again.
(I'm so sorry!) Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Something went wrong. Try again.
2.7 kB · 94 lines
at master
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495=======================================Peak Tops Limiter (PTL) sysfs Interface=======================================
Overview--------The Peak Tops Limiter (PTL) sysfs interface enables users to control andconfigure the PTL feature for each GPU individually. All PTL-relatedsysfs files are located under `/sys/class/drm/cardX/device/ptl/`, where`X` is the GPU index. Through these files, users can enable or disablePTL, set preferred data formats, and query supported formats for each GPU.
PTL sysfs files----------------The following files are available under `/sys/class/drm/cardX/device/ptl/`:
- `ptl_enable`- `ptl_format`- `ptl_supported_formats`
PTL Enable/Disable------------------File: `ptl_enable`Type: Read/Write (rw)
Read: Returns the current PTL status as a string: `enabled` if PTLis active, or `disabled` if inactive.
Write:
- Write `1` or `enabled` to enable PTL- Write `0` or `disabled` to disable PTL
Examples::
# Query PTL status cat /sys/class/drm/card1/device/ptl/ptl_enable # Output: enabled
# Enable PTL sudo bash -c "echo 1 > /sys/class/drm/card1/device/ptl/ptl_enable"
# Disable PTL sudo bash -c "echo 0 > /sys/class/drm/card1/device/ptl/ptl_enable"
PTL Format (Preferred Data Formats)-----------------------------------File: `ptl_format`Type: Read/Write (rw)
Read: Returns the two preferred formats, e.g. `I8,F32`.
Write: Accepts two formats separated by a comma, e.g. `I8,F32`.
- Both formats must be supported and different.- If an invalid format is provided (not supported, or both formats are the same), the driver will return "write error: Invalid argument".
Examples::
# Query PTL formats cat /sys/class/drm/card1/device/ptl/ptl_format # Output: I8,F32
# Set PTL formats sudo bash -c "echo I8,F32 > /sys/class/drm/card1/device/ptl/ptl_format"
Supported Formats-----------------File: `ptl_supported_formats`Type: Read-only (r)
Read: Returns a comma-separated list of supported formats, e.g.`I8,F16,BF16,F32,F64`.
Example::
# Check supported formats cat /sys/class/drm/card1/device/ptl/ptl_supported_formats # Output: I8,F16,BF16,F32,F64
Behavioral Notes----------------- PTL formats can only be set when PTL is enabled.- If PTL is disabled, `ptl_format` returns `N/A`.- Only two formats can be set at a time, and they must be from the supported set and different..- All commands support per-GPU targeting.- Root permission is required to enable/disable PTL or change formats.- If the hardware does not support PTL, the PTL sysfs directory will not be created.
Implementation--------------The PTL sysfs nodes are implemented in `drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c`.