» »

ACPI HPET Table что это в биосе? HPET: что это и как с его помощью оптимизировать Windows Высокоточный таймер событий за что отвечает

01.04.2020

Функция HPET Mode предназначена для установки режима работы аппаратного таймера HPET. Функция имеет всего два варианта значений – 32 bit и 64 bit.

До появления HPET в персональных компьютерах использовались аппаратные таймеры RTC (Часы реального времени) и Intel 8254. Однако эти таймеры во многом не соответствуют современным требованиям. В частности, их тактовая частота не превышает нескольких десятков килогерц, а из-за невысокой скорости работы они зачастую генерируют множество неиспользуемых прерываний. Кроме того, они обладают невысокой точностью определения временных интервалов.

Эта ситуация не устраивала как производителей программного обеспечения, так и производителей аппаратного обеспечения. В результате две ведущие компании в обеих областях, Microsoft и Intel, объединили свои усилия, и в 2005 г. появилась их совместная разработка, таймер событий высокой точности (High Precision Event Timer, HPET).

Данный таймер разрабатывался преимущественно для улучшения работы мультимедийных приложений и поэтому поначалу получил название мультимедийного таймера (Multimedia Timer). Однако впоследствии оказалось, что мультимедийными таймерами назывались программные таймеры, использовавшиеся в графических операционных оболочках семейства Windows 3.x, поэтому название таймера было заменено на HPET.

Применение таймера событий высокой точности позволило улучшить работу многих прикладных программ, а также игр, использующих мультимедийный контент, и повысить плавность его воспроизведения.

Для работы таймера HPET требуется его поддержка со стороны операционной системы. Большинство современных операционных систем, начиная с Windows Vista, поддерживают его. Хотя в Windows XP, начиная с SP2, также присутствует драйвер HPET, однако фактически эта операционная система не использует данный таймер. Кроме того, таймер поддерживается современными версиями Mac OS X, Linux, Solaris и FreeBSD.

На аппаратном уровне в большинстве чипсетов таймер HPET расположен в южном мосте материнской платы. Он работает на частоте в 10 МГц и имеет 64-разрядный главный счетчик. Кроме того, timer обладает большим набором (от 3 до 256) специальных вспомогательных счетчиков-компараторов, которые способны генерировать прерывания и могут управляться как операционной системой, так и прикладными программами. Компараторы поддерживают как 32-разрядный, так и 64-разрядный режимы работы.

Таймер событий высокой точности изначально разрабатывался для 64-разрядных операционных систем. Однако он может работать и в 32-разрядных системах. Для переключения режима работы компараторов с 32-разрядного режима на 64-разрядный и предназначена опция HPET Mode.

Функция может быть доступна лишь после включения общего режима поддержки технологии High Precision Event Timer в BIOS при помощи .

Какое значение опции выбрать?

Если у вас на компьютере установлена 32-разрядная ОС, поддерживающая HPET, то вы должны выбрать значение опции 32 bit. В случае же использования поддерживающей HPET 64-разрядной операционной системы лучше всего выбрать значение 64 bit.

Установка в 64-разрядной системе 32-разрядного режима опции серьезно не отразится на работоспособности системы, за исключением того, что прикладные программы не смогут получить доступ к расширенным возможностям таймера. Тем не менее, выбор 64-разрядного режима позволит Windows в полной мере использовать преимущества технологии High Precision Event Timer.

В том случае, если у вас на компьютере установлены как 32-разрядная, так и 64-разрядная операционные системы, поддерживающие HPET, то рекомендуется выбрать 32-разрядный режим опции. Если у вас есть операционная система, не поддерживающая HPET и 64-разрядная ОС, поддерживающая HPET, то можно смело установить режим 64 bit.

Всем привет. Итак, сегодня у нас речь пойдет о биосе, а вернее про функцию в нем под названием ACPI HPET Table. Вижу что в названии есть слово ACPI, хочу сразу сказать, что это интерфейс, при помощи которого происходит взаимодействие между операционкой, железом и биосом. Так что же такое HPET (High Precision Event Timer)? Это некий высокоточный таймер, который используется в чипсетах с 2005-го года. HPET был создан компаниями Intel и Microsoft, что как бэ намекает уровень серьезности…

Вообще опция HPET Support включает сам таймер HPET. ACPI HPET Table это расширенная таблица прерываний и думаю что стоит включать, если вы активировали HPET. Еще может быть опция HPET Mode, там выставляется 32 бита или 64, это смотрите какая у вас винда разрядности, ту и выставляйте.


Зачем нужен HPET? Он способен создавать прерывания высокой точности, короче непонятно. Но эффект от этого всего можно заметить в мультимедии, например при воспроизведении видео, какой именно эффект я сам не могу понять. Может дело в отклике, может как-то видео будет шустрее воспроизводиться.. Хотя вот написано что HPET может обеспечить плавное воспроизведение, но что это значит я понять не могу =(

Полноценно HPET поддерживают операционки начиная с Windows Vista.

Честно, я сам толком не могу понять что такое HPET. Однако кажется оно может ускорить некоторые мультимедийные задачи на ПК. HPET в некотором смысле некая оптимизация работы процессора, ну что-то в этом духе =)

