€•Æ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/cpu-freq/cpufreq-stats”Œ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/cpu-freq/cpufreq-stats”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒItalian”…””}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ*/translations/it_IT/cpu-freq/cpufreq-stats”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒJapanese”…””}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ*/translations/ja_JP/cpu-freq/cpufreq-stats”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒKorean”…””}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ*/translations/ko_KR/cpu-freq/cpufreq-stats”Œ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/cpu-freq/cpufreq-stats”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒcomment”“”)”}”(hŒ SPDX-License-Identifier: GPL-2.0”h]”hŒ SPDX-License-Identifier: GPL-2.0”…””}”hh£sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1h¡hhhžhhŸŒD/var/lib/git/docbuild/linux/Documentation/cpu-freq/cpufreq-stats.rst”h KubhŒsection”“”)”}”(hhh]”(hŒtitle”“”)”}”(hŒ*General Description of sysfs CPUFreq Stats”h]”hŒ*General Description of sysfs CPUFreq Stats”…””}”(hh»hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h¹hh¶hžhhŸh³h KubhŒ paragraph”“”)”}”(hŒinformation for users”h]”hŒinformation for users”…””}”(hhËhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÉhŸh³h Khh¶hžhubhÊ)”}”(hŒ;Author: Venkatesh Pallipadi ”h]”(hŒAuthor: Venkatesh Pallipadi <”…””}”(hhÙhžhhŸNh NubhŒ reference”“”)”}”(hŒvenkatesh.pallipadi@intel.com”h]”hŒvenkatesh.pallipadi@intel.com”…””}”(hhãhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”Œ$mailto:venkatesh.pallipadi@intel.com”uh1háhhÙubhŒ>”…””}”(hhÙhžhhŸNh Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÉhŸh³h K hh¶hžhubh¢)”}”(hŒ\Contents 1. Introduction 2. Statistics Provided (with example) 3. Configuring cpufreq-stats”h]”hŒ\Contents 1. Introduction 2. Statistics Provided (with example) 3. Configuring cpufreq-stats”…””}”hhýsbah}”(h]”h ]”h"]”h$]”h&]”h±h²uh1h¡hh¶hžhhŸh³h Kubhµ)”}”(hhh]”(hº)”}”(hŒ1. Introduction”h]”hŒ1. Introduction”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h¹hj hžhhŸh³h KubhÊ)”}”(hX~cpufreq-stats is a driver that provides CPU frequency statistics for each CPU. These statistics are provided in /sysfs as a bunch of read_only interfaces. This interface (when configured) will appear in a separate directory under cpufreq in /sysfs (/devices/system/cpu/cpuX/cpufreq/stats/) for each CPU. Various statistics will form read_only files under this directory.”h]”hX~cpufreq-stats is a driver that provides CPU frequency statistics for each CPU. These statistics are provided in /sysfs as a bunch of read_only interfaces. This interface (when configured) will appear in a separate directory under cpufreq in /sysfs (/devices/system/cpu/cpuX/cpufreq/stats/) for each CPU. Various statistics will form read_only files under this directory.”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÉhŸh³h Khj hžhubhÊ)”}”(hŒ•This driver is designed to be independent of any particular cpufreq_driver that may be running on your CPU. So, it will work with any cpufreq_driver.”h]”hŒ•This driver is designed to be independent of any particular cpufreq_driver that may be running on your CPU. So, it will work with any cpufreq_driver.”…””}”(hj*hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÉhŸh³h Khj hžhubeh}”(h]”Œ introduction”ah ]”h"]”Œ1. introduction”ah$]”h&]”uh1h´hh¶hžhhŸh³h Kubhµ)”}”(hhh]”(hº)”}”(hŒ%2. Statistics Provided (with example)”h]”hŒ%2. Statistics Provided (with example)”…””}”(hjChžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1h¹hj@hžhhŸh³h K!ubhÊ)”}”(hŒHcpufreq stats provides following statistics (explained in detail below).”h]”hŒHcpufreq stats provides following statistics (explained in detail below).”…””}”(hjQhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÉhŸh³h K#hj@hžhubhŒ bullet_list”“”)”}”(hhh]”(hŒ list_item”“”)”}”(hŒ time_in_state”h]”hÊ)”}”(hjhh]”hŒ time_in_state”…””}”(hjjhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÉhŸh³h K%hjfubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjahžhhŸh³h Nubje)”}”(hŒ total_trans”h]”hÊ)”}”(hjh]”hŒ total_trans”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÉhŸh³h K&hj}ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjahžhhŸh³h Nubje)”}”(hŒ trans_table ”h]”hÊ)”}”(hŒ trans_table”h]”hŒ trans_table”…””}”(hj˜hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÉhŸh³h K'hj”ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjahžhhŸh³h Nubeh}”(h]”h ]”h"]”h$]”h&]”Œbullet”Œ-”uh1j_hŸh³h K%hj@hžhubhÊ)”}”(hX"All the statistics will be from the time the stats driver has been inserted (or the time the stats were reset) to the time when a read of a particular statistic is done. Obviously, stats driver will not have any information about the frequency transitions before the stats driver insertion.”h]”hX"All the statistics will be from the time the stats driver has been inserted (or the time the stats were reset) to the time when a read of a particular statistic is done. Obviously, stats driver will not have any information about the frequency transitions before the stats driver insertion.”…””}”(hj´hžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÉhŸh³h K)hj@hžhubhŒ literal_block”“”)”}”(hXr:/sys/devices/system/cpu/cpu0/cpufreq/stats # ls -l total 0 drwxr-xr-x 2 root root 0 May 14 16:06 . drwxr-xr-x 3 root root 0 May 14 15:58 .. --w------- 1 root root 4096 May 14 16:06 reset -r--r--r-- 1 root root 4096 May 14 16:06 time_in_state -r--r--r-- 1 root root 4096 May 14 16:06 total_trans -r--r--r-- 1 root root 4096 May 14 16:06 trans_table”h]”hXr:/sys/devices/system/cpu/cpu0/cpufreq/stats # ls -l total 0 drwxr-xr-x 2 root root 0 May 14 16:06 . drwxr-xr-x 3 root root 0 May 14 15:58 .. --w------- 1 root root 4096 May 14 16:06 reset -r--r--r-- 1 root root 4096 May 14 16:06 time_in_state -r--r--r-- 1 root root 4096 May 14 16:06 total_trans -r--r--r-- 1 root root 4096 May 14 16:06 trans_table”…””}”hjÄsbah}”(h]”h ]”h"]”h$]”h&]”h±h²uh1jÂhŸh³h K0hj@hžhubj`)”}”(hhh]”je)”}”(hŒ **reset** ”h]”hÊ)”}”(hŒ **reset**”h]”hŒstrong”“”)”}”(hjÛh]”hŒreset”…””}”(hjßhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjÙubah}”(h]”h ]”h"]”h$]”h&]”uh1hÉhŸh³h K9hjÕubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjÒhžhhŸh³h Nubah}”(h]”h ]”h"]”h$]”h&]”j²j³uh1j_hŸh³h K9hj@hžhubhÊ)”}”(hŒ­Write-only attribute that can be used to reset the stat counters. This can be useful for evaluating system behaviour under different governors without the need for a reboot.”h]”hŒ­Write-only attribute that can be used to reset the stat counters. This can be useful for evaluating system behaviour under different governors without the need for a reboot.”…””}”(hjþhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÉhŸh³h K;hj@hžhubj`)”}”(hhh]”je)”}”(hŒ**time_in_state** ”h]”hÊ)”}”(hŒ**time_in_state**”h]”jÞ)”}”(hjh]”hŒ time_in_state”…””}”(hjhžhhŸNh Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jÝhjubah}”(h]”h ]”h"]”h$]”h&]”uh1hÉhŸh³h K?hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj hžhhŸh³h Nubah}”(h]”h ]”h"]”h$]”h&]”j²j³uh1j_hŸh³h K?hj@hžhubhÊ)”}”(hXkThis gives the amount of time spent in each of the frequencies supported by this CPU. The cat output will have "