Documentation: ABI: /sys/devices/system/cpu/sched_[mc|smt]_power_savings
[safe/jmp/linux-2.6] / Documentation / ABI / testing / sysfs-devices-system-cpu
1 What:           /sys/devices/system/cpu/
2 Date:           pre-git history
3 Contact:        Linux kernel mailing list <linux-kernel@vger.kernel.org>
4 Description:
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
12 What:           /sys/devices/system/cpu/sched_mc_power_savings
13                 /sys/devices/system/cpu/sched_smt_power_savings
14 Date:           June 2006
15 Contact:        Linux kernel mailing list <linux-kernel@vger.kernel.org>
16 Description:    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
36
37 What:           /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
42 Date:           December 2008
43 Contact:        Linux kernel mailing list <linux-kernel@vger.kernel.org>
44 Description:    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
65 What:           /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
71 Date:           December 2008
72 Contact:        Linux kernel mailing list <linux-kernel@vger.kernel.org>
73 Description:    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
104 What:      /sys/devices/system/cpu/cpu*/cache/index*/cache_disable_X
105 Date:      August 2008
106 KernelVersion:  2.6.27
107 Contact:        mark.langsdorf@amd.com
108 Description:    These files exist in every cpu's cache index directories.
109                 There are currently 2 cache_disable_# files in each
110                 directory.  Reading from these files on a supported
111                 processor will return that cache disable index value
112                 for that processor and node.  Writing to one of these
113                 files will cause the specificed cache index to be disabled.
114
115                 Currently, only AMD Family 10h Processors support cache index
116                 disable, and only for their L3 caches.  See the BIOS and
117                 Kernel Developer's Guide at
118                 http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/31116-Public-GH-BKDG_3.20_2-4-09.pdf
119                 for formatting information and other details on the
120                 cache index disable.
121 Users:    joachim.deguara@amd.com