Windows cpu core thread

Управление числом vCPU и ядер в виртуальной машине

При создании виртуальных машин на различных гипервизорах (VMWare, KVM, Hyper-V и т.д.) вы можете обратить внимание, что иногда виртуальная машина может не видеть все выделенные ей виртуальные ядра (vCPU). В нашем случае виртуальной машине на KVM были выделены 8 vCPU, на нее установлена Windows 10. Однако Windows определяла эти ядра как отдельные процессоры, из которых можно использовать только 2 vCPU.

Виртуальная машина Windows 10 не видит все ядра

Если открыть диспетчер устройств Windows, можно убедится, что все выделенные ядра видны в качестве 8 отдельных виртуальных процессоров типа QEMU Virtual CPU version 2,5.

При этом в свойствах Windows 10 (Computer -> Properties) и в Task Manage видно, что на компьютере доступны только 2 процессора QEMU Virtual CPU.

То есть сколько бы вы не добавили виртуальных ядер, Windows 10 все равно сможет использовать только два. При этом соседний виртуальный сервер с Window Server 2016 на этом же гипервизоре видит все 16 выделенных ему vCPU.

Количество поддерживаемых процессоров в Windows 10

Проблема заключается в том, что в десктопных редакциях Windows (Windows 10/8.1/7) есть ограничение на максимальное количество физических процессоров (сокетов), которое компьютер может использовать:

  • Windows 10 Home – 1 CPU
  • Windows 10 Professional – 2 CPU
  • Windows 10 Workstation – до 4 CPU
  • Windows Server 2016 – до 64 CPU

Однако это ограничение не распространяется на ядра. Т.е. для повышения производительности вы можете использовать процессор с большим количеством ядер. Большинство гипервизоров умеют предоставлять vCPU в виде процессоров, процессорных ядер или даже потоков. Т.е. вместо 8 виртуальных CPU вы можете предоставить vCPU в виде 2 сокетов по 4 ядра в каждом. Рассмотрим, как в различных системах виртуализации выделить виртуальные процессоры в виде ядер и как это связать с архитектурой NUMA, использующейся в современных процессорах.

Управление виртуальными ядрами и vCPU в KVM

В моей виртуальной машине KVM c Windows 10, все назначенные виртуальные ядра считаются отдельными процессорами.

Чтобы использовать все ресурсы CPU, выделенные виртуальной машине нужно, чтобы виртуальная машина видела не 8 процессоров, а один 8-ядерный процессор, 2 процессора по 4 ядра или 1 процессор с 4 ядрами по 2 потока. Попробуем изменить способ назначения виртуальных ядер для ВМ на KVM.

Выключите виртуальную машину:

Читайте также:  Enabling windows biometric framework как

# virsh shutdown server.vpn.ru – где server.vpn.ru это имя виртуальной машины.

Выведите текущую XML конфигурацию виртуальной машины KVM:

# virsh dumpxml server.vpn.ru

Нам интересен блок с описанием процессоров:

Как видим, у нас указано просто 8 vCPU. Изменим конфигурацию:

# virsh edit server.vpn.ru

И после добавим:

  • host-passthrough — режим эмуляции при котором на виртуальной машине будет показан физический процессор узла кластера (ноды).
  • sockets=’1′ — указываем что процессор 1
  • cores=’4′ — указываем, что процессор имеет 4 ядра
  • threads=’2′ — указываем, что ядра у нас по 2 потока

Сохраните конфигурационный файл и запустите ВМ. Авторизуйтесь в гостевой ВМ с Windows 10 и в Task Manager или Resource Monitor проверьте, что ОС видит все выделенные виртуальные ядра.

Также в свойства системы теперь стал отображаться физический процессор хоста Intel(R) Xeon(R) Silver 4114 CPU, а не виртуальный.

Так нам удалось решить проблему с нагрузкой на ВМ, так как двух ядер не хватало для полноценной работы приложений.

Настройка виртуальных процессоров и количества ядер в VMWare

Вы можете изменить способ презентации vCPU для виртуальной машины VMWare из интерфейса vSphere Client.

  1. Выключите ВМ и откройте ее настройки;
  2. Разверните секцию CPU;
  3. Изменим конфигурацию ВМ так, чтобы гостевая ОС видела 2 процессора по 4 ядра. Измените значение Cores per Socket на 4. Это означает, что гостевая ОС будет видеть два четырех –ядерных процессора (2 сокета по 4 ядра);
  4. Сохраните изменения и запустите ВМ.

