hyperthreading ● improves processor performance under certain workloads by providing useful work...

7
HyperThreading Improves processor performance under certain workloads by providing useful work for execution units that would otherwise be idle Duplicates sections of the processor those that store the architectural state does not duplicate main execution resources allows a physical processor to be two ”logical” processors can schedule two threads or processes simultaneously

Upload: laureen-andrews

Post on 19-Jan-2016

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: HyperThreading ● Improves processor performance under certain workloads by providing useful work for execution units that would otherwise be idle ● Duplicates

HyperThreading

● Improves processor performance under certain workloads by providing useful work for execution units that would otherwise be idle

● Duplicates sections of the processor

– those that store the architectural state

– does not duplicate main execution resources

● allows a physical processor to be two ”logical” processors

– can schedule two threads or processes simultaneously

Page 2: HyperThreading ● Improves processor performance under certain workloads by providing useful work for execution units that would otherwise be idle ● Duplicates

When processor stalls

● as a result of

– cache miss

– branch misprediction

– data dependency

● processor may use those execution resources to

execute other processes or threads

Page 3: HyperThreading ● Improves processor performance under certain workloads by providing useful work for execution units that would otherwise be idle ● Duplicates

Architectural State

● Control Registers

– instruction flag registers

– interrupt mask registers

– memory management registers

– status registers

● General purpose registers (AX, BX, CX, DX, ...)

Page 4: HyperThreading ● Improves processor performance under certain workloads by providing useful work for execution units that would otherwise be idle ● Duplicates

Improved Performance

● Uses 5% of the die area over the “normal”

processor

● Performance improvements of up to 30%

Page 5: HyperThreading ● Improves processor performance under certain workloads by providing useful work for execution units that would otherwise be idle ● Duplicates

Dual Core

● One which combines two or more independent

processors into a single package

● Contains two independent microprocessors

● Allows thread-level parallelism w/o including

multiple microprocessors in separate physical

packages

● CMP – chip level multiprocessing

Page 6: HyperThreading ● Improves processor performance under certain workloads by providing useful work for execution units that would otherwise be idle ● Duplicates

Advantages vs SMP

● Cache coherency

– Can operate at a much higher clock rate than is

possible if the signals have to travel off-chip

● Less space required

● Less power usage

Page 7: HyperThreading ● Improves processor performance under certain workloads by providing useful work for execution units that would otherwise be idle ● Duplicates

Disadvantages

● Requires OS support

● Requires threaded applications

● Integration of multi-core chip drives production

yields down, they are more difficult to manage

thermally than lower-density single-chiop