Зачем вам нужно знать о каждом процессоре в частности?

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

Вот скриншот ( отсюда):

Диспетчер задач Windows 8

Я знаю, что эта установка может существовать только в нестандартной, дорогостоящей, важной серверной среде (1 ТБ ОЗУ!), Но какая польза от тепловой карты? Или, установив привязку процессора:

сродство процессора

Что я спрашиваю, так это то, при каких обстоятельствах разработчику было бы важно, если бы конкретный процессор X использовался больше, чем процессор Y (вместо того, чтобы просто знать, что один не многопоточный процесс максимизирует ядро, что было бы лучше показать как тепловая карта процесса, а не тепловая карта процессора), или вас интересует, будет ли процесс использовать тот или иной процессор (о котором человек не может догадаться лучше, чем алгоритм автоматической балансировки)?

3 ответа

Решение

В большинстве случаев это не имеет значения, и тепловая карта не более чем выглядит круто.

Большие серверы, однако, разные. Некоторые процессоры имеют архитектуру "NUMA" или "Неоднородный доступ к памяти". В этих случаях некоторые процессорные ядра могут получать доступ к некоторым частям памяти быстрее, чем другие ядра. В этих случаях может оказаться полезной настройка соответствия процессов, чтобы процесс оставался на ядрах с более быстрым доступом к памяти. Кроме того, если процессор имеет кэш-память для каждого ядра (как это делают многие), производительность может быть снижена, если поток переходит с одного ядра на другое. Планировщик Windows должен хорошо выполнять свою работу, избегая таких переключателей, но я могу представить, что при некоторых странных рабочих нагрузках вам может потребоваться его принудительная работа.

Эти параметры также могут быть полезны, если вы хотите ограничить число ядер, используемых приложением (скажем, оставить некоторые другие ядра свободными для другой выделенной задачи.) Это также может быть полезно, если вы запускаете стресс-тест и пытаетесь определить, если у вас плохое ядро ​​процессора. Он также может обойти ошибки BIOS/ встроенного ПО, такие как ошибки, связанные с высокопроизводительными таймерами, которые преследовали многие многоядерные процессоры несколько лет назад.

Я не могу дать вам хороший пример использования этой тепловой карты (за исключением того, что она выглядит очень круто), но я могу рассказать вам печальную историю о том, как мы использовали привязку к процессору, чтобы что-то исправить. Мы автоматизировали более старую версию MS Office для пакетной обработки документов Word, и Word иногда зависал. После некоторого времени поиска и устранения неисправностей и отчаяния мы попытались установить сродство Word-процесса только к одному ЦП, чтобы уменьшить параллелизм и, следовательно, снизить вероятность состояния гонки. Это сработало. Слово перестало падать.

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

Администратор может установить привязку к процессору таким образом, чтобы каждая виртуальная машина имела гарантированный доступ к X количеству ядер (и соответственно оплачивала бы клиента).

Теперь предположим, что администратор замечает, что ядра, назначенные виртуальным машинам ABC Company Inc., высоко регистрируются на тепловой карте. Это было бы прекрасной возможностью для перепродажи ABC Company Inc и заставить их платить за большее количество ядер.

И администратор, и компания ABC Company Inc выигрывают - администратор зарабатывает больше денег, а компания ABC Company Inc повышает производительность.

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

Другие вопросы по тегам