Архитектура NUMA и виртуальные vCPU

Есть еще несколько аспектов назначения vCPU и ядер виртуальным машинам, которые нужно понимать.

При назначении ядер на сокете учитывайте наличие NUMA архитектуры (используется в большинстве современных CPU). Не рекомендуется назначать вашей ВМ количество ядер на сокет (и общее количество vCPU) больше, чем доступно ядер на вашем физическом сокете/процессоре (ноде NUMA). При размещении на одной физической ноде NUMA, виртуальная машина сможет использовать быструю локальную RAM, доступную на конкретной ноде NUMA. Иначе для выполнения операции процессам придется ждать ответа от другой ноды NUMA (что несколько более долго).

Если вы назначаете для ВМ два отдельных виртуальных сокета, то гипервизор может их запускать на разных нодах NUMA. Что не лучшим образом скажется на производительности ВМ.

Если количество требуемых vCPU превышает количество ядер на 1 физическом сокете (ноде NUMA), нужно создать несколько виртуальных сокетов (процессоров) с необходимым количество ядер. Также не желательно использовать нечетное количество процессоров (лучше добавить 1 vCPU)

Это позволит сохранить производительность виртуальной машины.

Например, для 2 процессорного хоста с 10 ядрами (суммарно доступно 40 vCPU с учетом HyperThreading), при настройке vCPU для ВМ оптимально использовать такие конфигурации:

Требуемое количество vCPU Количество виртуальных сокетов в настройках ВМ Количество ядер на виртуальном процессоре в настройках ВМ
1 1 1
……
10 1 10
11 Не оптимально
12 2 6
……
20 2 10

Например, ВМ с Microsoft SQL Server 2016 Enterprise Edition 16 vCPU в конфигурации 8 сокетов по 2 ядра будет работать хуже, чем в конфигурации 2 сокета по 8 ядер.

Также не забывайте, что некоторые приложения лицензируются по физическим сокетам (так было в старых версиях SQL Server). Иногда вам просто выгоднее лицензировать один многоядерный процессор, чем несколько процессоров с меньшим количеством ядер.

Читайте также:  Win utilities windows 10

Как включить все ядра на виндовс 7 — как использовать все доступные

Количество ядер ЦП напрямую влияет на быстродействие операционной системы. Чем больше ядер, тем быстрее будут работать ресурсоемкие программы, такие как графические редакторы и игры. По умолчанию операционная система задействует 4 ядра, остальные бездействует. Для повышения производительности ПК нужно произвести включение остальных. Сделать это можно посредствам штатных инструментов Виндовс: диспетчера задач, утилиты конфигурации системы или воспользоваться низкоуровневым программным обеспечением БИОС. С помощью данных утилит можно задать количество используемых ядер для разных программ.

Проблема с тем, что система использует не все мощности CPU, случается в той ситуации, когда владелец персонального компьютера выполнил разблокировку множителя и открыл дополнительные потоки процессора. Таким образом, многие пользователи спрашивают, как запустить все ядра процессора на Windows 7.

Что такое ядра процессора и на что они влияют

Ядро представляет собой важный компонент ЦП. С его помощью персональный компьютер может обрабатывать массивы информации. Чем больше их используется, тем быстрее будет работать устройство. Если процессор использует несколько ядер, то они связаны между собой логически потоками. Таким образом повышается быстродействие ОС, и пользователь может запускать требовательное программное обеспечение.

К сведению! Ядра CPU позволяют увеличить вычислительную мощность персонального компьютера.

Чем ядра отличаются от потоков или виртуальных ядер

Многие пользователи спрашивают, как включить все процессоры на Виндовс 7. В первую очередь нужно понять, что производительность компьютера не столько зависит от количества используемых ядер, сколько от логических потоков. Таким образом, нужно разобраться, что представляют собой логические потоки и виртуальные ядра, и как они отличаются от физических.

Логический поток представляет собой специальную технологию Hyper Threading. С ее помощью одно физическое ядро разделяет на несколько виртуальных и образует потоки. Таким образом компьютер может обрабатывать в два раза больше задач.

Обратите внимание! Многопоточность улучшает производительность ПК в играх и графических редакторах.

Характеристики Пояснение
Заменяют ли виртуальные ядра физические? Да. Физическое — это реальный аппаратный компонент ЦП. Виртуальное — это способность физического ядра разделяться на несколько независимых потоков, чтобы обрабатывать в два раза больше задач.
Влияют ли Virtual Core на производительность компьютера? Влиять они могут только в том случае, если на компьютере установлен процессор с небольшим кэшем 2 и 3 уровня, а также с низкой тактовой частотой.

