Объясните, как это работает. Когда в панели управления переключаю схему управления питанием с высокой производительности на экономию энергии, в диспетчере задач видно снижение графика времени ядра. Почему так происходит и что это значит? Я плохо понимаю, что такое время ядра, это что-то низкоуровневое такое... Почему оно снижается и как это работает?
>>4542769 Типа ядру выделяется меньше времени, энергосбережение не затрагивает пользовательские процессы, по логике, вот и не уменьшается загрузка общая
Как общая загрузка считается - это вопрос, может быть она считается без учёта времени, которое использует ядро
Помониторь загрузку процессорных ядер и тактовую частоту какой нибудь утилитой. Без нагрузки она падает до 800 мгц, под нагрузкой растет вплоть до буста. Если базовая тактовая частота процессора к примеру 3 ггц, а в энергосбережении выставить макс. загрузку 50%, то выше 1.5 ггц не будет подниматься. Поскольку тепловыделение растет как квадрат напряжения на частоту, а при пониженной частоте вольтаж ниже, энергопотребление и нагрев упадет раза в три. Но получаем 50% производительности.
>>4542731 (OP) Поясняю, хот Пепе мастер >>4542765 довольно точно всё объяснил, но может будет понятно.
Windows это ПСЕВДО параллельная ось. Простыми словами вместо истинно независимых потоков и процессов программы в Windows выполняются ПОСЛЕДОВАТЕЛЬНО.
Чтобы пользователь не замечал подъёба кванты переключения задач настолько маленькие, что нам кажется, что некоторые вещи выполняются одновременно, но это не так.
Тут я должен рассказать про приоритеты, но предполагаю, что это ты должен знать. Приоритеты задач влияют на эти самые кванты времени и собственно на сам ПРИОРИТЕТ. То есть программы, которые имеют установленный приоритет выше, всегда будут в начале очереди и они будут исполняться чаще, чем программы и потоки с низким приоритетом.
Итак, что же происходит в режиме энергосбережения. В Windows есть параметр в регистре HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\PriorityControl, там есть параметр Win32PrioritySeparation
Если кратко, то это режимы, которые меняют длину квантовых интервалов, отношение и распредление фоновых и активных задач.
Без лазания в реестры доступны только 2 варианта (пик 1) 1. Для программ ставит значение 26 (dec) оптимизация для активных задач, которые в 3 раза больше получают времени на выполнение, чем фоновые, включая системные задачи.
2. Фоновые задачи 18 (dec) даёт фоновым задачам приоритет схожий с активными.
При установке Windows базовое значение равно 2 (dec), что даёт одинаковый приоритет всем процессам, после он меняется в зависимости от редакции.
В режиме сбережения системные задачи переводятся в режим 3:1 это значит что фоновые задачи ПОЛУЧАЮТ в 3 раза меньше времени, чем активные задачи, что прекрасно видно на приведённом тобой графике.
В целом из своего опыта выгодней для игр использовать короткие интервалы, чем длинные, длинные интервалы хороши для серверов, где важна не столько скорость, сколько стабильность и равное распредление между кучей процессов.
Короткие же интервалы позволяют БЫСТРЕЙ игнорировать низкоприоритетные задачи и больше времени давать тем же играм или текущим активным программам.
Поэтому рекомендуется ставить значение 38 (dec) или 39 (dec) данному параметру для достижения наибольшего профита для активных задач, если вам не нужен такой прям упор на активные приложения, можно ставить 37.
Для компов, которые используются под серваки лучший вариант это как ни странно 20, а не 18, которую ставит винда по дефолту. Это даст длинные интервалы с небольшим количеством квантов на фоновые задачи, это частично избавит систему от проблем зависонов, когда у вас огромное количество процессов. По крайней мере расширит предел такого разделения задач. Что довольно важно для многозадачных систем.
То есть если вам нужна максимальная процессорная мощь в играх или тяжёлых приложениях 38-39, если вам нужен баланс между фоном и активными приложениями (например на ноуте) это 37, если вам нужен стабильный сервак с кучей процессов это 20.
Это телеметрия собирает всю информацию о тебе >>4902372 >Windows это ПСЕВДО параллельная ось Ясно. Притащил инфу из прошлого века >Итак, что же происходит в режиме энергосбережения. И дальше пошёл шизобред >там есть параметр Win32PrioritySeparation Ну, давай, покажи как от смены плана эта настройка меняется
И как вообще это может повлиять на время ядра
Откуда такие дауны псевдоэксперты высрались? Небось ещё сборки на ряженке советует и на Белочку потявкивает
Во первых этот график показывает загрузку конвейеров процессора. Но при энергосбережении частоты урезаются, и производительность падает, отсюда при той же работе растет загрузка конвейеров, и график тоже растет, хотя физически работы осталось столько же Грубо говоря чем выше частота, тем меньше процент загрузки на графике даёт одна и та же задача.
Во вторых во времени ядра показывает всю системную работу. А в энергосбережении всякие вспомогательные системные сервисы засыпают и не обслуживают ничего. Т.е. в энергосбережении система выполняет меньше работы.
Вот и получается что при переключении на энергосбережение системные задачи приостанавливаются, и время ядра падает. И в тоже время пользовательские задачи работают, но из-за урезанных частот они показывают теперь больший процент нагрузки. В итоге получаем наложение графиков: пользовательские задачи стали отображаться так, как будто они сильнее нагружают процессор, а системные задачи практически исчезли из нагрузки, и в среднем график остался на месте, только в нем поменялись доли нагрузки - системная доля уменьшилась, а пользовательская возросла. Но работы пользовательские задачи при этом генерируют столько же, их доля выросла только из-за падения частот и производительности процессора.