Lines Matching +full:assoc +full:- +full:select

1 .. SPDX-License-Identifier: GPL-2.0
4 Intel(R) Speed Select Technology User Guide
7 The Intel(R) Speed Select Technology (Intel(R) SST) provides a powerful new
14 - https://www.intel.com/content/www/us/en/architecture-and-technology/speed-select-technology-artic…
15 - https://builders.intel.com/docs/networkbuilders/intel-speed-select-technology-base-frequency-enha…
19 dynamically without pre-configuring via BIOS setup options. This dynamic
21 and configure these features is by using the Intel Speed Select utility.
23 This document explains how to use the Intel Speed Select tool to enumerate and
29 intel-speed-select configuration tool
32 Most Linux distribution packages may include the "intel-speed-select" tool. If not,
38 # cd tools/power/x86/intel-speed-select/
43 ------------
47 # intel-speed-select --help
49 The top-level help describes arguments and features. Notice that there is a
50 multi-level help structure in the tool. For example, to get help for the feature "perf-profile"::
52 # intel-speed-select perf-profile --help
56 # intel-speed-select perf-profile info --help
59 ------------------------------
62 #intel-speed-select --info
66 # intel-speed-select --info
67 Intel(R) Speed Select Technology
73 Intel(R) SST-PP (feature perf-profile) is supported
75 Intel(R) SST-TF (feature turbo-freq) is supported
76 Intel(R) SST-BF (feature base-freq) is not supported
77 Intel(R) SST-CP (feature core-power) is supported
79 Intel(R) Speed Select Technology - Performance Profile (Intel(R) SST-PP)
80 ------------------------------------------------------------------------
84 to choose a specific server configuration statically. This Intel(R) Speed Select
85 Technology - Performance Profile (Intel(R) SST-PP) feature introduces a mechanism
91 "perf-profile" when using the Intel Speed Select tool.
99 # intel-speed-select perf-profile get-config-levels
100 Intel(R) Speed Select Technology
102 package-0
103 die-0
104 cpu-0
105 get-config-levels:4
106 package-1
107 die-0
108 cpu-14
109 get-config-levels:4
124 # intel-speed-select perf-profile get-lock-status
125 Intel(R) Speed Select Technology
127 package-0
128 die-0
129 cpu-0
130 get-lock-status:0
131 package-1
132 die-0
133 cpu-14
134 get-lock-status:0
143 # intel-speed-select perf-profile info -l 0
144 Intel(R) Speed Select Technology
146 package-0
147 die-0
148 cpu-0
149 perf-profile-level-0
150 cpu-count:28
151 enable-cpu-mask:000003ff,f0003fff
152 enable-cpu-list:0,1,2,3,4,5,6,7,8,9,10,11,12,13,28,29,30,31,32,33,34,35,36,37,38,39,40,41
153 thermal-design-power-ratio:26
154 base-frequency(MHz):2600
155 speed-select-turbo-freq:disabled
156 speed-select-base-freq:disabled
160 Here -l option is used to specify a performance level.
162 If the option -l is omitted, then this command will print information about all
167 "enable-cpu-mask/enable-cpu-list" at the max can be "online." When that
169 understand more, execute "intel-speed-select perf-profile info" for performance
172 # intel-speed-select perf-profile info -l 4
173 Intel(R) Speed Select Technology
175 package-0
176 die-0
177 cpu-0
178 perf-profile-level-4
179 cpu-count:28
180 enable-cpu-mask:000000fa,f0000faf
181 enable-cpu-list:0,1,2,3,5,7,8,9,10,11,28,29,30,31,33,35,36,37,38,39
182 thermal-design-power-ratio:28
183 base-frequency(MHz):2800
184 speed-select-turbo-freq:disabled
185 speed-select-base-freq:unsupported
189 There are fewer CPUs in the "enable-cpu-mask/enable-cpu-list". Consequently, if
198 # intel-speed-select perf-profile get-config-current-level
199 Intel(R) Speed Select Technology
201 package-0
202 die-0
203 cpu-0
204 get-config-current_level:0
211 This matches the base-frequency (MHz) field value displayed from the
212 "perf-profile info" command for performance level 0(cpufreq frequency is in
222 #stress -c 64
226 #turbostat -c 0-13 --show Package,Core,CPU,Bzy_MHz -i 1
229 - - 2600
243 # intel-speed-select -d perf-profile set-config-level -l 4 -o
244 Intel(R) Speed Select Technology
246 package-0
247 die-0
248 cpu-0
249 perf-profile
252 In the command above, "-o" is optional. If it is specified, then it will also
266 ---------------------------------------------
269 other two Intel(R) SST features (Intel(R) Speed Select Technology - Base Frequency
270 (Intel(R) SST-BF) and Intel(R) Speed Select Technology - Turbo Frequency (Intel
271 SST-TF)).
273 For example, from the output of "perf-profile info" above, for level 0 and level
277 speed-select-turbo-freq:disabled
278 speed-select-base-freq:disabled
281 speed-select-turbo-freq:disabled
282 speed-select-base-freq:unsupported
284 Given these results, the "speed-select-base-freq" (Intel(R) SST-BF) in level 4
287 This means that at performance level 4, the "speed-select-base-freq" feature is
290 "speed-select-turbo-freq" (Intel(R) SST-TF) is supported at both performance
293 The Intel(R) SST-BF and the Intel(R) SST-TF features are built on a foundation
294 technology called Intel(R) Speed Select Technology - Core Power (Intel(R) SST-CP).
295 The platform firmware enables this feature when Intel(R) SST-BF or Intel(R) SST-TF
298 Intel(R) Speed Select Technology Core Power (Intel(R) SST-CP)
299 ---------------------------------------------------------------
301 Intel(R) Speed Select Technology Core Power (Intel(R) SST-CP) is an interface that
321 # intel-speed-select core-power enable --help
322 Intel(R) Speed Select Technology
324 Enable core-power for a package/die
325 Clos Enable: Specify priority type with [--priority|-p]
330 - Ordered
338 - Proportional
344 weight. This proportional priority can be configured using "core-power config"
349 # intel-speed-select core-power enable
350 Intel(R) Speed Select Technology
352 package-0
353 die-0
354 cpu-0
355 core-power
357 package-1
358 die-0
359 cpu-6
360 core-power
364 multiple dies. To check if CLOS is enabled and get priority type, "core-power
365 info" command can be used. For example to check the status of core-power feature
368 # intel-speed-select -c 0 core-power info
369 Intel(R) Speed Select Technology
371 package-0
372 die-0
373 cpu-0
374 core-power
375 support-status:supported
376 enable-status:enabled
377 clos-enable-status:enabled
378 priority-type:proportional
379 package-1
380 die-0
381 cpu-24
382 core-power
383 support-status:supported
384 enable-status:enabled
385 clos-enable-status:enabled
386 priority-type:proportional
392 desired. These parameters can be configured with "core-power config" command.
394 mandatory. To check core-power config options, execute::
396 # intel-speed-select core-power config --help
397 Intel(R) Speed Select Technology
399 Set core-power configuration for one of the four clos ids
400 Specify targeted clos id with [--clos|-c]
401 Specify clos Proportional Priority [--weight|-w]
402 Specify clos min in MHz with [--min|-n]
403 Specify clos max in MHz with [--max|-m]
407 # intel-speed-select core-power config -c 0
408 Intel(R) Speed Select Technology
415 package-0
416 die-0
417 cpu-0
418 core-power
420 package-1
421 die-0
422 cpu-6
423 core-power
432 To check the current configuration, "core-power get-config" can be used. For
435 # intel-speed-select core-power get-config -c 0
436 Intel(R) Speed Select Technology
438 package-0
439 die-0
440 cpu-0
441 core-power
444 clos-proportional-priority:0
445 clos-min:0 MHz
446 clos-max:Max Turbo frequency
447 clos-desired:0 MHz
448 package-1
449 die-0
450 cpu-24
451 core-power
454 clos-proportional-priority:0
455 clos-min:0 MHz
456 clos-max:Max Turbo frequency
457 clos-desired:0 MHz
462 To associate a CPU to a CLOS group "core-power assoc" command can be used::
464 # intel-speed-select core-power assoc --help
465 Intel(R) Speed Select Technology
468 Specify targeted clos id with [--clos|-c]
473 # intel-speed-select -c 10 core-power assoc -c 3
474 Intel(R) Speed Select Technology
476 package-0
477 die-0
478 cpu-10
479 core-power
480 assoc:success
486 To check the existing association for a CPU, "core-power get-assoc" command can
489 # intel-speed-select -c 10 core-power get-assoc
490 Intel(R) Speed Select Technology
492 package-1
493 die-0
494 cpu-10
495 get-assoc
506 # intel-speed-select core-power disable
508 Some features like Intel(R) SST-TF can only be enabled when CLOS based prioritization
509 is enabled. For this reason, disabling while Intel(R) SST-TF is enabled can cause
510 Intel(R) SST-TF to fail. This will cause the "disable" command to display an error
511 if Intel(R) SST-TF is already enabled. In turn, to disable, the Intel(R) SST-TF
514 Intel(R) Speed Select Technology - Base Frequency (Intel(R) SST-BF)
515 -------------------------------------------------------------------
517 The Intel(R) Speed Select Technology - Base Frequency (Intel(R) SST-BF) feature lets
524 The support of Intel(R) SST-BF depends on the Intel(R) Speed Select Technology -
525 Performance Profile (Intel(R) SST-PP) performance level configuration. It is
526 possible that only certain performance levels support Intel(R) SST-BF. It is also
528 SST-BF. Consequently, first select the desired performance level to enable this
531 In the system under test here, Intel(R) SST-BF is supported at the base
534 # intel-speed-select -c 0 perf-profile info -l 0
535 Intel(R) Speed Select Technology
537 package-0
538 die-0
539 cpu-0
540 perf-profile-level-0
543 speed-select-base-freq:disabled
546 Before enabling Intel(R) SST-BF and measuring its impact on a workload
555 Based on the output of the "intel-speed-select perf-profile info -l 0" base
562 To compare, pick a multi-threaded workload where each thread can be scheduled on
564 performance using Intel(R) SST-BF.
569 # taskset -c 3,4 perf bench -r 100 sched pipe
580 #turbostat -c 0-13 --show Package,Core,CPU,Bzy_MHz -i 1
600 Intel(R) SST-BF Capabilities
603 To get capabilities of Intel(R) SST-BF for the current performance level 0,
606 # intel-speed-select base-freq info -l 0
607 Intel(R) Speed Select Technology
609 package-0
610 die-0
611 cpu-0
612 speed-select-base-freq
613 high-priority-base-frequency(MHz):3000
614 high-priority-cpu-mask:00000216,00002160
615 high-priority-cpu-list:5,6,8,13,33,34,36,41
616 low-priority-base-frequency(MHz):2400
617 tjunction-temperature(C):125
618 thermal-design-power(W):205
623 via high-priority-cpu-list/high-priority-cpu-mask. But if this Intel(R) SST-BF
625 high-priority-cpu-list) can only offer up to 2400 MHz. As a result, if this
627 SST-BF feature particularly for the above "sched pipe" workload since only two
631 Enable Intel(R) SST-BF
634 To enable Intel(R) SST-BF feature, execute::
636 # intel-speed-select base-freq enable -a
637 Intel(R) Speed Select Technology
639 package-0
640 die-0
641 cpu-0
642 base-freq
644 package-1
645 die-0
646 cpu-14
647 base-freq
650 In this case, -a option is optional. This not only enables Intel(R) SST-BF, but it
651 also adjusts the priority of cores using Intel(R) Speed Select Technology Core
652 Power (Intel(R) SST-CP) features. This option sets the minimum performance of each
653 Intel(R) Speed Select Technology - Performance Profile (Intel(R) SST-PP) class to
657 If -a option is not used, then the following steps are required before enabling
658 Intel(R) SST-BF:
660 - Discover Intel(R) SST-BF and note low and high priority base frequency
661 - Note the high prioity CPU list
662 - Enable CLOS using core-power feature set
663 - Configure CLOS parameters. Use CLOS.min to set to minimum performance
664 - Subscribe desired CPUs to CLOS groups
669 #taskset -c 5,6 perf bench -r 100 sched pipe
676 This way, by enabling Intel(R) SST-BF, the performance of this benchmark is
681 #turbostat -c 0-13 --show Package,Core,CPU,Bzy_MHz -i 1
698 Disable Intel(R) SST-BF
701 To disable the Intel(R) SST-BF feature, execute::
703 # intel-speed-select base-freq disable -a
706 Intel(R) Speed Select Technology - Turbo Frequency (Intel(R) SST-TF)
707 --------------------------------------------------------------------
718 The support of Intel(R) Speed Select Technology - Turbo Frequency (Intel(R) SST-TF)
719 depends on the Intel(R) Speed Select Technology - Performance Profile (Intel
720 SST-PP) performance level configuration. It is possible that only a certain
721 performance level supports Intel(R) SST-TF. It is also possible that only the base
722 performance level (level = 0) has the support of Intel(R) SST-TF. Hence, first
723 select the desired performance level to enable this feature.
725 In the system under test here, Intel(R) SST-TF is supported at the base
728 # intel-speed-select -c 0 perf-profile info -l 0
729 Intel(R) Speed Select Technology
730 package-0
731 die-0
732 cpu-0
733 perf-profile-level-0
736 speed-select-turbo-freq:disabled
741 To check if performance can be improved using Intel(R) SST-TF feature, get the turbo
742 frequency properties with Intel(R) SST-TF enabled and compare to the base turbo
750 # intel-speed-select perf-profile info -l 0
751 Intel(R) Speed Select Technology
753 package-0
754 die-0
755 cpu-0
756 perf-profile-level-0
759 turbo-ratio-limits-sse
760 bucket-0
761 core-count:2
762 max-turbo-frequency(MHz):3200
763 bucket-1
764 core-count:4
765 max-turbo-frequency(MHz):3100
766 bucket-2
767 core-count:6
768 max-turbo-frequency(MHz):3100
769 bucket-3
770 core-count:8
771 max-turbo-frequency(MHz):3100
772 bucket-4
773 core-count:10
774 max-turbo-frequency(MHz):3100
775 bucket-5
776 core-count:12
777 max-turbo-frequency(MHz):3100
778 bucket-6
779 core-count:14
780 max-turbo-frequency(MHz):3100
781 bucket-7
782 core-count:16
783 max-turbo-frequency(MHz):3100
786 MHz can be achieved. If there is some busy workload on cpu 0 - 11 (e.g. stress)
789 # taskset -c 12,13 perf bench -r 100 sched pipe
798 #turbostat -c 0-13 --show Package,Core,CPU,Bzy_MHz -i 1
817 13, first check the capability of the Intel(R) SST-TF feature for this performance
820 Get Intel(R) SST-TF Capability
823 To get the capability, the "turbo-freq info" command can be used::
825 # intel-speed-select turbo-freq info -l 0
826 Intel(R) Speed Select Technology
828 package-0
829 die-0
830 cpu-0
831 speed-select-turbo-freq
832 bucket-0
833 high-priority-cores-count:2
834 high-priority-max-frequency(MHz):3200
835 high-priority-max-avx2-frequency(MHz):3200
836 high-priority-max-avx512-frequency(MHz):3100
837 bucket-1
838 high-priority-cores-count:4
839 high-priority-max-frequency(MHz):3100
840 high-priority-max-avx2-frequency(MHz):3000
841 high-priority-max-avx512-frequency(MHz):2900
842 bucket-2
843 high-priority-cores-count:6
844 high-priority-max-frequency(MHz):3100
845 high-priority-max-avx2-frequency(MHz):3000
846 high-priority-max-avx512-frequency(MHz):2900
847 speed-select-turbo-freq-clip-frequencies
848 low-priority-max-frequency(MHz):2600
849 low-priority-max-avx2-frequency(MHz):2400
850 low-priority-max-avx512-frequency(MHz):2100
852 Based on the output above, there is an Intel(R) SST-TF bucket for which there are
861 Enable Intel(R) SST-TF
864 To enable Intel(R) SST-TF, execute::
866 # intel-speed-select -c 12,13 turbo-freq enable -a
867 Intel(R) Speed Select Technology
869 package-0
870 die-0
871 cpu-12
872 turbo-freq
874 package-0
875 die-0
876 cpu-13
877 turbo-freq
879 package--1
880 die-0
881 cpu-63
882 turbo-freq --auto
885 In this case, the option "-a" is optional. If set, it enables Intel(R) SST-TF
887 Select Technology Core Power (Intel(R) SST-CP) features. The CPU numbers passed
888 with "-c" arguments are marked as high priority, including its siblings.
890 If -a option is not used, then the following steps are required before enabling
891 Intel(R) SST-TF:
893 - Discover Intel(R) SST-TF and note buckets of high priority cores and maximum frequency
895 - Enable CLOS using core-power feature set - Configure CLOS parameters
897 - Subscribe desired CPUs to CLOS groups making sure that high priority cores are set to the maximum…
902 #taskset -c 12,13 perf bench -r 100 sched pipe
913 #turbostat -c 0-13 --show Package,Core,CPU,Bzy_MHz -i 1