Количество используемых Physic Core в диспетчере задач

Как узнать количество Physical Core с помощью командной строки

Перед тем как включать дополнительные потоки, нужно проверить состояние персонального компьютера. Для этого подойдет штатная утилита с System.info:

  1. Необходимо открыть стартовое окно в поисковой строке, написать исполняемую команду «CMD».
  2. Запустить командную строку с помощью расширенных прав доступа.
  3. Написать исполняемую команду «System.info». В пункте «Процессор» будет дана информация о количестве используемых потоков.

Как включить все ядра на Виндовс 7 через Msconfig

Пользователи также интересуются, как включить все ядра на Виндовс 7. Делать это можно с помощью штатной системной утилиты Msconfig. Благодаря ей можно настроить параметры загрузки ОС, автозапуск программ при старте Виндовс, а также указать количество используемых ядер ЦП.

Читайте также:  Консольный интерфейс ос windows

Обратите внимание! Настроить параметры работы CPU можно только в профессиональной и максимальной редакциях Виндовс. На 32-битой системе данная опция неактивна, и изменить настройки невозможно.

  1. Нужно выполнить запуск окна «Выполнить». Для этого необходимо щелкнуть на клавиатуре сочетание клавиш «Win + R».
  2. В поисковой строке требуется написать ключевой запрос «msconfig».
  3. В диалоговом окне необходимо перейти в раздел «Загрузка».
  4. В нижней части окна требуется нажать на «Расширенные параметры».
  5. В пункте «Число процессоров» будет показана информация о том, какое количество CPU определяет система. Чтобы Виндовс смогла самостоятельно определять количество используемых ядер, нужно поставить отметку в чекбоксе «Использовать заданное количество процессоров» и указать необходимое значение.
  6. После этого нажать на «Ок» и выполнить рестарт ОС.
  7. Отключить потоки можно также с помощью «msconfig».

С помощью штатной команды «msconfig» пользователи могут узнать информацию о ЦП и включить дополнительные потоки

Активация ядер процессора на Windows 7 через диспетчер задач

Как увеличить ядра на компьютере Windows 7 другими способами? Посмотреть, сколько ядер используется процессором, и подключить дополнительные потоки можно с помощью диспетчера задач.

Как назначить 2, 4 или другое доступное количество ядер и потоков для процесса

  1. Нужно щелкнуть на клавиатуре сочетание клавиш «Ctrl + Alt + Del» и дождаться загрузки параметров безопасности. После этого в списке необходимо выбрать пункт «Диспетчер задач».
  2. После запуска нужно найти в списке необходимое программное обеспечение и щелкнуть по нему правой кнопкой мыши.
  3. Далее следует найти в контекстном меню пункт с наименованием «Соответствие».
  4. После этого на экране отобразится диалоговое окно, где нужно указать количество процессоров, которые будут использоваться для определенной программы. Можно указать «ЦП1» или «ЦП2», а также «Использовать все ЦП».
  5. После этого нажать на «Ок» и «Применить».

В диспетчере задач можно задать соответствие для каждой отдельной программы

Как проверить через CPU-Z, сколько используется ядер на ПК с Виндовс

Пользователи персональных компьютеров часто спрашивают, как произвести настройку процессора в Виндовс 7. Сделать это достаточно просто. Чтобы получить всю необходимую информацию о процессоре, требуется воспользоваться сторонним программным обеспечением — утилитой CPU-Z.

Обратите внимание! С ее помощью владелец ноутбука будет знать, с какой тактовой частотой работает ЦП, количество используемых логических потоков и объем кэша 2 и 3 уровня.

  1. Найти утилиту и скачать ее только с проверенного источника в Глобальной сети.
  2. После того как архив с утилитой был скачен, необходимо исполняемые файлы распаковать на рабочий стол.
  3. После этого, запустить установочный файл с расширенными правами доступа.
  4. После инициализации оборудования устройства нужно открыть пункт «Cores», потом «Threads», где будет дана информация об используемых потоках.

Программа CPU-Z позволяет получить информацию о количестве используемых физических и виртуальных ядер

Если включить все ядра в Виндовс 7, то ресурсоемкие программы будут работать гораздо быстрее. Включить все потоки можно с помощью штатных утилит операционной системы. Проверить информацию о состоянии ЦП возможно через командную строку и утилиту System.info.

Оцените статью