отключение/включение CPU
Модератор: Olej
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
отключение/включение CPU
Эта тема временами мелькает, например здесь: отключение CPU без перезагрузки системы.
Но её чаще упоминают в обсуждениях администраторы могучих корпоративных серверов, когда несколько сокетов, на которых установлены чипы CPU, и таким способом можно (в крайнем случае) заменить один из CPU в горячем режиме, не останавливая работу сервера.
Меня же интересует эта сторона совсем в другом контексте: управление ядрами процессора в Linux, влияние и использование этого в параллельном многопоточном выполнении приложений.
Но её чаще упоминают в обсуждениях администраторы могучих корпоративных серверов, когда несколько сокетов, на которых установлены чипы CPU, и таким способом можно (в крайнем случае) заменить один из CPU в горячем режиме, не останавливая работу сервера.
Меня же интересует эта сторона совсем в другом контексте: управление ядрами процессора в Linux, влияние и использование этого в параллельном многопоточном выполнении приложений.
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: отключение/включение CPU
Но, попутно, там очень любопытные детали вылезают...
Это Mint 18.1 ...
Процессор:
Т.е. имеем Dual-Core 2 ядра с гипертриэдингом.
А теперь настройки:
О-ба-на
Получается ( ) что гипертриэдинг у них отключен?
Это Mint 18.1 ...
Код: Выделить всё
olej@nvidia /sys/devices/system/cpu $ lsb_release -a
No LSB modules are available.
Distributor ID: LinuxMint
Description: Linux Mint 18.1 Serena
Release: 18.1
Codename: serena
Код: Выделить всё
olej@nvidia /sys/devices/system/cpu $ lscpu
Архитектура:x86_64
CPU op-mode(s): 32-bit, 64-bit
Порядок байтов:Little Endian
CPU(s): 2
On-line CPU(s) list: 0,1
Потоков на ядро:1
Ядер на сокет:2
Сокет(ы): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
Семейство CPU:6
Модель: 23
Model name: Pentium(R) Dual-Core CPU E6600 @ 3.06GHz
Stepping: 10
CPU МГц: 1603.000
CPU max MHz: 3066,0000
CPU min MHz: 1603,0000
BogoMIPS: 6138.85
Виртуализация:VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 2048K
NUMA node0 CPU(s): 0,1
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm xsave lahf_lm tpr_shadow vnmi flexpriority dtherm
А теперь настройки:
Код: Выделить всё
olej@nvidia /sys/devices/system/cpu $ cat /proc/cpuinfo | grep processor | wc -l
2
olej@nvidia /sys/devices/system/cpu $ pwd
/sys/devices/system/cpu
olej@nvidia /sys/devices/system/cpu $ cat online
0-1
olej@nvidia /sys/devices/system/cpu $ cat offline
2-3
Получается ( ) что гипертриэдинг у них отключен?
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: отключение/включение CPU
А это вот Fedora 23 ...Olej писал(а):Но, попутно, там очень любопытные детали вылезают...
Код: Выделить всё
[olej@dell cpu]$ lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch
Distributor ID: Fedora
Description: Fedora release 23 (Twenty Three)
Release: 23
Codename: TwentyThree
Код: Выделить всё
[olej@dell 16]$ lscpu
Архитектура:x86_64
CPU op-mode(s): 32-bit, 64-bit
Порядок байт:Little Endian
CPU(s): 8
On-line CPU(s) list: 0-7
Thread(s) per core: 2
Ядер на сокет:4
Сокетов: 1
NUMA node(s): 1
ID прроизводителя:GenuineIntel
Семейство ЦПУ:6
Модель: 30
Имя модели: Intel(R) Core(TM) i7 CPU Q 720 @ 1.60GHz
Степпинг: 5
CPU MHz: 933.000
CPU max MHz: 1600,0000
CPU min MHz: 933,0000
BogoMIPS: 3192.24
Виртуализация:VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 6144K
NUMA node0 CPU(s): 0-7
Флаги: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt lahf_lm tpr_shadow vnmi flexpriority ept vpid dtherm ida
Но
Код: Выделить всё
[olej@dell 16]$ cat /proc/cpuinfo | grep processor | wc -l
8
[olej@dell 16]$ cd /sys/devices/system/cpu
[olej@dell cpu]$ cat online
0-7
[olej@dell cpu]$ cat offline
Это не очевидно и достаточно серьёзно!
Т.е. один и тот же Linux, на однм и том же CPU будет использовать в одном случае 8 процессоров (в смысле /proc/cpuinfo), а в другом случае - 4.
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: отключение/включение CPU
Теперь о отключении/включении CPU...
Для экспериментов возьму "чистый" процессор Xeon, без гипертриэдинга, число CPU совпадает с числом ядер:
Система Fedora 24:
Для экспериментов возьму "чистый" процессор Xeon, без гипертриэдинга, число CPU совпадает с числом ядер:
Код: Выделить всё
[olej@xeon ~]$ lscpu
Архитектура:x86_64
CPU op-mode(s): 32-bit, 64-bit
Порядок байт:Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 1
Ядер на сокет:4
Сокетов: 1
NUMA node(s): 1
ID прроизводителя:GenuineIntel
Семейство ЦПУ:6
Модель: 23
Имя модели: Intel(R) Xeon(R) CPU L5420 @ 2.50GHz
Степпинг: 6
CPU MHz: 2003.000
CPU max MHz: 2499,0000
CPU min MHz: 2003,0000
BogoMIPS: 5000.13
Виртуализация:VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 6144K
NUMA node0 CPU(s): 0-3
Флаги: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl aperfmperf eagerfpu pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 lahf_lm tpr_shadow vnmi flexpriority dtherm
Код: Выделить всё
[olej@xeon ~]$ lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: Fedora
Description: Fedora release 24 (Twenty Four)
Release: 24
Codename: TwentyFour
Код: Выделить всё
[root@xeon ~]# cd /sys/devices/system/cpu
[root@xeon cpu]# ls -l
итого 0
drwxr-xr-x. 8 root root 0 Апр 16 13:53 cpu0
drwxr-xr-x. 8 root root 0 Апр 16 13:53 cpu1
drwxr-xr-x. 8 root root 0 Апр 16 13:53 cpu2
drwxr-xr-x. 8 root root 0 Апр 16 13:53 cpu3
drwxr-xr-x. 7 root root 0 Апр 16 14:12 cpufreq
drwxr-xr-x. 2 root root 0 Апр 17 00:01 cpuidle
drwxr-xr-x. 2 root root 0 Апр 17 00:01 hotplug
-r--r--r--. 1 root root 4096 Апр 17 00:01 isolated
-r--r--r--. 1 root root 4096 Апр 17 00:01 kernel_max
drwxr-xr-x. 2 root root 0 Апр 17 00:01 microcode
-r--r--r--. 1 root root 4096 Апр 17 00:01 modalias
-r--r--r--. 1 root root 4096 Апр 17 00:01 nohz_full
-r--r--r--. 1 root root 4096 Апр 17 00:01 offline
-r--r--r--. 1 root root 4096 Апр 16 13:53 online
-r--r--r--. 1 root root 4096 Апр 17 00:01 possible
drwxr-xr-x. 2 root root 0 Апр 17 00:01 power
-r--r--r--. 1 root root 4096 Апр 17 00:01 present
-rw-r--r--. 1 root root 4096 Апр 17 00:01 uevent
[root@xeon cpu]# cat online
0-3
[root@xeon cpu]# cat offline
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: отключение/включение CPU
Отключаю:Olej писал(а):Теперь о отключении/включении CPU...
Для экспериментов возьму "чистый" процессор Xeon, без гипертриэдинга, число CPU совпадает с числом ядер:
...
Система Fedora 24:
Код: Выделить всё
[root@xeon cpu]# echo 0 > cpu0/online
-bash: cpu0/online: Permission denied
[root@xeon cpu]#
[root@xeon cpu]# echo 0 > cpu1/online
[root@xeon cpu]# echo 0 > cpu2/online
[root@xeon cpu]# cat offline
1-2
[root@xeon cpu]# cat online
0,3
Код: Выделить всё
[root@xeon cpu]# lscpu
Архитектура:x86_64
CPU op-mode(s): 32-bit, 64-bit
Порядок байт:Little Endian
CPU(s): 4
On-line CPU(s) list: 0,3
Off-line CPU(s) list: 1,2
Thread(s) per core: 1
Ядер на сокет:2
Сокетов: 1
NUMA node(s): 1
ID прроизводителя:GenuineIntel
Семейство ЦПУ:6
Модель: 23
Имя модели: Intel(R) Xeon(R) CPU L5420 @ 2.50GHz
Степпинг: 6
CPU MHz: 2003.000
CPU max MHz: 2499,0000
CPU min MHz: 2003,0000
BogoMIPS: 5000.13
Виртуализация:VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 6144K
NUMA node0 CPU(s): 0,3
Флаги: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl aperfmperf eagerfpu pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 lahf_lm tpr_shadow vnmi flexpriority dtherm
Код: Выделить всё
[root@xeon cpu]# cat /proc/cpuinfo | grep processor | wc -l
2
Код: Выделить всё
[root@xeon cpu]# ls -l cpu[1-3]/online
-rw-r--r--. 1 root root 4096 Апр 17 00:06 cpu1/online
-rw-r--r--. 1 root root 4096 Апр 17 00:07 cpu2/online
-rw-r--r--. 1 root root 4096 Апр 16 13:53 cpu3/online
[root@xeon cpu]# ls -l cpu0/online
ls: невозможно получить доступ к 'cpu0/online': No such file or directory
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: отключение/включение CPU
Теперь снова их включаю:Olej писал(а): Отключаю:
Код: Выделить всё
[root@xeon cpu]# echo 1 > cpu1/online
[root@xeon cpu]# echo 1 > cpu2/online
Код: Выделить всё
[root@xeon cpu]# cat online
0-3
[root@xeon cpu]# cat offline
[root@xeon cpu]# cat /proc/cpuinfo | grep processor | wc -l
4
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: отключение/включение CPU
Mint 17.3Olej писал(а):Т.е. отключить процессор CPU0 мы не сможем!
Код: Выделить всё
atom cpu # lsb_release -a
No LSB modules are available.
Distributor ID: LinuxMint
Description: Linux Mint 17.3 Rosa
Release: 17.3
Codename: rosa
atom cpu # cat /proc/cpuinfo | grep processor | wc -l
2
Код: Выделить всё
atom ~ # cd /sys/devices/system/cpu
atom cpu # cat online
0-1
atom cpu # cat offline
2-7
Код: Выделить всё
atom cpu # ls -l cpu0/online
ls: невозможно получить доступ к cpu0/online: Нет такого файла или каталога
atom cpu # ls -l cpu1/online
-rw-r--r-- 1 root root 4096 Апр 16 13:37 cpu1/online
Та же история:
Код: Выделить всё
olej@nvidia ~ $ cd /sys/devices/system/cpu
olej@nvidia /sys/devices/system/cpu $ lsb_release -a
No LSB modules are available.
Distributor ID: LinuxMint
Description: Linux Mint 18.1 Serena
Release: 18.1
Codename: serena
olej@nvidia /sys/devices/system/cpu $ cat /proc/cpuinfo | grep processor | wc -l
2
Код: Выделить всё
olej@nvidia /sys/devices/system/cpu $ ls -l cpu0/online
ls: невозможно получить доступ к 'cpu0/online': Нет такого файла или каталога
olej@nvidia /sys/devices/system/cpu $ ls -l cpu1/online
-rw-r--r-- 1 root root 4096 Апр 16 14:31 cpu1/online
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя