xref: /linux/Documentation/ABI/testing/sysfs-devices-system-cpu (revision 0cda8b91f2e096bbef1cb05f23c42e423eae7728)
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