Я известен так же как CrashOverride
Я вообще такой человек , что люблю докапываться до самых недров и до самых самых низких уровней работы чего либо. А ещё я люблю логику , линейную... жёсткую и однозначную которая построена так же , как строется написание программ в которой есть условие IF / если... а так же Else if / если же. То есть которое является исключением первого условия. Так вот в процессе изучения работы отключения тормозилок (веры оверклокеров в бога под нозванием all disable) я смог выяснить ПРИНЦИП того как именно работают эти самые энергосберегалки. Я проверил это на процессорах Intel Core2Quad Q8200 (материнка Biostar G41) , Core i7-860 (материнка Asus P7P55) , Core i7-2600K (материнка Asus P8Z77-LX) , Core i7-3770K (материника Asus P8Z77-V) операционная система ставилась на все эти ПК одна и таже W7x64 Ultimate
На Core2Quad мы имеем возможные тормозилки C1E и EIST.
На Core i7-860 мы имеем возможные тормозилки C1E / EIST / C3 / C6
На Core i7-2600K/3770K мы имеем возможные тормозилки C1E / EIST / C3 / С6
Перед чтением далее , учтите , что процессор переходит в состояние энергосбережения ВСЕГДА , когда получает команду HALT от ОС или иного ПО.
LFM - порог минимального умножения опорной частоты
HFM - порог максимального не турбированного умножения опорной частоты (для всего что LGA775 / LGA115x если говорим о Celeron - i3)
Turbo - порог умножения опорной частоты за пределами HFM начиная с i5 и выше.
Возможные потому что это всё на уровне веры человека в то что если он это сделает - то оно будет...
На деле же , EIST отвечает за отдачу состояний между LFM и HFM , поскольку у Q8200 состояний всего 2 , то он не отвечает ни за что кроме снижения питания если питание не фиксировать в ручную... потому что LFM = 2000 МГц HFM = 2333 МГц.
C1E на этом процессоре отвечает только за то , что процессор будет отдавать реальное положение вещей если скажем он находится в LFM.
А далее начиная с i7-860 всё обстоит вот как :
Так как же всё таки работает процессор , когда мы заходим в настройки BIOS/UEFI и отключаем всё функции которые как мы считаем и как нам объясняют отвечают за энергосбережение , в том числе отключение ядер , снижение вольтажа и прочее ? Неужели всё что мы читаем не правда и нам вешают лапшу ? К сожалению это так и есть. Сейчас вы сможете удостовериться в этом от и до.
И дело тут в том , что когда процессор не получает нагрузку , или получает команду Halt он переходит в состояние LFM Low Frequancy Modulation и делается это АВТОМАТИЧЕСКИ... так вот прикол в том , что если множитель стоит в пределах того что по-умолчанию , то частота процессора калеблется ВСЕГДА в пределах от LFM до HFM... если у вас стоит турбо множитель то частота может колебаться от LFM до Turbo но при следующих условиях :
1) нет упора в TDP
2) нет упора в силу тока
3) процессор просто позволяет либо уравнять все ядра , либо выставить соотношение на каждое ядро определённой частоты.
В этих трёх случиях множитель в зависимости от нагрузки на ЦП калеблется от LFM до Turbo или HFM.
Вот именно поэтому когда нет нагрузки , процессор автоматически снижает множитель даже если не отключены его модули частично. Именно поэтому я говорю что стабильной и постоянной частоты начинаяс i5-750 или может быть начиная с iX-2xx0/K больше нет.
Более того , я начал изучать как же работает ЦП при отключенных ВСЕХ тормозилках. И понял что слово Report в BIOS-ах сделано вовсе НЕ случайно. Обратите внимание вот на что.
Если теперь мы посмотрим это , то мы можем увидеть что C1E и EIST стоит как просто C1E и EIST , а вот напротив C3 и C6 расположено слово Report что в переводе сообщать. Что это значит ? А это значит как раз вот это :
Тоесть , то что мы отключаем в BIOS , мы отключаем НЕ ВОЗМОЖНОСТЬ перевода поцессора в C3 и C6 состояния , а всего лишь УВЕДОМЛЕНИЯ пользователя о том что процессор в данный момент находится в C3 или C6 состоянии... когда мы отключаем EIST мы отключаем возможность корректно оценивать частоту процессора на уровне системы , но сам динамический множитель мы всё равно не отключаем... хорошо ли это или плохо отключать яко бы тормозилки ? Скорее плохо чем хорошо , потому что вы просто отключаете возможность увидеть что да , процессор сейчас с частично отключенным кэшем и ядрами.
Это если угодно , тоже самое что вы можете отключить вывод сигнала если вдруг у вас кулер заклинило... ну материнка будет иметь число оборотов 0 и не сообщит вам об этом.
Я потратил ещё немножечко времени на то чтоб понять как же оно всё таки работает. И вот что получилось :
1) Отключаем C6 , C3 , EIST , C1E - на деле LFM мы отменить не можем , но мы можем отменить отдачу УВЕДОМЛЕНИЙ в программы о том что меняется частота в диапозоне от LFM до HFM или до Turbo
2) Отключаем C6 , C3 , EIST - в этом случаи мы не можем изменить положение дел и частота как колебалась от LFM до HFM или до Turbo , так и будет колебаться... с той лишь разницей , что вы всё таки будете видеть уведомления о том что частота равна порогу LFM , но вы не будете видеть уведомления о том что она чуть выше порога LFM , но ниже HFM или Turbo.
4) Отключаем C6 , C3 - в этом случаи вы будете видеть реальное колебание частоты от LFM до HFM или Turbo , но вы небудете видеть уведомление о том что какое-то из ядер перешло в C6 или С3 , но это не значит , что ядра никогда не будут находиться в этих состояниях
5) Отключаем C6 - в этом случаи вы будете видеть весь диапозон герцовки от LFM до HFM или Turbo , будете видеть уведомление о том что одно или несколько ядер перешли в C3 , но не будете видеть уведомлений о переходе в C6... это опять НЕ ЗНАЧИТ что ни одно ядро не прибывает в состоянии C6.
6) не отключаем ничего... в этом случаи вы будете видеть информацию такой , как она есть и отдаваемая информация будет соответствовать реальному положению дел. Вы будете видеть калебание частоты от LFM до HFM или Turbo , вы будете видеть процент прибывания каждого ядра в каждом C состоянии.
Кстати , а вот как работает Turbo Boost , это тоже можно объяснить.
Turbo это обратная сторона EIST , потому что EIST изначально работает только на снижение частоты и напряжения относительно номинала. Включение Turbo Boost работает по следующей схеме.
1) если в системе нет отдачи о C3/C6 то система считает что активны все ядра , даже если она в мониторре процессорв отображает что часть ядер отключена. Поэтому поднять множитель и напряжение можно только в рамках как для всех активных ядер.
2) если система получает уведомления о том как обстоит дело , конкретно что например 1 ядро не загружено и находится в LFM , но при этом не получает уведомления о том что оно отключено - система всё равно поднимит множитель как для всех активных ядер
3) если система получает уведомления о том как обстоит дело , конкретно что например 1 ядро не загружено , переведено в LFM и находится в состояниях C3/C6 , в этом случаи система попытается на базе EIST-а поднять напряжение и множитель для всех остальных ядер.
Я утверждаю , что LFM он же C1E отключить невозможно вообще НИКАК... EIST отключить тоже невозможно НИКАК.. C3 / C6 тоже отключить невозможно НИКАК... всё что вы можете сделать отключением вот таким сочетанием :
1) C1E DISABLE / EIST DISABLE / C3 DISABLE / C6 DISABLE - так это добиться того что у вас будет постоянное напряжение если вы используете Offset.
2) C1E ENABLE / EIST DISABLE / C3 DISABLE / C6 DISABLE - даст вам то что вы будете видеть отчёт о LFM в большинстве утилит , а не только в таких низкоуровневых как TMonitor. Но при этом вы не будете видеть прмоежуточные состояния процессора.
3) С1E ENABLE / EIST DISABLE / C3 ENABLE / C6 ENABLE - даст вам то , что при Offset напряжении оно будет снижаться тогда когда процессор будет переходить в C3 / C6... но не будет снижаться если процессор не переходит в C3 / C6 и вместо этого снижает частоту.
4) С1E ENABLE / EIST ENABLE / C3 DISABLE / C6 DISABLE - даст вам то , что напряжение если оно Offset будет регулироваться по частоте работы ЦП... в этом случаи обычно только вниз
5) С1E ENABLE / EIST ENABLE / C3 ENABLE / C6 ENABLE - даст вам то , что напряжение если оно Offset будет регулироваться по частоте работы ЦП и по числу отключенных ядер. Причём в этом случаи ещё и вверх для добавочного турбовольтажа.
Но самое интересное , ни в одном из пяти случаев ВНЕ ЗАВИСИМОСТИ включена у вас отдача системе о C1E / EIST / C3 / C6 - переход в эти состояния на АППАРАТНОМ уровне отключить нельзя. Потому что решение о переходе в состояние энергосбережения в виде работы не на полнйо частоте или на LFM или даже с отключением ядер принимает ни система как нам хотелось бы и даже не настройки BIOS/UEFI , а сам процессор. Точно так же как процессор принимает решение в каком режиме использовать PCI-E rev3 x16 в режиме 3.0 или в режиме 1.1. Точно так же как от нас уже не зависит глубина интерливера при чередовании банков памяти и даже от нас не зависит размер банка для интерливинга который выбирает ИКП на основании загрузки памяти.
Просто если бы всё было так как вы думаете и как думают , а точнее сказать во что верят оверклокеры - то тогда при отключении всех плюшек частота LFM и HFM были бы равны. Но как ты это не делай - это не удаётся. Причём это и на Линфильде так и на Сэнди так и на Айви так и на Хасфеле так и на Скайлейке так... потому что чтоб удостовериться в моей правоте , достаточно проделать следующее с Скаем или Линфильдом... ну конечно можно и на LGA1366 и на LGA2011 повторить , суть от этого не изменится... берём ставим целевую частоту например 3000.... теперь , пытаемся зафиксировать эту частоту так , чтоб она была достигнута на самом минимальном множителе. То есть так , чтоб процессору сбрасывать частоту было уже некуда. Смотрим что получаем в TMonitor , ОБЯЗАТЕЛЬНО смотрим нагрев ядер , ОБЯЗАТЕЛЬНО смотрим сколько мы кушаем VA или W в таком режиме... запомнили нагрев и потребление энергии ? Очень хорошо... как мы знаем , что 200x15 что 100x30 и даже 15x200 дадут теже самые 3000 МГц... следовательно , у нас в двух случиях должны быть полностью ОДИНАКОВЫЕ температуры и полностью ОДИНАКОВОЕ потребление от розетки. Ведь сберегалки мы отключаем. Попробуйте и удостоверьтесь что я прав.
При полностью стабильной частоте работы например 3 ГГц или если множитель минимальный позволяет получить только 2,5 ГГц то 2,5 ГГц... так вот при полностью стабильной частоте вы должны иметь :
1) полностью одинаковый нагрев что при включенном состоянии простоя в системе что при выключенном состоянии простоя в системе
2) по ваттметру или замеру от ИБП замер по TDP не подойдёт , потому что например если у вас процессор с частотой 3200 и TDP 130 и 4 физических ядра , то в том случаи если вы выставети 100x32 у вас будет частота 3200 , но TDP 130 утилитами будет расчитываться как 130W только по достижению множителя на уровне 32x , если вы уменьшите множитель до 24 и повысите опорную частоту до 133 , то вы получите теже 3200 , но вы увидите TDP как 98W потому что утилиты AIDA64 , HWMonitor и подобные считают что 1x = 1,3W на 4 физических ядра и кратность умножителя даёт вам то что вы получите. При этом , если вы отключите одни или 2 физических ядра и оставите теже 32x100 , то TDP будетуменьшин по формуле 130W:4=32,5W на ядро... то есть при отключении каждого ядра TDP будет уменьшаться на 32,5W... Таким образомполучается операться на эту информацию в ваттаже никак нельзя. Только показатели с ваттметра или ИБП.
И вот что интересно , вы будете замечать , что если вы видите в AIDA64 и подобных утилитах вашу целевую частоту и при этом вы видите в TMonitor-е работу на частоте LFM то есть ниже вашей целевой частоты - то потребление электроэнергии и соответсвенно нагрев будет меньше. Когда вы добьётесь того что бы LFM частота соответствовала вашей целевой частоте при одинаковом напряжении , то вы увидите что у вас температура камня будет что при отключенных тормозилках что при отключенном состоянии простоя в системе одинаковой. Более того , вы увидите что и потребление по ваттметру будет одинаковое. Разумеется я говорю про состояние простоя когда у процессора появляется возможность перейти на частоту LFM. И вот если она ниже той которую вы хотите фиксировать - вы увидите и меньшую температуру и меньшее потребление энергии.
Я это проверял очень много раз.
Первое вложение сделано когда я отключил все тормозилки и в системе специально постаавил профиль сбалансированый чтоб показать что ядра всё таки могут отключаться даже когда это в BIOS-е как бы не разрешено. Почему сбалансированый ? Потому что только он показывает что же делает ОС на деле... но будьте уверены , что это же будет и в максимальной производительности даже если вы поставите минимальное состояние ЦП 100% , процессор будет вести себя аналогичным образом просто потому что это происходит на АППАРАТНОМ уровне.
Второе вложение это то , что будет , если на Core2Quad запретить C1E / EIST и в системе оставить план максимальная производительность. Не смотря на то что процессор должен держать 2333 колом , фактически происходит то , что происходит.
Я предлагаю вместо удаления вот этих сообщений , вникнуть в принцип работы и попытаться понять теперь уже на основе этого , как всё таки работает ЦП , а вместе с этим понять ПОЧЕМУ часто Linx проходим на ура , а вот Prime95 с переменной нагрузкой проходим частенько с синими экранами смерти. Когда поймём , можно дописать FAQ с поправками.
Далее , я предлагаю в этой теме выяснить с какого поколения ЦП вообще появилось такое понятие как LFM. Потому что у меня нет возможности протестировать лично Pentium4 Willamette , Pentium III Coppermine , Pentium III Katmai , Celeron Mendocino и прочие процессоры.
Тем же , кто слепо верит в Бога All Disable - тема явно не посвящается. Потому что можно продолжать верить в то что земля плоская , солнце движется вокруг земли и что вообще существует небесная твердь о которую всё что поднимется ввоздух тупо разобьётся. Но для таких ли случаев эта конференция ?
https://yadi.sk/i/waAZ3Y3f3YeehB
https://yadi.sk/i/BoUxYCsG3YeeiN