CPU Hyper-Threading – The BIOS Optimization Guide

CPU Hyper-Threading - The BIOS Optimization Guide

CPU Hyper-Threading

Common Options : Enabled, Disabled

 

Quick Review

This BIOS feature controls the functionality of the Intel Hyper-Threading Technology.

The Intel Hyper-Threading Technology allows a single processor to execute two or more separate threads concurrently. When it is enabled, multi-threaded software applications can execute their threads in parallel, thereby improving their performance.

The Intel Hyper-Threading Technology is only supported by certain Intel processors, from the Intel Pentium 4 onwards. Please note that for it to work, you should have the following :

  • an Intel processor that supports Hyper-Threading
  • a motherboard with a chipset and BIOS that support Hyper-Threading
  • an operating system which supports Hyper-Threading (Microsoft Windows XP or Linux 2.4.x, or better)

Since it behaves like two separate processors with their own APICs, you should also enable APIC Function in the BIOS, which is required for multi-processing.

It is highly recommended that you enable CPU Hyper-Threading for improved processor performance.

 

Details

The Intel Hyper-Threading Technology is an extension to the IA-32 architecture which allows a single processor to execute two or more separate threads concurrently. When it is enabled, multi-threaded software applications can execute their threads in parallel, thereby improving the processor’s performance.

The current implementation involves two logical processors sharing the processor’s execution engine and its bus interface. Each logical processor, though, will come with its own APIC. The other features of the processor are either shared or duplicated in each logical processor.

Here is a list of the features duplicated in each logical processor :-

  • General registers (EAX, EBX, ECX, EDX, ESI, EDI, ESP and EBP)
  • Segment registers (CS, DS, SS, ES, FS and GS)
  • EFLAGS and EIP registers
  • x87 FPU registers (ST0 to ST7, status word, control word, tag word, data operand pointer and instruction pointer)
  • MMX registers (MM0 to MM7)
  • XMM registers (XMM0 to XMM7)
  • MXCSR register
  • Control registers (CR0, CR2, CR3, CR4)
  • System table pointer registers (GDTR, LDTR, IDTR, task register)
  • Debug registers (DR0, DR1, DR2, DR3, DR6, DR7)
  • Debug control MSR (IA32_DEBUGCTL)
  • Machine check global status MSR (IA32_MCG_STATUS)
  • Machine check capability MSR (IA32_MCG_CAP)
  • Thermal clock modulation and ACPI power management control MSRs
  • Time stamp counter MSRs
  • Most of the other MSR registers including Page Attribute Table (PAT)
  • Local APIC registers

Here are the features shared by the two logical processors :-

  • IA32_MISC_ENABLE MSR
  • Memory type range registers (MTRRs)

And the following are features that can be duplicated or shared according to requirements :-

  • Machine check architecture (MCA) MSRs
  • Performance monitoring control and counter MSRs

The Intel Hyper-Threading Technology is only supported by certain Intel processors, from the Intel Pentium 4 onwards. Please note that for it to work, you should have the following :

  • an Intel processor that supports Hyper-Threading
  • a motherboard with a chipset and BIOS that support Hyper-Threading
  • an operating system which supports Hyper-Threading (Microsoft Windows XP or Linux 2.4.x, or better)

Since it behaves like two separate processors with their own APICs, you should also enable APIC Function in the BIOS, which is required for multi-processing.

It is highly recommended that you enable CPU Hyper-Threading for improved processor performance.

 

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: