Как ограничить службу Windows для ядер X?

622
Martinnj

В настоящее время я пытаюсь не найти приличный / хороший способ определения того, на каких ядрах должен работать один сервис в Windows Server 2008.

Я знаю, что для процедур есть два способа сделать это:

  1. установить соответствие через диспетчер задач после запуска процесса.
  2. используйте «start / AFFINITY 0x1» или подобную битовую маску

Однако это не очень хорошо работает с сервисами. Когда я пытаюсь запустить exe, сервис также будет запущен (тот, который нуждается в ограничении), он просто порождает новую командную строку. (Cmd.exe)

Кто-нибудь здесь знает, как сделать подобный трюк для услуг? Не важно, на каком ядре оно работает, его нужно ограничить только одним. И желательно, чтобы это было что-то, что можно автоматизировать, чтобы нам не приходилось вмешиваться при перезапуске сервера.

4
Вы абсолютно уверены, что вам нужно это сделать? Это отрицательно скажется на производительности, особенно любых задач, выполняемых на других ядрах. (Поскольку они будут конкурировать со службой за пропускную способность памяти и частоту блокировки ядра. Чем меньше ядер работает на данной службе для данной нагрузки, тем выше процент времени, в течение которого она будет работать, и, следовательно, более вероятно, что она будет конкурировать с другими программами для пропускной способности памяти, блокировки ядра и т. д., замедляя их.) David Schwartz 11 лет назад 0
Еще хуже, скажем, что на этом ядре запущено какое-то другое приложение, потому что служба бездействует. Тогда у сервиса есть работа с более высоким динамическим приоритетом. Поскольку он может работать только на этом ядре, другое приложение должно быть перенесено на другое ядро. Но теперь все тайники сдуваются. Гибкость планировщика очень важна. Уберите это, только если у вас нет другого выбора. David Schwartz 11 лет назад 0
Я знаю о негативном влиянии на производительность. Но рассматриваемый сервис является частью программы мониторинга, и переключение между ядрами приводит к тому, что с программным обеспечением мониторинга что-то идет не так, поэтому результаты, которые оно предоставляет, становятся непредсказуемыми, а иногда и прямо ошибочными. Мы исследовали это и обнаружили, что ограничение программы одним ядром устраняет эту проблему. Это не оптимально, но это то, что мы получили, я боюсь. Martinnj 11 лет назад 0

0 ответов на вопрос

Похожие вопросы