понедельник, 19 сентября 2016 г.

Как ограничить приложение одним ядром ЦП

Зачем это надо

Если у пользователей слабые машины с 1-2 ядрами процессора, десктопное приложение может тормозить. Поэтому в регресии стоит на мощной машинке выдать ему одно ядро и посмотреть, что он не тормозит как сволочь

Как сделать

В винде ограничение по ядрам можно делать прямо в Диспетчере Задач:
  • Диспетчер задач → Подробности.
  • Найти нужный процесс.
  • Правой кнопкой → Задать сходство (в Windows 7 пункт называется "Задать соответствие").

  • Снять галки, поставить только один ЦП.

В случае использования HyperThreading, виртуальные процессоры одного ядра обычно идут подряд.  Если у нас:
  • 4 железных процессора;
  • 8 виртуальных (по 2 на каждом).
То ЦП0 и ЦП1 - на одном ядре, ЦП2 и ЦП3 - на другом и т.д.

Из этого следует, что если мы эмулируем одноядерную машину с 2 виртуальными ядрами, то нужно включать ЦП0 и ЦП1.

Если включить, например, ЦП0 и  ЦП2, то будут использованы два разных "железных" ядра и производительность будет сильно выше.

Комментариев нет:

Отправить комментарий