€•‰DŒsphinx.addnodes”Œdocument”“”)�”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)�”}”(hhh]”(hŒ pending_xref”“”)�”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒChinese (Simplified)”…”�”}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ"/translations/zh_CN/gpu/amdgpu/ptl”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)�”}”(hhh]”hŒChinese (Traditional)”…”�”}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ"/translations/zh_TW/gpu/amdgpu/ptl”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒItalian”…”�”}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ"/translations/it_IT/gpu/amdgpu/ptl”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒJapanese”…”�”}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ"/translations/ja_JP/gpu/amdgpu/ptl”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒKorean”…”�”}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ"/translations/ko_KR/gpu/amdgpu/ptl”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒPortuguese (Brazilian)”…”�”}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ"/translations/pt_BR/gpu/amdgpu/ptl”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒSpanish”…”�”}”hh–sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ"/translations/sp_SP/gpu/amdgpu/ptl”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒsection”“”)�”}”(hhh]”(hŒtitle”“”)�”}”(hŒ'Peak Tops Limiter (PTL) sysfs Interface”h]”hŒ'Peak Tops Limiter (PTL) sysfs Interface”…”�”}”(hh¼h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhh·h²hh³Œ /sys/class/drm/card1/device/ptl/ptl_enable" # Disable PTL sudo bash -c "echo 0 > /sys/class/drm/card1/device/ptl/ptl_enable"”h]”hŒö# 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"”…”�”}”hjÄsbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1jÂh³hÊh´K$hjÃh²hubeh}”(h]”Œptl-enable-disable”ah ]”h"]”Œptl enable/disable”ah$]”h&]”uh1hµhh·h²hh³hÊh´Kubh¶)�”}”(hhh]”(h»)�”}”(hŒ#PTL Format (Preferred Data Formats)”h]”hŒ#PTL Format (Preferred Data Formats)”…”�”}”(hjßh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhjÜh²hh³hÊh´K/ubhÝ)�”}”(hŒ(File: `ptl_format` Type: Read/Write (rw)”h]”(hŒFile: ”…”�”}”(hjíh²hh³Nh´Nubhç)�”}”(hŒ `ptl_format`”h]”hŒ ptl_format”…”�”}”(hjõh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hæhjíubhŒ Type: Read/Write (rw)”…”�”}”(hjíh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÜh³hÊh´K0hjÜh²hubhÝ)�”}”(hŒ7Read: Returns the two preferred formats, e.g. `I8,F32`.”h]”(hŒ.Read: Returns the two preferred formats, e.g. ”…”�”}”(hj h²hh³Nh´Nubhç)�”}”(hŒ`I8,F32`”h]”hŒI8,F32”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hæhj ubhŒ.”…”�”}”(hj h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÜh³hÊh´K3hjÜh²hubhÝ)�”}”(hŒ?Write: Accepts two formats separated by a comma, e.g. `I8,F32`.”h]”(hŒ6Write: Accepts two formats separated by a comma, e.g. ”…”�”}”(hj-h²hh³Nh´Nubhç)�”}”(hŒ`I8,F32`”h]”hŒI8,F32”…”�”}”(hj5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hæhj-ubhŒ.”…”�”}”(hj-h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÜh³hÊh´K5hjÜh²hubjL)�”}”(hhh]”(jQ)�”}”(hŒ-Both formats must be supported and different.”h]”hÝ)�”}”(hjRh]”hŒ-Both formats must be supported and different.”…”�”}”(hjTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÜh³hÊh´K7hjPubah}”(h]”h ]”h"]”h$]”h&]”uh1jPhjMh²hh³hÊh´NubjQ)�”}”(hŒˆIf an invalid format is provided (not supported, or both formats are the same), the driver will return "write error: Invalid argument". ”h]”hÝ)�”}”(hŒ‡If an invalid format is provided (not supported, or both formats are the same), the driver will return "write error: Invalid argument".”h]”hŒ‹If an invalid format is provided (not supported, or both formats are the same), the driver will return “write error: Invalid argumentâ€�.”…”�”}”(hjkh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÜh³hÊh´K8hjgubah}”(h]”h ]”h"]”h$]”h&]”uh1jPhjMh²hh³hÊh´Nubeh}”(h]”h ]”h"]”h$]”h&]”j¹jºuh1jKh³hÊh´K7hjÜh²hubhÝ)�”}”(hŒ Examples::”h]”hŒ Examples:”…”�”}”(hj…h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÜh³hÊh´K;hjÜh²hubjÃ)�”}”(hŒ®# 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"”h]”hŒ®# 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"”…”�”}”hj“sbah}”(h]”h ]”h"]”h$]”h&]”jÒjÓuh1jÂh³hÊh´K=hjÜh²hubeh}”(h]”Œ!ptl-format-preferred-data-formats”ah ]”h"]”Œ#ptl format (preferred data formats)”ah$]”h&]”uh1hµhh·h²hh³hÊh´K/ubh¶)�”}”(hhh]”(h»)�”}”(hŒSupported Formats”h]”hŒSupported Formats”…”�”}”(hj¬h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhj©h²hh³hÊh´KEubhÝ)�”}”(hŒ1File: `ptl_supported_formats` Type: Read-only (r)”h]”(hŒFile: ”…”�”}”(hjºh²hh³Nh´Nubhç)�”}”(hŒ`ptl_supported_formats`”h]”hŒptl_supported_formats”…”�”}”(hjÂh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hæhjºubhŒ Type: Read-only (r)”…”�”}”(hjºh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÜh³hÊh´KFhj©h²hubhÝ)�”}”(hŒVRead: Returns a comma-separated list of supported formats, e.g. `I8,F16,BF16,F32,F64`.”h]”(hŒ@Read: Returns a comma-separated list of supported formats, e.g. ”…”�”}”(hjÚh²hh³Nh´Nubhç)�”}”(hŒ`I8,F16,BF16,F32,F64`”h]”hŒI8,F16,BF16,F32,F64”…”�”}”(hjâh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hæhjÚubhŒ.”…”�”}”(hjÚh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÜh³hÊh´KIhj©h²hubhÝ)�”}”(hŒ Example::”h]”hŒExample:”…”�”}”(hjúh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÜh³hÊh´KLhj©h²hubjÃ)�”}”(hŒq# Check supported formats cat /sys/class/drm/card1/device/ptl/ptl_supported_formats # Output: I8,F16,BF16,F32,F64”h]”hŒq# Check supported formats cat /sys/class/drm/card1/device/ptl/ptl_supported_formats # Output: I8,F16,BF16,F32,F64”…”�”}”hjsbah}”(h]”h ]”h"]”h$]”h&]”jÒjÓuh1jÂh³hÊh´KNhj©h²hubeh}”(h]”Œsupported-formats”ah ]”h"]”Œsupported formats”ah$]”h&]”uh1hµhh·h²hh³hÊh´KEubh¶)�”}”(hhh]”(h»)�”}”(hŒBehavioral Notes”h]”hŒBehavioral Notes”…”�”}”(hj!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhjh²hh³hÊh´KSubjL)�”}”(hhh]”(jQ)�”}”(hŒ0PTL formats can only be set when PTL is enabled.”h]”hÝ)�”}”(hj4h]”hŒ0PTL formats can only be set when PTL is enabled.”…”�”}”(hj6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÜh³hÊh´KThj2ubah}”(h]”h ]”h"]”h$]”h&]”uh1jPhj/h²hh³hÊh´NubjQ)�”}”(hŒ/If PTL is disabled, `ptl_format` returns `N/A`.”h]”hÝ)�”}”(hjKh]”(hŒIf PTL is disabled, ”…”�”}”(hjMh²hh³Nh´Nubhç)�”}”(hŒ `ptl_format`”h]”hŒ ptl_format”…”�”}”(hjTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hæhjMubhŒ returns ”…”�”}”(hjMh²hh³Nh´Nubhç)�”}”(hŒ`N/A`”h]”hŒN/A”…”�”}”(hjfh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hæhjMubhŒ.”…”�”}”(hjMh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÜh³hÊh´KUhjIubah}”(h]”h ]”h"]”h$]”h&]”uh1jPhj/h²hh³hÊh´NubjQ)�”}”(hŒ^Only two formats can be set at a time, and they must be from the supported set and different..”h]”hÝ)�”}”(hj†h]”hŒ^Only two formats can be set at a time, and they must be from the supported set and different..”…”�”}”(hjˆh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÜh³hÊh´KVhj„ubah}”(h]”h ]”h"]”h$]”h&]”uh1jPhj/h²hh³hÊh´NubjQ)�”}”(hŒ'All commands support per-GPU targeting.”h]”hÝ)�”}”(hj�h]”hŒ'All commands support per-GPU targeting.”…”�”}”(hjŸh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÜh³hÊh´KWhj›ubah}”(h]”h ]”h"]”h$]”h&]”uh1jPhj/h²hh³hÊh´NubjQ)�”}”(hŒDRoot permission is required to enable/disable PTL or change formats.”h]”hÝ)�”}”(hj´h]”hŒDRoot permission is required to enable/disable PTL or change formats.”…”�”}”(hj¶h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÜh³hÊh´KXhj²ubah}”(h]”h ]”h"]”h$]”h&]”uh1jPhj/h²hh³hÊh´NubjQ)�”}”(hŒSIf the hardware does not support PTL, the PTL sysfs directory will not be created. ”h]”hÝ)�”}”(hŒRIf the hardware does not support PTL, the PTL sysfs directory will not be created.”h]”hŒRIf the hardware does not support PTL, the PTL sysfs directory will not be created.”…”�”}”(hjÍh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÜh³hÊh´KYhjÉubah}”(h]”h ]”h"]”h$]”h&]”uh1jPhj/h²hh³hÊh´Nubeh}”(h]”h ]”h"]”h$]”h&]”j¹jºuh1jKh³hÊh´KThjh²hubeh}”(h]”Œbehavioral-notes”ah ]”h"]”Œbehavioral notes”ah$]”h&]”uh1hµhh·h²hh³hÊh´KSubh¶)�”}”(hhh]”(h»)�”}”(hŒImplementation”h]”hŒImplementation”…”�”}”(hjòh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhjïh²hh³hÊh´K]ubhÝ)�”}”(hŒQThe PTL sysfs nodes are implemented in `drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c`.”h]”(hŒ'The PTL sysfs nodes are implemented in ”…”�”}”(hjh²hh³Nh´Nubhç)�”}”(hŒ)`drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c`”h]”hŒ'drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hæhjubhŒ.”…”�”}”(hjh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÜh³hÊh´K^hjïh²hubeh}”(h]”Œimplementation”ah ]”h"]”Œimplementation”ah$]”h&]”uh1hµhh·h²hh³hÊh´K]ubeh}”(h]”Œ%peak-tops-limiter-ptl-sysfs-interface”ah ]”h"]”Œ'peak tops limiter (ptl) sysfs interface”ah$]”h&]”uh1hµhhh²hh³hÊh´Kubeh}”(h]”h ]”h"]”h$]”h&]”Œsource”hÊuh1hŒcurrent_source”NŒ current_line”NŒsettings”Œdocutils.frontend”ŒValues”“”)�”}”(hºNŒ generator”NŒ datestamp”NŒ source_link”NŒ source_url”NŒ toc_backlinks”Œentry”Œfootnote_backlinks”KŒ sectnum_xform”KŒstrip_comments”NŒstrip_elements_with_classes”NŒ strip_classes”NŒ report_level”KŒ halt_level”KŒexit_status_level”KŒdebug”NŒwarning_stream”NŒ traceback”ˆŒinput_encoding”Œ utf-8-sig”Œinput_encoding_error_handler”Œstrict”Œoutput_encoding”Œutf-8”Œoutput_encoding_error_handler”jSŒerror_encoding”Œutf-8”Œerror_encoding_error_handler”Œbackslashreplace”Œ language_code”Œen”Œrecord_dependencies”NŒconfig”NŒ id_prefix”hŒauto_id_prefix”Œid”Œ dump_settings”NŒdump_internals”NŒdump_transforms”NŒdump_pseudo_xml”NŒexpose_internals”NŒstrict_visitor”NŒ_disable_config”NŒ_source”hÊŒ _destination”NŒ _config_files”]”Œ7/var/lib/git/docbuild/linux/Documentation/docutils.conf”aŒfile_insertion_enabled”ˆŒ raw_enabled”KŒline_length_limit”M'Œpep_references”NŒ pep_base_url”Œhttps://peps.python.org/”Œpep_file_url_template”Œpep-%04d”Œrfc_references”NŒ rfc_base_url”Œ&https://datatracker.ietf.org/doc/html/”Œ tab_width”KŒtrim_footnote_reference_space”‰Œsyntax_highlight”Œlong”Œ smart_quotes”ˆŒsmartquotes_locales”]”Œcharacter_level_inline_markup”‰Œdoctitle_xform”‰Œ docinfo_xform”KŒsectsubtitle_xform”‰Œ image_loading”Œlink”Œembed_stylesheet”‰Œcloak_email_addresses”ˆŒsection_self_link”‰Œenv”NubŒreporter”NŒindirect_targets”]”Œsubstitution_defs”}”Œsubstitution_names”}”Œrefnames”}”Œrefids”}”Œnameids”}”(j-j*jjjÀj½jÙjÖj¦j£jjjìjéj%j"uŒ nametypes”}”(j-‰j‰jÀ‰jÙ‰j¦‰j‰jì‰j%‰uh}”(j*h·jhËj½jjÖjÃj£jÜjj©jéjj"jïuŒ footnote_refs”}”Œ citation_refs”}”Œ autofootnotes”]”Œautofootnote_refs”]”Œsymbol_footnotes”]”Œsymbol_footnote_refs”]”Œ footnotes”]”Œ citations”]”Œautofootnote_start”KŒsymbol_footnote_start”KŒ id_counter”Œ collections”ŒCounter”“”}”…”R”Œparse_messages”]”Œtransform_messages”]”Œ transformer”NŒ include_log”]”Œ decoration”Nh²hub.