]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blame - Documentation/ABI/testing/sysfs-devices-system-cpu
Documentation: ABI: /sys/devices/system/cpu/cpuidle/
[mirror_ubuntu-bionic-kernel.git] / Documentation / ABI / testing / sysfs-devices-system-cpu
CommitLineData
2ceb3fb0
AC
1What: /sys/devices/system/cpu/
2Date: pre-git history
3Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org>
4Description:
5 A collection of both global and individual CPU attributes
6
7 Individual CPU attributes are contained in subdirectories
8 named by the kernel's logical CPU number, e.g.:
9
10 /sys/devices/system/cpu/cpu#/
11
e6dcfa7c
AC
12What: /sys/devices/system/cpu/sched_mc_power_savings
13 /sys/devices/system/cpu/sched_smt_power_savings
14Date: June 2006
15Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org>
16Description: Discover and adjust the kernel's multi-core scheduler support.
17
18 Possible values are:
19
20 0 - No power saving load balance (default value)
21 1 - Fill one thread/core/package first for long running threads
22 2 - Also bias task wakeups to semi-idle cpu package for power
23 savings
24
25 sched_mc_power_savings is dependent upon SCHED_MC, which is
26 itself architecture dependent.
27
28 sched_smt_power_savings is dependent upon SCHED_SMT, which
29 is itself architecture dependent.
30
31 The two files are independent of each other. It is possible
32 that one file may be present without the other.
33
34 Introduced by git commit 5c45bf27.
35
2ceb3fb0 36
d93fc863
AC
37What: /sys/devices/system/cpu/kernel_max
38 /sys/devices/system/cpu/offline
39 /sys/devices/system/cpu/online
40 /sys/devices/system/cpu/possible
41 /sys/devices/system/cpu/present
42Date: December 2008
43Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org>
44Description: CPU topology files that describe kernel limits related to
45 hotplug. Briefly:
46
47 kernel_max: the maximum cpu index allowed by the kernel
48 configuration.
49
50 offline: cpus that are not online because they have been
51 HOTPLUGGED off or exceed the limit of cpus allowed by the
52 kernel configuration (kernel_max above).
53
54 online: cpus that are online and being scheduled.
55
56 possible: cpus that have been allocated resources and can be
57 brought online if they are present.
58
59 present: cpus that have been identified as being present in
60 the system.
61
62 See Documentation/cputopology.txt for more information.
63
64
663fb2fc
AC
65What: /sys/devices/system/cpu/cpu#/topology/core_id
66 /sys/devices/system/cpu/cpu#/topology/core_siblings
67 /sys/devices/system/cpu/cpu#/topology/core_siblings_list
68 /sys/devices/system/cpu/cpu#/topology/physical_package_id
69 /sys/devices/system/cpu/cpu#/topology/thread_siblings
70 /sys/devices/system/cpu/cpu#/topology/thread_siblings_list
71Date: December 2008
72Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org>
73Description: CPU topology files that describe a logical CPU's relationship
74 to other cores and threads in the same physical package.
75
76 One cpu# directory is created per logical CPU in the system,
77 e.g. /sys/devices/system/cpu/cpu42/.
78
79 Briefly, the files above are:
80
81 core_id: the CPU core ID of cpu#. Typically it is the
82 hardware platform's identifier (rather than the kernel's).
83 The actual value is architecture and platform dependent.
84
85 core_siblings: internal kernel map of cpu#'s hardware threads
86 within the same physical_package_id.
87
88 core_siblings_list: human-readable list of the logical CPU
89 numbers within the same physical_package_id as cpu#.
90
91 physical_package_id: physical package id of cpu#. Typically
92 corresponds to a physical socket number, but the actual value
93 is architecture and platform dependent.
94
95 thread_siblings: internel kernel map of cpu#'s hardware
96 threads within the same core as cpu#
97
98 thread_siblings_list: human-readable list of cpu#'s hardware
99 threads within the same core as cpu#
100
101 See Documentation/cputopology.txt for more information.
102
103
c1fb5c47
AC
104What: /sys/devices/system/cpu/cpuidle/current_driver
105 /sys/devices/system/cpu/cpuidle/current_governer_ro
106Date: September 2007
107Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org>
108Description: Discover cpuidle policy and mechanism
109
110 Various CPUs today support multiple idle levels that are
111 differentiated by varying exit latencies and power
112 consumption during idle.
113
114 Idle policy (governor) is differentiated from idle mechanism
115 (driver)
116
117 current_driver: displays current idle mechanism
118
119 current_governor_ro: displays current idle policy
120
121 See files in Documentation/cpuidle/ for more information.
122
123
2fad2d9b
ML
124What: /sys/devices/system/cpu/cpu*/cache/index*/cache_disable_X
125Date: August 2008
126KernelVersion: 2.6.27
127Contact: mark.langsdorf@amd.com
128Description: These files exist in every cpu's cache index directories.
129 There are currently 2 cache_disable_# files in each
130 directory. Reading from these files on a supported
131 processor will return that cache disable index value
132 for that processor and node. Writing to one of these
133 files will cause the specificed cache index to be disabled.
134
135 Currently, only AMD Family 10h Processors support cache index
136 disable, and only for their L3 caches. See the BIOS and
137 Kernel Developer's Guide at
138 http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/31116-Public-GH-BKDG_3.20_2-4-09.pdf
139 for formatting information and other details on the
140 cache index disable.
141Users: joachim.deguara@amd.com