12ceb3fb0SAlex ChiangWhat: /sys/devices/system/cpu/ 22ceb3fb0SAlex ChiangDate: pre-git history 32ceb3fb0SAlex ChiangContact: Linux kernel mailing list <linux-kernel@vger.kernel.org> 42ceb3fb0SAlex ChiangDescription: 52ceb3fb0SAlex Chiang A collection of both global and individual CPU attributes 62ceb3fb0SAlex Chiang 72ceb3fb0SAlex Chiang Individual CPU attributes are contained in subdirectories 82ceb3fb0SAlex Chiang named by the kernel's logical CPU number, e.g.: 92ceb3fb0SAlex Chiang 102ceb3fb0SAlex Chiang /sys/devices/system/cpu/cpu#/ 112ceb3fb0SAlex Chiang 12e6dcfa7cSAlex ChiangWhat: /sys/devices/system/cpu/sched_mc_power_savings 13e6dcfa7cSAlex Chiang /sys/devices/system/cpu/sched_smt_power_savings 14e6dcfa7cSAlex ChiangDate: June 2006 15e6dcfa7cSAlex ChiangContact: Linux kernel mailing list <linux-kernel@vger.kernel.org> 16e6dcfa7cSAlex ChiangDescription: Discover and adjust the kernel's multi-core scheduler support. 17e6dcfa7cSAlex Chiang 18e6dcfa7cSAlex Chiang Possible values are: 19e6dcfa7cSAlex Chiang 20e6dcfa7cSAlex Chiang 0 - No power saving load balance (default value) 21e6dcfa7cSAlex Chiang 1 - Fill one thread/core/package first for long running threads 22e6dcfa7cSAlex Chiang 2 - Also bias task wakeups to semi-idle cpu package for power 23e6dcfa7cSAlex Chiang savings 24e6dcfa7cSAlex Chiang 25e6dcfa7cSAlex Chiang sched_mc_power_savings is dependent upon SCHED_MC, which is 26e6dcfa7cSAlex Chiang itself architecture dependent. 27e6dcfa7cSAlex Chiang 28e6dcfa7cSAlex Chiang sched_smt_power_savings is dependent upon SCHED_SMT, which 29e6dcfa7cSAlex Chiang is itself architecture dependent. 30e6dcfa7cSAlex Chiang 31e6dcfa7cSAlex Chiang The two files are independent of each other. It is possible 32e6dcfa7cSAlex Chiang that one file may be present without the other. 33e6dcfa7cSAlex Chiang 34e6dcfa7cSAlex Chiang Introduced by git commit 5c45bf27. 35e6dcfa7cSAlex Chiang 362ceb3fb0SAlex Chiang 37d93fc863SAlex ChiangWhat: /sys/devices/system/cpu/kernel_max 38d93fc863SAlex Chiang /sys/devices/system/cpu/offline 39d93fc863SAlex Chiang /sys/devices/system/cpu/online 40d93fc863SAlex Chiang /sys/devices/system/cpu/possible 41d93fc863SAlex Chiang /sys/devices/system/cpu/present 42d93fc863SAlex ChiangDate: December 2008 43d93fc863SAlex ChiangContact: Linux kernel mailing list <linux-kernel@vger.kernel.org> 44d93fc863SAlex ChiangDescription: CPU topology files that describe kernel limits related to 45d93fc863SAlex Chiang hotplug. Briefly: 46d93fc863SAlex Chiang 47d93fc863SAlex Chiang kernel_max: the maximum cpu index allowed by the kernel 48d93fc863SAlex Chiang configuration. 49d93fc863SAlex Chiang 50d93fc863SAlex Chiang offline: cpus that are not online because they have been 51d93fc863SAlex Chiang HOTPLUGGED off or exceed the limit of cpus allowed by the 52d93fc863SAlex Chiang kernel configuration (kernel_max above). 53d93fc863SAlex Chiang 54d93fc863SAlex Chiang online: cpus that are online and being scheduled. 55d93fc863SAlex Chiang 56d93fc863SAlex Chiang possible: cpus that have been allocated resources and can be 57d93fc863SAlex Chiang brought online if they are present. 58d93fc863SAlex Chiang 59d93fc863SAlex Chiang present: cpus that have been identified as being present in 60d93fc863SAlex Chiang the system. 61d93fc863SAlex Chiang 62d93fc863SAlex Chiang See Documentation/cputopology.txt for more information. 63d93fc863SAlex Chiang 64d93fc863SAlex Chiang 65657348a0SAlex Chiang 66657348a0SAlex ChiangWhat: /sys/devices/system/cpu/cpu#/node 67657348a0SAlex ChiangDate: October 2009 68657348a0SAlex ChiangContact: Linux memory management mailing list <linux-mm@kvack.org> 69657348a0SAlex ChiangDescription: Discover NUMA node a CPU belongs to 70657348a0SAlex Chiang 71657348a0SAlex Chiang When CONFIG_NUMA is enabled, a symbolic link that points 72657348a0SAlex Chiang to the corresponding NUMA node directory. 73657348a0SAlex Chiang 74657348a0SAlex Chiang For example, the following symlink is created for cpu42 75657348a0SAlex Chiang in NUMA node 2: 76657348a0SAlex Chiang 77657348a0SAlex Chiang /sys/devices/system/cpu/cpu42/node2 -> ../../node/node2 78657348a0SAlex Chiang 79657348a0SAlex Chiang 80663fb2fcSAlex ChiangWhat: /sys/devices/system/cpu/cpu#/topology/core_id 81663fb2fcSAlex Chiang /sys/devices/system/cpu/cpu#/topology/core_siblings 82663fb2fcSAlex Chiang /sys/devices/system/cpu/cpu#/topology/core_siblings_list 83663fb2fcSAlex Chiang /sys/devices/system/cpu/cpu#/topology/physical_package_id 84663fb2fcSAlex Chiang /sys/devices/system/cpu/cpu#/topology/thread_siblings 85663fb2fcSAlex Chiang /sys/devices/system/cpu/cpu#/topology/thread_siblings_list 86663fb2fcSAlex ChiangDate: December 2008 87663fb2fcSAlex ChiangContact: Linux kernel mailing list <linux-kernel@vger.kernel.org> 88663fb2fcSAlex ChiangDescription: CPU topology files that describe a logical CPU's relationship 89663fb2fcSAlex Chiang to other cores and threads in the same physical package. 90663fb2fcSAlex Chiang 91663fb2fcSAlex Chiang One cpu# directory is created per logical CPU in the system, 92663fb2fcSAlex Chiang e.g. /sys/devices/system/cpu/cpu42/. 93663fb2fcSAlex Chiang 94663fb2fcSAlex Chiang Briefly, the files above are: 95663fb2fcSAlex Chiang 96663fb2fcSAlex Chiang core_id: the CPU core ID of cpu#. Typically it is the 97663fb2fcSAlex Chiang hardware platform's identifier (rather than the kernel's). 98663fb2fcSAlex Chiang The actual value is architecture and platform dependent. 99663fb2fcSAlex Chiang 100663fb2fcSAlex Chiang core_siblings: internal kernel map of cpu#'s hardware threads 101663fb2fcSAlex Chiang within the same physical_package_id. 102663fb2fcSAlex Chiang 103663fb2fcSAlex Chiang core_siblings_list: human-readable list of the logical CPU 104663fb2fcSAlex Chiang numbers within the same physical_package_id as cpu#. 105663fb2fcSAlex Chiang 106663fb2fcSAlex Chiang physical_package_id: physical package id of cpu#. Typically 107663fb2fcSAlex Chiang corresponds to a physical socket number, but the actual value 108663fb2fcSAlex Chiang is architecture and platform dependent. 109663fb2fcSAlex Chiang 110663fb2fcSAlex Chiang thread_siblings: internel kernel map of cpu#'s hardware 111663fb2fcSAlex Chiang threads within the same core as cpu# 112663fb2fcSAlex Chiang 113663fb2fcSAlex Chiang thread_siblings_list: human-readable list of cpu#'s hardware 114663fb2fcSAlex Chiang threads within the same core as cpu# 115663fb2fcSAlex Chiang 116663fb2fcSAlex Chiang See Documentation/cputopology.txt for more information. 117663fb2fcSAlex Chiang 118663fb2fcSAlex Chiang 119c1fb5c47SAlex ChiangWhat: /sys/devices/system/cpu/cpuidle/current_driver 120c1fb5c47SAlex Chiang /sys/devices/system/cpu/cpuidle/current_governer_ro 121c1fb5c47SAlex ChiangDate: September 2007 122c1fb5c47SAlex ChiangContact: Linux kernel mailing list <linux-kernel@vger.kernel.org> 123c1fb5c47SAlex ChiangDescription: Discover cpuidle policy and mechanism 124c1fb5c47SAlex Chiang 125c1fb5c47SAlex Chiang Various CPUs today support multiple idle levels that are 126c1fb5c47SAlex Chiang differentiated by varying exit latencies and power 127c1fb5c47SAlex Chiang consumption during idle. 128c1fb5c47SAlex Chiang 129c1fb5c47SAlex Chiang Idle policy (governor) is differentiated from idle mechanism 130c1fb5c47SAlex Chiang (driver) 131c1fb5c47SAlex Chiang 132c1fb5c47SAlex Chiang current_driver: displays current idle mechanism 133c1fb5c47SAlex Chiang 134c1fb5c47SAlex Chiang current_governor_ro: displays current idle policy 135c1fb5c47SAlex Chiang 136c1fb5c47SAlex Chiang See files in Documentation/cpuidle/ for more information. 137c1fb5c47SAlex Chiang 138c1fb5c47SAlex Chiang 139*0cda8b91SAlex ChiangWhat: /sys/devices/system/cpu/cpu#/cpufreq/* 140*0cda8b91SAlex ChiangDate: pre-git history 141*0cda8b91SAlex ChiangContact: cpufreq@vger.kernel.org 142*0cda8b91SAlex ChiangDescription: Discover and change clock speed of CPUs 143*0cda8b91SAlex Chiang 144*0cda8b91SAlex Chiang Clock scaling allows you to change the clock speed of the 145*0cda8b91SAlex Chiang CPUs on the fly. This is a nice method to save battery 146*0cda8b91SAlex Chiang power, because the lower the clock speed, the less power 147*0cda8b91SAlex Chiang the CPU consumes. 148*0cda8b91SAlex Chiang 149*0cda8b91SAlex Chiang There are many knobs to tweak in this directory. 150*0cda8b91SAlex Chiang 151*0cda8b91SAlex Chiang See files in Documentation/cpu-freq/ for more information. 152*0cda8b91SAlex Chiang 153*0cda8b91SAlex Chiang In particular, read Documentation/cpu-freq/user-guide.txt 154*0cda8b91SAlex Chiang to learn how to control the knobs. 155*0cda8b91SAlex Chiang 156*0cda8b91SAlex Chiang 157468727abSAlex ChiangWhat: /sys/devices/system/cpu/cpu*/cache/index*/cache_disable_X 158468727abSAlex ChiangDate: August 2008 159468727abSAlex ChiangKernelVersion: 2.6.27 160468727abSAlex ChiangContact: mark.langsdorf@amd.com 161468727abSAlex ChiangDescription: These files exist in every cpu's cache index directories. 162468727abSAlex Chiang There are currently 2 cache_disable_# files in each 163468727abSAlex Chiang directory. Reading from these files on a supported 164468727abSAlex Chiang processor will return that cache disable index value 165468727abSAlex Chiang for that processor and node. Writing to one of these 166468727abSAlex Chiang files will cause the specificed cache index to be disabled. 167468727abSAlex Chiang 168468727abSAlex Chiang Currently, only AMD Family 10h Processors support cache index 169468727abSAlex Chiang disable, and only for their L3 caches. See the BIOS and 170468727abSAlex Chiang Kernel Developer's Guide at 171468727abSAlex Chiang http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/31116-Public-GH-BKDG_3.20_2-4-09.pdf 172468727abSAlex Chiang for formatting information and other details on the 173468727abSAlex Chiang cache index disable. 174468727abSAlex ChiangUsers: joachim.deguara@amd.com 175