Важная команда Linux lscpu
— утилита, предоставляющая подробную информацию о конфигурации центрального процессора операционной системы.
Утилита выполняет обзор архитектуры ЦП: семейство ЦП, модель, количество ядер, потоков и другие характеристики.
Содержание
Установка
Хотя команда предустановлена в системе, если по какой-то причине она недоступна, мы можем установить её с помощью менеджера пакетов конкретного дистрибутива.
Установка в Ubuntu
Для установки утилиты устанавливается пакет util-Linux
, включающий lscpu
:
oleg@mobile:~:$ sudo apt-get install util-linux
...
oleg@mobile:~:$
Установка в Arch Linux
oleg@mobile:~:$ yay -S util-linux
Sync Dependency (1): util-linux-2.40.2-1
предупреждение: util-linux-2.40.2-1 не устарел -- переустанавливается
разрешение зависимостей...
проверка конфликтов...
Пакеты (1) util-linux-2.40.2-1
Будет установлено: 14,48 MiB
Изменение размера: 0,00 MiB
:: Приступить к установке? [Y/n] n
-> error installing repo packages
oleg@mobile:~:$
Из вывода следует, что пакет util-linux
, включающий в себя lscpu
, уже находится в системе.
Синтаксис
oleg@mobile:~:$ lscpu [параметры]
Параметры
Основные параметры
-a, --all
Выводить как онлайн, так и офлайн ЦП (по умолчанию для
-e
)-b, --online
Выводить только онлайн ЦП (по умолчанию для
-p
)-B, --bytes
Выводить размеры печати в байтах, а не в формате, удобном для чтения человеком
-C, --caches[=
- ]
Информация о кэшах в расширенном читаемом формате
-c, --offline
Выводить только автономных ЦП
-J, --json
Использовать JSON для формата по умолчанию или расширенного формата
-e, --extended[=
- ]
Выводить расширенный читаемый формат
-p, --parse[=
- ]
Выводить синтаксический формат
-s, --sysroot
Использовать указанный каталог как системный корневой (
root
)-x, --hex
Выводить шестнадцатеричные маски вместо списков ЦП
-y, --physical
Выводить физические идентификаторы вместо логических
--hierarchic[=when]
Использовать подразделы как:
auto
,never
,always
--output-all
Выводить все доступные столбцы для
-e
,-p
или-C
-h, --help
Показать эту справку
-V, --version
Версия дисплея
Доступные выходные столбцы для -e или -p
BOGOMIPS
Грубое измерение скорости ЦП
CPU
Номер логического ЦПУ
CORE
Номер логического ядра
SOCKET
Логический номер сокета
CLUSTER
Логический номер кластера
NODE
Логический номер узла NUMA
BOOK
Логический номер книги
DRAWER
Логический номер ящика
CACHE
Показать, как кэши распределяются между процессорами
POLARIZATION
Режим диспетчеризации ЦП на виртуальном оборудовании
ADDRESS
физический адрес ЦПУ
CONFIGURED
Показать, выделил ли гипервизор процессор
ONLINE
Показать, использует ли Linux в данный момент процессор
MHZ
Показать текущую тактовую частоту ЦП в МГц
SCALMHZ%
Показать процент масштабирования частоты процессора
MAXMHZ
Показать максимальную частоту ЦПУ в MHz
MINMHZ
Показать минимальную частоту ЦПУ в MHz
MODELNAME
Показать название модели ЦП
Доступные выходные столбцы для -C
ALL-SIZE
Размер всех системных кэшей
LEVEL
Уровень кэша
NAME
Имя кэша
ONE-SIZE
Одного кэша
TYPE
Тип кэша
WAYS
Способы ассоциативности
ALLOC-POLICY
Политика распределения
WRITE-POLICY
Вывести политику
PHY-LINE
Количество физических строк кэша на тег кэша
SETS
Количество наборов в кэше; строки набора имеют одинаковый индекс кэша
COHERENCY-SIZE
Минимальный объём данных в байтах, передаваемых из памяти в кэш
Использование команды Linux lscpu
Полная информация об архитектуре ЦП
Была отображена полная информация об архитектуре ЦП, включая сведения о семействе ЦП, модели, количестве ядер, потоках, размерах кэша и многом другом.
Удобный для восприятия формат
oleg@mobile:~:$ lscpu -e
CPU NODE SOCKET CORE L1d:L1i:L2:L3 ONLINE MAXMHZ MINMHZ MHZ
0 0 0 0 0:0:0:0 да 2100,0000 800,0000 2095,2620
1 0 0 1 1:1:1:0 да 2100,0000 800,0000 2095,2549
oleg@mobile:~:$
Была отображена информация о ЦП в удобном для восприятия формате, включая сведения об архитектуре, названии модели и различных функциях ЦП.
Пригодный для анализа формат
oleg@mobile:~:$ lscpu -ple:~:$ lscpu -p
# The following is the parsable format, which can be fed to other
# programs. Each different item in every column has an unique ID
# starting usually from zero.
# CPU,Core,Socket,Node,,L1d,L1i,L2,L3
0,0,0,0,,0,0,0,0
1,1,0,0,,1,1,1,0
Онлайн и офлайн ЦП
oleg@mobile:~:$ lscpu --all -e
CPU NODE SOCKET CORE L1d:L1i:L2:L3 ONLINE MAXMHZ MINMHZ MHZ
0 0 0 0 0:0:0:0 да 2100,0000 800,0000 800,9090
1 0 0 1 1:1:1:0 да 2100,0000 800,0000 1396,8440
oleg@mobile:~:$
Опция -a
(--all
) используется для отображения онлайн и офлайн ЦП в выходных данных. Её можно использовать лишь с -e
или -p
.
Только онлайн ЦП
Отображать только онлайн ЦП.
oleg@mobile:~:$ lscpu --online -e
CPU NODE SOCKET CORE L1d:L1i:L2:L3 ONLINE MAXMHZ MINMHZ MHZ
0 0 0 0 0:0:0:0 да 2100,0000 800,0000 798,1940
1 0 0 1 1:1:1:0 да 2100,0000 800,0000 798,1920
oleg@mobile:~:$
При добавлении к команде параметра --online
отображается информация только о подключённых активно использующихся ЦП.
Только автономные ЦП
oleg@mobile:~:$ lscpu --offline -e
oleg@mobile:~:$
Параметр --offline
позволяет просматривать информацию о ЦП, находящихся в данный момент в автономном режиме.
Информация о кэшах
oleg@mobile:~:$ lscpu --caches
NAME ONE-SIZE ALL-SIZE WAYS TYPE LEVEL SETS PHY-LINE COHERENCY-SIZE
L1d 32K 64K 8 Data 1 64 1 64
L1i 32K 64K 8 Instruction 1 64 1 64
L2 256K 512K 8 Unified 2 512 1 64
L3 2M 2M 8 Unified 3 4096 1 64
oleg@mobile:~:$
Параметр --caches
, включенный в команду, отображает информацию о кэшах ЦП, включая данные, инструкции, унифицированные кэши, их размеры и многое другое.
Все доступные столбцы
Отображение всех доступных столбцов:
oleg@mobile:~:$ lscpu --output-all -e
BOGOMIPS CPU CORE SOCKET CLUSTER NODE BOOK DRAWER L1d:L1i:L2:L3 POLARIZATION ADDRESS CONFIGURED ONLINE MHZ SCALMHZ% MAXMHZ MINMHZ MODELNAME
4192,12 0 0 0 - 0 - - 0:0:0:0 - - - да 1172,1639 56% 2100,0000 800,0000 Intel(R) Pentium(R) CPU B950 @ 2.10GHz
4192,12 1 1 0 - 0 - - 1:1:1:0 - - - да 800,0000 38% 2100,0000 800,0000 Intel(R) Pentium(R) CPU B950 @ 2.10GHz
oleg@mobile:~:$
Опция --output-all
используется при просмотре всех доступных столбцов для --extended
, --parse
, и --caches
.
Вывод lscpu в текстовый файл
oleg@mobile:~:$ lscpu > cpu_info.txt
oleg@mobile:~:$
Команда перенаправила вывод в текстовый файл cpu_info.txt
. Это позволяет сохранить и просмотреть информацию позже.
Заключение
В Linux команда lscpu
является ценной утилитой для получения информации об архитектуре ЦП системы, предоставляя исчерпывающую информацию о количестве ЦП, потоках, ядрах, сокетах, сведениях о кэше и многом другом, помогая в оптимизации системы и понимании оборудования, предлагая универсальность для различных вариантов использования.
Эта утилита является мощным инструментом, помогающим принимать обоснованные решения и эффективно управлять аппаратными ресурсами.