a 64 kbytes isl tage predictor n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
A 64 Kbytes ISL-TAGE predictor PowerPoint Presentation
Download Presentation
A 64 Kbytes ISL-TAGE predictor

Loading in 2 Seconds...

play fullscreen
1 / 22

A 64 Kbytes ISL-TAGE predictor - PowerPoint PPT Presentation


  • 275 Views
  • Uploaded on

A 64 Kbytes ISL-TAGE predictor. André Seznec INRIA/IRISA. Build on L-TAGE. L-TAGE: TAGE + loop predictor ISL-TAGE: TAGE + loop predictor + Statistical Corrector Predictor + Immediate Update Mimicker + tricks to try to win. 500-800 MPPKI range.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'A 64 Kbytes ISL-TAGE predictor' - fisk


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
a 64 kbytes isl tage predictor

A 64 Kbytes ISL-TAGE predictor

André Seznec

INRIA/IRISA

build on l tage
Build on L-TAGE
  • L-TAGE:
    • TAGE + looppredictor
  • ISL-TAGE:
    • TAGE + looppredictor

+ Statistical Corrector Predictor

+Immediate Update Mimicker

+ tricks to try to win

500-800 MPPKI range

tage multiple tables global history predictor
TAGE: multiple tables, global history predictor

The set of history lengths forms a geometric series

Capture correlation

on very long histories

{0, 2, 4, 8, 16, 32, 64, 128}

most of the storage

for short history !!

What is important:L(i)-L(i-1) is drastically increasing

tage geometric history length ppm like optimized update policy
TAGEGeometric history length + PPM-like + optimized update policy

h[0:L1]

pc

pc

pc

h[0:L2]

pc

h[0:L3]

tag

tag

tag

ctr

ctr

ctr

u

u

u

1

1

1

1

1

1

1

=?

=?

=?

1

hash

hash

hash

hash

hash

hash

1

prediction

Tagless base

predictor

slide5

Miss

Hit

Pred

=?

=?

1

1

1

1

1

1

1

=?

1

Hit

1

Altpred

prediction computation
Prediction computation
  • General case:
    • Longest matching component provides the prediction
  • Special case:
    • Many mispredictions on newly allocated entries: weak Ctr

On many applications, Altpred more accuratethan Pred

    • Property dynamically monitored through a single 4-bit counter
a tagged table entry
A tagged table entry

Tag

U

Ctr

  • Ctr: 3-bit prediction counter
  • U: 1 useful bit
    • Was the entry recently useful ?
  • Tag: partial tag
allocate entries on mispredictions
Allocate entries on mispredictions
  • Allocateentries in longer historylength tables
    • On tables with U unset
  • Set Ctr to Weak and U to 0
  • HUGE STORAGE BUDGET:
    • Up to 4 entries allocated in different tables
      • Fastwarming
managing the u seful bit
Managing the (U)seful bit
  • Setting whenavoids a misprediction
      • (Pred = taken) & (Alt ≠ taken)
  • Global reset when « difficulties » to allocate
    • Dynamically monitor if more failuresthansuccesses on allocations

7 MPPKI+

29 Kbits

the loop predictor
The looppredictor
  • Predictloopwith constant number of iterations:
    • 64 entries
    • lessthan 6 bytes per entry
    • Capture somebehaviorthat TAGE is not able

12 MPPKI

the immediate update mimicker
The Immediate Update Mimicker
  • Issue:
    • Somemispredictions due to late updates at retirement
  • Immediate Update Mimicker:
    • Try to catch these cases
the immediate update mimicker1
The Immediate Update Mimicker

Fetch

P(rediction) or (E)xecuted

T(able)

A(ddress in the table)

P

T

A

E

T

A

E

T

A

P

T

A

P

T

A

P

T

A

P

T

A

P

T

A

P

T

A

P

T

A

E

T

A

P

T

A

P

T

A

E

T

A

P

T

A

P

T

A

P

T

A

P

T

A

P

T

A

P

T

A

P

T

A

P

T

A

P

T

A

P

T

A

P

T

A

E

T

A

Misprediction

7 MPPKI

Same table, same entry

the statistical corrector predictor
The Statistical Corrector predictor
  • Branches withpoorcorrelationwithhistory:
    • Sometimesbetterpredicted by a single wide PC indexedcounterthan by TAGE
  • More generally, track cases suchthat:
    • « In this case (PC, history, prediction),

TAGE islikely (>50 %) to mispredict »

the statistical corrector predictor1
The Statistical Corrector Predictor

Main

(TAGE +IUM)

Predictor

Prediction + counter value

Stat.

Corr.

H

A

LoopPredictor

slide15

H

A

Pred

+

counter value

Main

(TAGE +IUM)

Predictor

Stat

Cor.

H

A

Loop

the statistical corrector predictor for the contest
The Statistical Corrector Predictor for the contest
  • Derivedfrom the GEHL predictor:
    • 5 (logic) tables sharing 4K 6-bit entries
    • + use TAGE prediction in the index
    • + values of the provider counter
  • Use predictionwhen

|sum| > dynamicthreshold

15 MPPKI

dimensioning tage
Dimensioning TAGE
  • Hugestorage budget:
    • 15 tagged tables + the bimodal
    • Different tag width
    • All branches + path
    • (6,2000) history
    • + extra bits for indirect and calls

5 MPPKI

for the competition interleaving
For the competition: interleaving

h[0,L1]

h[0,L1]

Xbar

Xbar

=?

=?

=?

6 MPPKI

prediction

for the competition
For the competition

Guidedselection of the best set of historylengths:

0, 3, 8, 12, 17, 33, 35, 67, 97, 138, 195, 330, 517, 1193, 1741, 1930

3 MPPKI

all these efforts for 43 mppki
All these efforts for 43 MPPKI

MPPKI

+10

16KB ISL-TAGE

Ref

64KB CBP2 L-TAGE

-24

32KB ISL-TAGE

-43

64KB ISL-TAGE

-113

-49

LIMIT ISL-TAGE

LIMIT CBP2 L-TAGE

missed opportunity in the submitted predictor
Missedopportunity (in the submittedpredictor)
  • StatisticalPredictor
    • Couldaccomodate local history

16 MPPKI

And looppredictorbecomes (almost) useless

summary
Summary
  • ISL-TAGE built on top of TAGE:
    • Looppredictor
    • Immediate Update Mimicker
      • Uses information that must bepropagated
    • Statistical Corrector Predictor
      • Opens opportunity to uses local history
    • + unrealisticinterleaving