Исправление ошибок в CPU
Не для кого не секрет, что процессор представляет собой автомат с микропрограммным управлением. И любая его инструкция является совокупностью микрокоманд, прошитых в ПЗУ процессора при его изготовлении. Ошибки микрокода и схемные погрешности (errata), допущенные при проектировании, могут вызывать отклонения от спецификаций процессора и ошибкам в его работе. При выпуске процессора обычно публикуются его спецификация и список обнаруженных errata.
Все процессоры Intel с архитектурой P6, а к ним относятся семейства Pentium Pro, Pentium II & III, Celeron, Pentium II & III Xeon и Pentium II Overdrive, обладают таким замечательным свойством, как «reprogrammable microcode». В этих процессорах имеется возможность изменения микрокода, т.е. имеется возможность исправления ошибок в программно-схемотехнической реализации конкретных процессоров семейства P6 и некоторых встроенных ошибок практически на уровне «железа». Ошибки могут появляться на этапе проектирования процессоров, а исправляются они именно с помощью изменения микрокода. Каждое из подсемейств (PII, Celeron, PPro, Xeon) имеет спецификацию. При выпуске каждого нового степпинга процессора (внутри него все приборы являются идентичными в рамках технологических отклонений), Intel публикует для него обновление спецификации, где указываются обнаруженные и исправленные errata (отклонения от спецификации).
Ошибки эти могут, в принципе, осложнить жизнь программному обеспечению, которое работает на этих «дефектных» процессорах (и пользователю ;-)) .
Конечно, все зависит от конкретных ошибок. Для избавления от подобных ужасов и требуется изменение микрокода процессора, в результате чего ошибка может быть полностью устранена или могут быть просто смягчены последствия от ее присутствия.
Кстати, поддержка биосами вновь вышедших процессоров определяется, в частности, и наличием соответствующей прошивки. Например, когда появился первый Celeron, именно отсутствие соответствующей версии микрокода не позволяло корректно запустить систему с этим процессором.
Сами обновления микрокода — это 2-хкилобайтные блоки данных, прошитые в системном BIOS. Такой блок есть для каждого степпинга процессора из семейства P6. Intel поставляет свежие версии микрокода ведущим производителям BIOS. База данных с обновлениями пополняется и изменяется при появлении новых моделей и версий микрокода. Intel рекомендует выполнять обновление версий микрокода с помощью своей утилиты при установке нового процессора на материнскую плату или перепрограммирования флэш-памяти, чтобы быть уверенным, что в BIOS содержится самая свежая версия микрокода. Эта программа определяет используемый процессор (с помощью CPUID) и ищет соответствующее ему обновление в своей базе. Если найдена свежая версия микрокода, утилита локально перепрошивает код в BIOS, не затрагивая остальные участки. Т.о. отпадает необходимость перепрограммирования всего флэша для поддержки нового ЦПУ, как это было ранее. Обновление базы данных Intel периодически выкладывает на своем сайте.
Последняяи из доступных нам баз имеет ревизию 5.01 и содержит следующие версии микрокода:
| Processor | Processor Stepping | Microcode Update Rev |
|---|---|---|
| Pentium III Processor | 0x672 | 0x04 |
| Pentium III Processor | 0x673 | 0x02 |
| Pentium III Xeon Processor | 0x672 | 0x21 |
| Pentium III Xeon Processor | 0x673 | 0x22 |
| Pentium II Processor | 0x633 | 0x34 |
| Pentium II Processor | 0x634 | 0x35 |
| Pentium II Processor | 0x650 | 0x32 |
| Pentium II Processor | 0x651 | 0x30 |
| Pentium II Processor | 0x652 | 0x14 |
| Pentium II Processor | 0x653 | 0x01 |
| Pentium II Xeon Processor | 0x652 | 0x29 |
| Pentium II Xeon Processor | 0x653 | 0x04 |
| Intel Celeron Processor | 0x650 | 0x32 |
| Intel Celeron Processor | 0x651 | 0x30 |
| Intel Celeron Processor | 0x660 | 0x09 |
| Intel Celeron Processor | 0x665 | 0x02 |
| Pentium II OverDrive Processor | x1632 | 0x02 |
| Pentium Pro Processor | 0x612 | 0xC6 |
| Pentium Pro Processor | 0x616 | 0xC6 |
| Pentium Pro Processor | 0x617 | 0xC6 |
| Pentium Pro Processor | 0x619 | 0xD2 |
Загрузить последнюю версию утилиты, исправляющую микрокод можно прямо отсюда: pupdt501.exe (115 Kb)
Старую базу (PEP15.PDB) можно загрузить отсюда: pupdt461.exe (111 Кб)
После окончания работы утилиты, необходимо выключить питание компьютера. Загрузка обновления в процессор происходит во время выполнения POST при каждом запуске системы. Естественно для работы утилиты необходимо разрешить перезапись флэш-памяти перемычкой или в BIOS Setup. Программа должна запускаться из-под «голого» ДОСа.
Однако для такого идеального варианта необходима поддержка BIOS’ом специального API обновления микрокода процессора, позволяющего утилите обновления с помощью BIOS загрузить новый микрокод. Если используемая версия системного BIOS не поддерживает API, пользователю ничего не остается, кроме как добыть новую версию у производителя материнской платы. Однако бывает, что найти её не так уж просто, если не невозможно. Зачастую, после прекращения производства какой-либо модели системной платы, производитель перестает выпускать и обновления биосов для нее, но при этом новые процессоры могут появиться в продаже, а у пользователя может возникнуть желание установить в свою систему новый CPU.
В данном случае, утилита, тем не менее, может загрузить исправления технических погрешностей непосредственно в процессор. В этом случае утилита вызывает загрузку операционной системы сразу после обновления микрокода. Однако обновление микрокода будет потеряно при мягкой или жесткой перезагрузке системы.
Возникает вопрос, а чем чревато самостоятельное обновление прошивки? Ну, во-первых, сначала нужно удостовериться, что вам это действительно необходимо. Если версия прошивки старая, а новых версий BIOS производитель системной платы не предлагает, но, главное, вы столкнулись с нестабильной работой какого-то приложения, и рассчитываете, что изменение микрокода процессора вам поможет. Только в этом случае имеет смысл самостоятельно изменить прошивку. А насчет того, чем это чревато — по-моему, ничем опасным. Во-первых, не стоит забывать, что загрузка обновления микрокода в процессор применяется во всех BIOS на платах для P6 и уже давно (многие видели в Setup загадочную опцию Microcode Update: Enable/Disable). И ничего! Все работает.
Это еще раз подчеркивает необходимость его использования. Кто знает, как бы обстояло дело без этого обновления! Отличие лишь в том, что раньше микрокод обновлялся с установкой новой версии флэша, а теперь можно перепрограммировать не все содержимое BIOS, а лишь ограниченный кусок.
Мой личный опыт работы с этой программой пока был ограничен 7 случаями, из которых удалось обновить микрокод только на одной системной плате (Abit LX6 c PII 233). В остальных случаях BIOS уже содержал обновленные версии микрокода. Также не удалось встретить BIOS, не поддерживающий обновление микрокода.
Что касается аналогичной возможности обновления микрокода в процессорах других производителей (AMD, Cyrix), то никакой информации по этому вопросу мне найти не удалось. Но я почти уверен, что в этих CPU имеется аналогичная возможность изменения микрокода.
Источник
Процессор не работает на полную мощность
Процессор компьютера обязан работать на полную мощность. В иных случаях пользователя могут ожидать неприятные сюрпризы с подвисаниями и торможением системы в моменты пиковой нагрузки. В рамках данной статьи мы рассмотрим причины, почему CPU не выкладывается на максимум.
Выясняем причину сниженной мощности
Существует до десятка предпосылок работы процессора на неполную мощность. Это могут быть аппаратные или программные причины, в том числе сбои, или же банальный простой процессора. Следует рассмотреть их все, начиная с самой тривиальной.
Причина 1: Отсутствие нагрузки
Прежде чем грешить на CPU и рассуждать, почему тот не работает на полную, следует посмотреть, есть ли ему нужда задействовать свою мощь в полном объёме. По умолчанию он не обязан использовать всю, даже номинальную частоту, если никакое приложение того не требует. Главный вычислительный элемент при этом «отдыхает» или же находится в режиме простоя, что сохраняет пользователя от чрезмерных трат электроэнергии, ЦПУ не греется лишний раз, чтобы не «мучить» систему охлаждения.
В той ситуации, когда ваш процессор не нагружен, то показатель его частоты может находиться на уровне номинальной заявленной производителем или даже ниже. Например, если процессор обладает базовой скоростью в 3,70 ГГц, это не помешает ему снизить её до 2,50 ГГц и меньше (до минимальных 800 МГц), при отсутствии надобности в более высоких частотах, например, когда CPU не загружен и на 5%.
Ничего страшного в пониженной частоте из-за простоя для системы нет. Компьютер сам возьмёт нужную мощность, когда та потребуется.
Причина 2: Аппаратная несовместимость
Если же процессор загружен под завязку, но непонятно, почему использует лишь часть своей вычислительной мощности, следует углубиться в настройки системы и подсистемы, будь то BIOS или UEFI.
Первым пунктом станет проверка совместимости вашей материнской платы с CPU. Обычно для этого хватит факта наличия или отсутствия вот такой надписи при загрузке компьютера: «Intel CPU uCode loading error». Именно она будет обозначать, что процессор несовместим с текущей версией BIOS материнской платы. Это не самый критичный сбой и при нём даже можно работать, однако, одним из последствий такой несовместимости может стать то, что процессор не работает на максимальной мощности.
Причина 3: Измененные опции BIOS
Сразу несколько параметров в БИОС могут стать виновниками работы компьютера не на всю мощность.
Пониженная тактовая частота
Возможно, причина недостаточной производительности кроется в выставленных в BIOS заниженных показателей CPU, из-за которых берутся не максимальные частоты. Войдите в БИОС и посмотрите на конфигурацию процессора и его ядер.
Если вы увидите, что настройки переведены в ручной режим, а где-то установлено лимитированным минимальное значение, будь то настройка по отдельным ядрам или всему ЦПУ, значит, именно в этом кроется причина отсутствия работы на полную мощность. Ориентируйтесь на названия типа «CPU Core Ratio» и «Core Ratio Limit» и найдите подобные строчки в своей подсистеме.
Кроме того, если процессор будет находиться под напряжением ниже рекомендуемого для него значения, CPU не сможет работать на высоких частотах. Скорее всего, этот показатель будет называться как-то вроде «CPU Core Voltage». Оба этих параметра в различных BIOS и UEFI можно проверить в одном окне.
Обратите внимание, что на значениях процессора выставляется не частота, а множитель, значение которого перемножается с показателем шины, и только тогда получается частота.
Отключённые ядра/режим многопоточности
Если же вас беспокоит то, что с одним приложением компьютер справляется, но несколько открытых окон заставляют ПК нещадно «тупить», вероятно, что-то не так с настройками ядер. Дело в том, что их тактовую частоту можно не только снизить, но и вовсе отключить функционирование всех ядер, кроме одного.
Не стоит забывать и о «Hyper-Threading», иным словом – многопоточности. Отключение этого режима процессора может вызвать значительное снижение производительности, особенно при параллельной работе с несколькими программами. В связи с этим стоит проверить одноимённую строку «Hyper-Threading», и узнать, какое число ядер является активным, то есть «Active Processor Cores».
Отключение возможности распараллеливания потоков и активность лишь нескольких ядер может быть причиной, почему ЦПУ работает не так быстро, как вам хотелось бы.
Отключённый Turbo Boost/Core
Выключенный режим «Turbo Boost» у CPU от Intel или «Turbo Core» у AMD не даст процессору достигнуть частоты выше базовой, что довольно обидно, когда вы приобретали модель с возможностью саморазгона, а компьютер работает максимум на номинальной вычислительной мощности. За этот режим ответственная одноимённая строчка или слегка переиначенная, типа «Turbo mode».
Примечание: все перечисленные причины, связанные с настройками BIOS, можно исправить универсальным способом: вернуть их в исходное состояние, поскольку по умолчанию все ядра должны быть активными, напряжение на процессор — нормальным, а многопоточность включена. Это эффективно, если вы сами боитесь что-то менять в подсистеме, или же параметры сбились настолько, что поправлять их точечно нецелесообразно.
Причина 4: Пониженное электропотребление
Не только в BIOS позволяется ограничить потребление энергии процессором — это возможно и в самой Windows. Хотя ОС всё равно зависит от установленного вольтажа в подсистеме и не может взять больше, чем дают, она вправе наложить очередной лимит на CPU, но уже не в абсолютных, а в относительных значениях. Для того чтобы удостовериться в полном электроснабжении ЦПУ силами операционной системы, стоит заглянуть в соответствующую панель таким способом:
- С помощью функции поиска в меню «Пуск» найдите «Панель управления» и откройте данное приложение.
Кликните левой кнопкой мыши по категории «Оборудование и звук».
Нажмите на «Электропитание».
Выберите «Настройка схемы электропитания» использующейся вами в данный момент схемы.
Кликните по «Изменить дополнительные параметры питания».
Просмотрите параметр «Максимальное состояние процессора».
Если показатель будет ниже «100%», то процессор физически не сможет работать на полную мощность. Уже на «99%» режим «Turbo Boost» автоматически отключается и максимальная частота становится равной номинальной. Ну а если там указано всего «50%», процессор сможет работать лишь в половину своей мощности в лучшем случае.
Исправить это можно самостоятельно, выставив значение в «100%» или же кликнув на «Восстановить параметры по умолчанию», так как ни одна из схем электропитания (даже экономная) не призвана ограничивать процессор, когда тот находится под нагрузкой.
В данной статье мы рассмотрели основные причины, почему процессор не работает на полную мощность. Это может быть и банальный простой CPU, исправляющийся самой нагрузкой, но вероятна и аппаратная несовместимость, при которой нужно обновить BIOS. При сбое параметров подсистемы можно просто сбросить настройки до исходных значений, при которых ЦПУ не должно ничего ограничивать.
Помимо этой статьи, на сайте еще 12333 инструкций.
Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Источник