HPET Mode – The BIOS Optimization Guide

HPET Mode - The BIOS Optimization Guide

HPET Mode

Common Options : 64-Bit Mode, 32-Bit Mode

 

Quick Review of HPET Mode

The HPET Mode BIOS option is linked to the HPET Support BIOS option. HPET Support must be enabled for this BIOS option to be active.

The HPET, short for High Precision Event Timer, is a new system timer developed by Intel and Microsoft to replace the four system timers currently in use. Some HPETs have 64-bits wide registers which can also run in the 32-bit mode. This is where the HPET Mode BIOS option comes in.

Setting HPET Mode to the 64-Bit Mode allows the 64-bit operating systems and applications to make full use of the HPET’s 64-bit registers.

Setting HPET Mode to the 32-Bit Mode forces the HPET’s 64-bit registers to run in the 32-bit mode. This allows proper operation when used with a 32-bit operating system.

If you are using a 64-bit operating system, you should select the 64-Bit Mode so that the operating system and 64-bit applications can make full use of the HPET’s 64-bit registers. There is no harm in selecting the 32-Bit Mode although it will mean a potential reduction in counter resolution and/or functionality.

If you are using a 32-bit operating system, you should select the 32-Bit Mode.

If you are dual-booting between a 64-bit operating system and a 32-bit operating system and both support the HPET, select the 32-Bit Mode. If the 64-bit operating system supports HPET while the 32-bit operating system does not (e.g. Windows XP), then you can select the 64-Bit Mode.

 

Details of HPET Mode

The HPET Mode BIOS option is linked to the HPET Support BIOS option. HPET Support must be enabled for this BIOS option to be active.

The HPET, short for High Precision Event Timer, is a new system timer developed by Intel and Microsoft to replace the four system timers currently in use :

  • the 8254 Programmable Interval Timer (PIT),
  • the Real Time Clock (RTC),
  • the Advanced Programmable Interrupt Controller (APIC) timer and
  • the PM clock (or ACPI timer).

The HPET was originally called the Multimedia Timer (MM Timer) but they changed it to its current name to avoid confusion with a Microsoft DirectX timer of the same name, as well as to better describe the timer.

The HPET is also designed to provide aperiodic functionality and higher precision, both necessary to support the tighter timing requirements of multimedia and other time-sensitive applications. High-definition video playback, for example, requires a timing resolution of 1 millisecond to decode and synchronize the video frames and audio streams.

The aperiodic functionality allows applications to issue commands “out of sync” with the system timer. This allows the application to achieve much greater precision without the need for the system timer to actually issue the clock interrupts at the frequency required to achieve that precision. By allowing the system timer to run at a much lower frequency, this feature improves system performance and in mobile systems, extends battery life.

The higher precision is afforded by the HPET’s higher frequency of at least 10 MHz, which gives it a granularity of 1 microsecond or less. Its aperiodic functionality though ensures a nanosecond level of accuracy. It also has registers that are at least 32-bits wide. Some HPETs have 64-bits wide registers which can also run in the 32-bit mode. This is where the HPET Mode BIOS option comes in.

Setting HPET Mode to the 64-Bit Mode allows the 64-bit operating systems and applications to make full use of the HPET’s 64-bit registers.

Setting HPET Mode to the 32-Bit Mode forces the HPET’s 64-bit registers to run in the 32-bit mode. This allows proper operation when used with a 32-bit operating system.

If you are using a 64-bit operating system, you should select the 64-Bit Mode so that the operating system and 64-bit applications can make full use of the HPET’s 64-bit registers. There is no harm in selecting the 32-Bit Mode although it will mean a potential reduction in counter resolution and/or functionality.

If you are using a 32-bit operating system, you should select the 32-Bit Mode.

If you are dual-booting between a 64-bit operating system and a 32-bit operating system and both support the HPET, select the 32-Bit Mode. If the 64-bit operating system supports HPET while the 32-bit operating system does not (e.g. Windows XP), then you can select the 64-Bit Mode.

Go Back To > The BIOS Optimization Guide | Home

 

Support Tech ARP!

If you like our work, you can help support our work by visiting our sponsors, participating in the Tech ARP Forums, or even donating to our fund. Any help you can render is greatly appreciated!

Comments

comments

About The Author

Related posts

Leave a Reply

%d bloggers like this: