Написать письмо
Донаты на карту ВТБ:
2200 4002 2461 6363

Статистика

Пользователи : 1
Статьи : 2127
Просмотры материалов : 7854335
 
Управление количеством ядер на приложение (08.11.2016). Печать E-mail
2016 - Ноябрь
08.11.2016 09:19
Save & Share
Если включить любой архиватор на распаковку или на сжатие - он постарается употребить все ресурсы процессора. Если скачивать из сети файлы с высокой скоростью - процессор тоже нагружается на "100%"; но есть разница: только одно его ядро. Поэтому при скачивании файлов из интернета все остальные приложения не тормозят - и можно спокойно делать работу, связанную с большим количеством кликов или сменяемой информации. А с архиватором все тормозит. А также с антивирусом, рендерингом и т.д.



Стандартный диспетчер устройств Windows XP не позволяет навсегда закрепить за конкретным приложением необходимое количество ядер - как только происходит перезапуск приложения, оно снова начинает грузить весь процессор. В других ОС, по ходу, аналогично.

Программы вида Process Explorer не помогли, удалось найти только одну корректно работающую: Process Lasso. Причем предыдущие ее версии были глючные - но наконец-то была доработана до нормального состояния. После установки открывается удобное меню процессов, для которых можно навсегда поставить нужное количество ядер. Как правило, для работы системы нужно первое ядро; поэтому в случае 8-ядерного процессора (8 реальных ядер, а не виртуальных) - открывается интересная возможность:
- все системные процессы вешаются на первое ядро (ничего изменять не требуется, так система и делает);
- explorer.exe вешается на второе ядро;
- браузер - на третье;
- антивирус - на четвертое;
- архиватор - на пятое;
- рендеринг - на шестое;
- и еще 2 ядра в запасе.

В итоге процессы могут выполняться дольше - но при этом возможно распараллеливание их работы. И, самое главное, процессы не влияют друг на друга. Поэтому, в случае мертвого зависания процесса, не будет оказано никакого влияния на другие процессы. В итоге ОС никогда не зависнет до состояния, когда необходимо нажимать Reset.

В случае 2-ядерного придется резко умерить аппетиты:
- системные процессы, explorer.exe - на первое;
- все остальное - на второе.

У программы есть и иные фишки. Например, если приложение ну совсем брыкается, пожирая ресурсы, - ему эти ресурсы можно просто ограничить: 10% от ядра, например.

(добавлено 27.11.2016) Неверный подход. Все системные процессы и Explorer должны вешаться на любое ядро, кроме первого. Большинство программ стараются загрузить первое ядро при зависании - что может приводить к сильному торможению, вплоть до зависания. 8 физических ядер - это хорошо: в запасе остается еще одно ядро.

(добавлено 11.12.2016) Эта программа ускоряет загрузку ОС, т.к. в этот момент задействованы все ядра процессора из-за ручного их перераспределения.

(добавлено 19.01.2017) Новое запущенное приложение, если нет правил, занимает то ядро, которое занимает explorer.exe. Это никак не исправить.

С 3-й попытки перераспределил процессы по ядрам правильно, создав правила для основных ресурсоемких приложений. Explorer.exe на ядро 0 (с автоматическим перезапуском), все системные процессы на ядро 1, браузер на ядро 2; архиваторы, торрент, видеообработка и прочее - на 4. Теперь все летает. Однако один вопрос еще не решен: какой класс приоритета дать explorer.exe. И еще обнаружился момент: Process Lasso умеет усекать процент процессора для приложения: если какой-то процесс сжирает все ядро - его можно тупо затормозить, опустив потребление процессора аж до 4%.

(добавлено 11.11.2023) При переходе на Windows 7, произошло 2 события: работа с настроенным Process Lasso - а потом папка с ним была случайно удалена. Уже на первой же неделе стали заметны тормоза, т.к. вместо нескольких ядер стало использоваться только первое. Стало некомфортно работать, особенно при работе торрента, архиватора, браузера.

(добавлено 04.09.2024) Всё это время наблюдался баг в старых ОС (Windows XP, 7 - x64): VirtualBox отказывалась работать принудительно у Process Lasso на других ядрах, кроме системного. Оказалось, есть процесс, запущенный как системный, - назначенное ему ядро и присваивается принудительно новому процессу VirtualboxVM.exe при старте виртуальной машины. Данные настройки победили - и все ОС теперь запускаются на 3-7 ядрах.

Обновлено ( 04.09.2024 16:55 )
 
 

Последние новости


©2008-2025. All Rights Reserved. Разработчик - Сергей Белов. Материалы сайта предоставляются по принципу "как есть". Автор не несет никакой ответственности и не гарантирует отсутствие неправильных сведений и ошибок. Вся ответственность за использование материалов лежит полностью на читателях. Размещение материалов данного сайта на иных сайтах запрещено без указания активной ссылки на данный сайт-первоисточник (ГК РФ: ст.1259 п.1 + ст.1274 п.1-3).

Много статей не имеет срока устаревания. Есть смысл смотреть и 2011, и даже 2008 год. Политика сайта: написать статью, а потом обновлять ее много лет.
Рекламодателям! Перестаньте спамить мне на почту с предложениями о размещении рекламы на этом сайте. Я никогда спамером/рекламщиком не был и не буду!
Top.Mail.Ru