Еще нашел инфу, что может быть такое, винда не хочет ставиться, выбивает синий экран. Чел пишет, что он перерыл кучу инфы ничего не помогало, а потом пошел биос, вот сюда:

BIOS/Advanced/ACPI Configuration/

Там нашел опцию ACPI HPET Table, включил ее и нормально поставил винду, вот такой прикол =)

Так, тут небольшая непонятка вышла. Короче Windows может использовать HPET не учитывая настроек в биосе, понимаете? Получается что сама винда может использовать свои таймеры, но не те, которые встроенные в процессор (я так понимаю что именно они включаются в биосе опцией HPET). Из этого делаем выводы, что если вы включили HPET в биосе, то в самой винде таймеры нужно отключить, чтобы использовались только таймеры в проце. Вроде все так. Таймеры в винде отключаются так, нужно открыть командную строку с правами админа, в Windows 7 это делается так, в пуске пишите cmd и потом правой кнопкой по нему и выбираете этот пункт:

Ну а если у вас стоит Windows 10, то там зажимаете Win + X и потом выбираете такой пункт:

Теперь команды. Чтобы отключить виндовские таймеры, используйте сначала эту команду, она отключает сам таймер (если я все верно понимаю):

bcdedit /set useplatformclock false

Потом эту, она удаляет значение useplatformclock:

bcdedit /deletevalue useplatformclock

Вот эти две команды, то я их нашел на игровом форуме War Thunder, там эти команды предлагаются чтобы уменьшить лаги в игре, я думаю это о чем-то явно говорит…. И кстати, это не всем помогло убрать лаги, один чел пишет что тут еще имеет значение аппаратная часть….

Кстати вот команда для включения таймера:

bcdedit /set useplatformclock true

Еще раз. Как я понимаю, если HPET включен в биосе, то в самой винде его стоит отключать, чтобы использовались таймеры только в процессоре. Надеюсь что я все правильно понял =)

И еще вот читаю, что если у вас медленно открываются проги или есть какие-то рывки в работе компа, то стоит проверить, включено ли HPET.

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

Не знаю, но вроде по умолчанию опция ACPI HPET Table идет включенной.

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

Ребята, вот нашел сообщение одного чела на зарубежном форуме, сообщение уже перевел на русский, смотрите что пишется:

Ну а вот сама опция ACPI HPET Table в биосе:

Вот еще одна картинка, это биос уже в новом формате так бы сказать, тут тоже опция ACPI HPET Table есть и кстати она тоже включена:

Ребят, такие дела. Кое-как разобрались с тем что такое ACPI HPET Table. Единственное что непонятно о включении. Нужно ли отключать в винде, если HPET включено в биосе? Я просто читал, что если включено и в винде и в биосе, то будет использоваться в первую очередь виндовский таймер, и только если его отключить, то будет использовать таймер в процессоре. Короче непонятно. Но что такое HPET я думаю вы точно поняли теперь. Удачи вам и чтобы все у вас было прекрасно в жизни!

HPET был введен компаниями Intel и Microsoft в 2005 году. Это аппаратный таймер, который находится в пределах южного моста – компонента, отвечающего за связь процессора с жестким диском, видеокартой, оптическим приводом и другими устройствами для обеспечения максимальной пропускной способности.

Функции аппаратного таймера

Задачей таймера является подсчет количества системных событий, связанных, например, с доступом к жесткому диску. В момент, когда предварительно установленное значение будет достигнуто, создается прерывание. Процессор приостанавливает текущую программу и реализует связанный с новой командой код.

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

Симптомом неправильной работы HPET (или полного его бездействия) являются, например, регулярные секундные зависания Windows. Компьютер со временем начинает медленно работать. В такой ситуации следует задуматься над изменением параметров указанной функции.

Как сменить значение таймера и ускорить Windows

Сначала нужно определить, поддерживает ли ее в целом наша платформа. Здесь все просто – Windows Vista и новые версии поддерживают HPET, XP делает это частично, старые «окна» вообще не используют этот дополнительный таймер. В случае сомнений следует заглянуть в BIOS.

В дополнительных параметрах (Advanced) должна быть опция Configuration PCH или HPET Mode (название может немного отличаться в зависимости от версии BIOS и производителя материнской платы). Нам нужно найти High Precision Timer, ACPI HPET Table или похожее. Здесь можно ее включить или отключить.

Тем не менее Windows имеет тенденцию к перезаписи установленных параметров и использовать HPET, несмотря на настройки в Биосе. Поэтому после загрузки системы нужно открыть командную строку с правами администратора. Для ее вызова в Windows 10 кликните правой кнопкой на меню Пуск и выберите соответствующий пункт.

HPET сможете включить с помощью команды:

bcdedit /set useplatformclock true

Это единственный таймер, который активируется через Windows. Для его отключения используйте команду:

bcdedit /deletevalue useplatformclock

Тогда операционная система будет вынуждена использовать таймеры, встроенные непосредственно в процессор.

Важно: в этом обзоре речь не идет о том, что HPET должен быть полностью включен или выключен. Если вы столкнулись с проблемами зависания системы – медленно открываются программы или рывки в работе компьютера — то следует проверить, работает ли HPET, и попробовать разные настройки. Полученный результат будет зависеть от точного определения причины указанной проблемы.