scieee Science in your language
[en] (orig)

On reducing register pressure and energy in multiple-banked register files

Abstract

The storage for speculative values in superscalar processors is one of the main sources of complexity and power dissipation. We present a novel technique to reduce register requirements as well as their dynamic and static power dissipation that is based on delaying the dispatch of instructions while minimizing its impact on performance. The proposed technique outperforms previous schemes in both performance and power savings. With only 1.77% IPC loss, the mechanism achieves more than 13% dynamic and 15% static extra power savings in the integer rename buffers and more than 9% dynamic and 10% static extra power savings in the FP rename buffers. Significant power savings are also achieved if the processor uses a physical register file for both committed and noncommitted values instead of rename buffers. Additionally the register requirements are reduced by more than 18% and 13% for integer and FP programs respectively.

Read accessible full text

On reducing register pressure and energy in multiple-banked register files

Author: Abella Ferrer, Jaume,González Colás, Antonio María
Publisher: Institute of Electrical and Electronics Engineers (IEEE)
Year: 2003
DOI: 10.1109/ICCD.2003.1240867
Source: https://upcommons.upc.edu/bitstream/2117/100577/1/01240867.pdf
On Reducing Regis e P essu e and Ene gy in
Mul iple-Banked Regis e Files
Jaume Abella*, An onio González*+
*Compu e A chi ec u e Depa men
Uni e si a Poli ècnica de Ca alunya
Ba celona (Spain)
[email p o ec ed]
+In el Ba celona Resea ch Cen e
In el Labs, Uni e si a Poli ècnica de Ca alunya
Ba celona (Spain)
an oni[email p o ec ed]pc.es
Abs ac
The s o age o specula i e alues in supe scala
p ocesso s is one o he main sou ces o complexi y and
powe dissipa ion. In his pape , we p esen a no el
echnique o educe egis e equi emen s as well as hei
dynamic and s a ic powe dissipa ion ha is based on
delaying he dispa ch o ins uc ions while minimizing i s
impac on pe o mance. The p oposed echnique ou pe o ms
p e ious schemes in bo h pe o mance and powe sa ings.
Wi h only 1.77% IPC loss, he mechanism achie es mo e
han 13% dynamic and 15% s a ic ex a powe sa ings in he
in ege ename bu e s and mo e han 9% dynamic and 10%
s a ic ex a powe sa ings in he FP ename bu e s.
Signi ican powe sa ings a e also achie ed i he p ocesso
uses a physical egis e ile o bo h commi ed and non-
commi ed alues ins ead o ename bu e s. Addi ionally he
egis e equi emen s a e educed by mo e han 18% and
13% o in ege and FP p og ams espec i ely.
1. In oduc ion
Powe dissipa ion has become a c i ical issue o bo h
high pe o mance and mobile p ocesso s. Dynamic powe
dissipa ion is he dominan ac o nowadays, bu s a ic powe
will become inc easingly signi ican in upcoming p ocesso s.
While dynamic powe is di ec ly ela ed o he ac i i y o he
ci cui s, s a ic powe depends on he amoun o powe ed-on
ansis o s and hei physical cha ac e is ics. The
managemen o specula i e egis e alues is one o he main
sou ces o ene gy dissipa ion in cu en supe scala
mic op ocesso s [6]. Addi ionally, his s uc u e is one o he
p ocesso ho spo s. Thus, educing powe consump ion in
his powe hung y s uc u e is c i ical no only om he
ene gy s andpoin bu om he empe a u e s andpoin .
Some banks o hese s uc u es can be u ned-o i hey
a e no used, and hus, some powe is sa ed. Some o hem
may be also u ned-o i hey may be used wi hou
con ibu ing signi ican ly o imp o e pe o mance.
Li e a u e on powe educ ion using adap i e schemes is
e y ex ensi e. Among hem, we could poin ou some
schemes o educe powe and complexi y [1][9][10][12][16].
Some o he au ho s ha e in es iga ed how o educe he
powe and complexi y o he egis e iles. C uz e . al. [5]
p oposed a mul ile el egis e ile o ganiza ion o low
complexi y and as access ime o he egis e s. Zyuban and
Kogge [17] s udied he complexi y o a cen alized egis e
ile and p oposed a scheme o dis ibu e i . Ou p oposal is
o hogonal o hese wo ks so hey can be easily combined.
Di e en app oaches ha e been ecen ly p oposed in
o de o educe he dynamic powe o he issue queue [7][4].
Folegnani and González [7] p oposed an issue queue design
whe e ene gy consump ion is e ec i ely educed using a
dynamic esizing mechanism o he issue queue.
In his wo k, we p opose an adap i e mic oa chi ec u e
ha achie es signi ican dynamic and s a ic powe sa ings in
he egis e ile, a he expense o a e y small pe o mance
loss. Ou p oposal is based on obse ing how much ime
ins uc ions spend in he eo de bu e and he issue queue,
and aking esizing decisions based on hese obse a ions.
E en i he ins uc ions a e eady o be dispa ched, i i is
expec ed ha hey would ha dly con ibu e o imp o e
pe o mance, hey a e no dispa ched. We compa e his
scheme wi h he app oach in [7], and show ha he p oposed
echnique p o ides signi ican ad an ages.
The es o he pape is o ganized as ollows. Sec ion 2
desc ibes he baseline o ganiza ion o he issue queue,
ename bu e s, egis e ile and eo de bu e . Sec ion 3
desc ibes he p oposed echnique and he mechanism used
o compa ison pu poses. Sec ion 4 e alua es he
pe o mance o he p oposed app oach. Finally, sec ion 5
summa izes he main conclusions o his wo k.
2. Baseline mic oa chi ec u e
In his sec ion we desc ibe he baseline mic oa chi ec u e,
wi h special emphasis on he s uc u es ha a e he a ge o
his wo k: ename bu e s, egis e ile, issue queue and
eo de bu e .
2.1. P ocesso
Two di e en o ganiza ions o he s o age o specula i e
alues ha e been s udied. The i s one is simila o ha o
he Alpha 21264 [6] and Pen ium IV [14]. In his case,
specula i e and commi ed alues a e s o ed in a cen alized
egis e ile. The second one is simila o ha o he HP
PA8700 [8]. In his case, commi ed alues a e s o ed in an
P oceedings o he 21s In e na ional Con e ence on Compu e Design (ICCD’03)
1063-6404/03 $ 17.00 © 2003 IEEE
a chi ec u al egis e ile, whe eas specula i e alues a e
s o ed in ename bu e s un il commi . In ege and FP alues
a e kep in sepa a ed iles o bo h cases. The e a e wo
egis e iles o he i s o ganiza ion and wo se s o ename
bu e s o he second one. In he es o he pape he
o ganiza ion based on a cen alized egis e ile will be
e e ed o as RegF whe eas he one based on ename bu e s
will be e e ed o as RenB.
2.2. Regis e iles and ename bu e s
This sec ion desc ibes he implemen a ion assumed o
he egis e ile, bu a simila implemen a ion has been
assumed o he ename bu e s. In ege and FP egis e iles
a e iden ical. A egis e ile is spli in o banks (8 en ies pe
bank in ou expe imen s). In o de o educe he bank access
ime, he bank selec ion logic and he decoding o he en y
o be accessed a e done in pa allel.
Figu e 1 shows he scheme o a ead ope a ion. One
en y o each bank is ead, and he ou pu logic selec s he
eques ed egis e among hose. I can be obse ed ha his
scheme o e laps he bank selec ion wi h he decoding and
eading o each bank. Figu e 2 illus a es a w i e ope a ion.
The wo dlines ha selec he eques ed egis e o e e y
bank a e ga ed by he bank selec ion logic. In his case, he
bank selec ion is o e lapped wi h jus he wo dline decoding
because he w i e mus be pe o med only in he p ope bank.
Figu e 1. Scheme o a ead ope a ion
Figu e 2. Scheme o a w i e ope a ion
This implemen a ion o he egis e ile educes hei
access ime a he expense o inc easing no ably hei
dynamic ene gy consump ion. I he access ime o his
s uc u e is no c i ical, a sequen ial decoding scheme could
be conside ed.
In his wo k, he pa allel implemen a ion o he mul iple-
banked egis e ile has been assumed o all he compa ed
mechanisms, including he baseline. This decision is jus i ied
by he es ima ed access ime o bo h schemes. Fo his
pu pose, we used CACTI 3.0 [13], wi h a con igu a ion o 16
banks, 8 egis e s pe bank, 64-bi da a wid h, 0.10 Pm
echnology, 16 ead and 8 w i e po s. Table 1 shows he
delays ob ained o each componen o he egis e ile.
Table 1. Delay and ene gy o he di e en
componen s o a mul iple-banked egis e ile design
Componen Abb e . delay (ps) ene gy (pJ)
Add ess ou ing add 84 1.3
Decode (4 o 16) 4 o16 232 3.8
Decode (3 o 8) 3 o8 203 1.5 pe deco
Wo dline + bi line wlbl 134 5.1 pe bank
Da a o/ om bank da a 104 10.8 pe bank
Ou d i e ou 106 27.6
Table 2 shows he delay o he c i ical pa h o bo h a ead
and a w i e ope a ion in bo h schemes. The able shows ha
he pa allel scheme educes he access ime by 27% o ead
ope a ions and 29% o w i e ope a ions wi h espec o he
sequen ial scheme. #BanksOn co esponds o he numbe o
u ned on banks a he ope a ion ime.
Table 2. Delays and ene gy o ead/w i e ope a ions
Seq. scheme C i ical pa h Delay (ps) Ene gy (pJ)
Read add+4 o16+3 o8+wlbl
+da a+ou
863 50.1
W i e add+4 o16+3 o8+wlbl 653 22.5
Pa allel scheme C i ical pa h Delay (ps) Ene gy (pJ)
Read add+3 o8+wlbl+da a+
ou
631 32.7+17.4 x
#BanksOn
W i e 4 o16+c l_wo dlines
(=add)+wlbl
450 10.2+12.3 x
#BanksOn
Tu ning o unused banks can sa e s a ic powe o bo h
schemes and dynamic powe o he pa allel one. A gi en
bank is u ned on as soon as a leas one o i s egis e s is
assigned o an ins uc ion as i s des ina ion ope and. A gi en
bank is u ned o when none o i s egis e s is being used.
This scheme can be easily implemen ed adding a bi
(BusyBi ) o e e y egis e . This bi is se when a egis e is
assigned o an ins uc ion and is ese when he ins uc ion
commi s and ees he p e ious mapping o i s des ina ion
egis e . The bank enable/disable signal is a NOR unc ion
o i s egis e s’ BusyBi s.
In o de o maximize he numbe o banks ha a e u ned
o , when a ee egis e is eques ed, he one wi h he lowes
bank iden i ie is chosen so ha he ac i i y in he egis e
ile is concen a ed on he banks wi h lowe iden i ie s.
2.3. Issue queue and eo de bu e
The assumed eo de bu e and issue queue ha e jus one
di e ence wi h espec o con en ional ones: hei occupancy
can be limi ed dynamically. This ea u e is used o con ol
he numbe o in- ligh ins uc ions and hus, o con ol he
p essu e on he egis e iles. As p e ious wo k [7][4], no
compac ion mechanism o he issue queue has been
assumed since compac ion esul s in a signi ican amoun o
ex a ene gy consump ion e en i i con ibu es o
pe o mance.
3. Adap i e schemes
This sec ion desc ibes he p oposed mechanism and he
mechanism used o compa ison pu poses[7].
a0
a0
a1
a1
a4 a3 a2
8 banks wi h 4 en ies pe bank. Reading egis e #30 (11110b)
8 banks wi h 4 en ies pe bank. W i ing egis e #30 (11110b)
a1
a0
a1
a0
a4 a3 a2
P oceedings o he 21s In e na ional Con e ence on Compu e Design (ICCD’03)
1063-6404/03 $ 17.00 © 2003 IEEE
3.1. P oposed mechanism
3.1.1. Unde lying concep s
Supe scala p ocesso s y o keep ull bo h he eo de
bu e and he issue queue. In gene al, dispa ching
ins uc ions as soon as possible is bene icial o pe o mance,
bu no o powe . In many cases ins uc ions a e held in he
issue queue and ha e a des ina ion egis e assigned o some
cycles be o e hey a e inally issued. F om he pe o mance
s andpoin , i is desi able no o delay he issuing o any
ins uc ion. F om he powe s andpoin , i is desi able ha
ins uc ions emain in he issue queue o he minimum
numbe o cycles, since educing i s occupancy allows
educing he numbe o egis e s equi ed. Ou p oposal ies
o achie e hese objec i es by means o a ious heu is ics:
x The i s heu is ic ies o educe he ime ha ins uc ions
spend wai ing o being issued in he issue queue. I i is
obse ed ha ins uc ions wai oo long, he ins uc ion
window size ( eo de bu e size) is educed and hus, he
dispa ch o ins uc ions is delayed. Reducing he numbe
o en ies in he eo de bu e educes he numbe o
egis e s in use.
x The second heu is ic ies o p e en si ua ions in which
he limi ed ins uc ion window size is ha ming
pe o mance. E en i ins uc ions spend oo much ime in
he issue queue, i is desi able o be less agg essi e when
he e a e ew ins uc ions in he eo de bu e .
x Finally, he e a e some e en s ha equi e an immedia e
ac ion. In pa icula , L2 da a cache misses, which ha e a
e y long la ency, s all he commi o ins uc ions o
many cycles. Thus, in case o an L2 miss i is in e es ing
o inc ease he ins uc ion window size o allow he
p ocesso o p ocess mo e ins uc ions while he miss is
being se iced.
Deciding when ins uc ions spend oo long in he issue
queue is one o he icky pa s o he mechanism. We a e
in e es ed in inding ou he minimum numbe o cycles ha
he ins uc ions equi e o spend in he issue queue wi hou
losing signi ican IPC. In o de o gain some insigh , we ha e
expe imen ally obse ed he beha io o di e en p og ams
(7 benchma ks om SPEC2000) o sho in e als o ime.
I we jus conside he in e als o ime wi h simila IPC, we
can obse e some ends: a) he minimum ime ha
ins uc ions spend in he issue queue and he ime ha hey
spend in he eo de bu e a e co ela ed, b) his co ela ion
is no linea : he longe he ime in he eo de bu e , he
longe he ime in he issue queue bu he a io be ween he
la e and he o me dec eases as he ime spen in he
eo de bu e inc eases.
3.1.2. Implemen a ion o he mechanism
The i s and second heu is ics ou lined abo e a e based
on measu ing he numbe o cycles ha ins uc ions spend in
he issue queue and in he eo de bu e , as discussed in he
p e ious sec ion. Howe e , an exac compu a ion o hese
pa ame e s may be qui e expensi e in ha dwa e (e.g. ime
s amps o each en y) and consume a non-negligible amoun
o ene gy. Acco ding o Li le’s law [15] o queuing sys ems
in which a s eady-s a e dis ibu ion exis s, he ollowing
ela ion holds:
Lq =
O
Wq
whe e Lq,
O
and Wq s and o he a e age queue size, he
a e age numbe o a i als pe ime uni and he a e age
ime ha a cus ome spends in he queue. In he issue queue
and he eo de bu e , he a i al a es (
O
) a e exac ly he
same. Since we a e in e es ed in he a io be ween ime in he
issue queue and ime in he eo de bu e , ins ead o
coun ing how many cycles (Wq) e e y commi ed ins uc ion
spends in he issue queue and he eo de bu e , we will
coun how many ins uc ions (Lq) a e in hese s uc u es
e e y cycle. This app oxima ion implies ha all ins uc ions
ha a i e o he queues bu do no commi a e also coun ed.
We ha e obse ed ha he e ec o conside ing o no hese
ins uc ions does no p o ide signi ican di e ences.
We ha e expe imen ally con i med ha his ela ion
be ween queue size and wai ing ime holds o he 7
benchma ks men ioned in he p e ious sec ion. We ha e
obse ed ha he a e age numbe o cycles spen in he issue
queue and he a e age issue queue occupancy ollows a nea -
linea ela ion, and he same holds o he eo de bu e .
Thus, we can conclude ha using occupancy a ios ins ead o
ime a ios does no esul in signi ican di e ences.
In o de o le e age he ela ion be ween he ime spen in
he issue queue and he ime spen in he eo de bu e , he
p oposed mechanism uses he a io be ween bo h
occupancies (IQ occupancy / ROB occupancy) o ake
esizing decisions. I his alue is highe han a gi en
h eshold, he window size is dec eased by N ins uc ions (8
ins uc ions in ou expe imen s), and i i is lowe han
ano he h eshold, he window size is inc eased by N
ins uc ions.
Figu e 3. Heu is ic o esize he eo de bu e and he
issue queue
These h esholds a e dynamically adap ed acco ding o
he obse a ions made in he abo e sec ion, ha is, hey
depend on he eo de bu e size. Figu e 3 de ails he
app oach o esizing he eo de bu e and he issue queue.
ROB_size s ands o he physical size o he eo de bu e
(128 ins uc ions in ou e alua ion), and ROB_dyn_size
s ands o he maximum numbe o allowed ins uc ions in
he eo de bu e a a gi en ime (simila de ini ion applies
(1) THRESHOLD_LOW = 1 – ROB_dynamic_size / ROB_size
(1) THRESHOLD_HIGH = THRESHOLD_LOW + 1/8
(2) FRACTION = #ins _in_IQ / #ins _in_ROB
(3) i (FRACTION > THRESHOLD_HIGH)
(3) ROB_dyn_size = max(ROB_dyn_size–8, 32)
(3) else i (FRACTION < THRESHOLD_LOW)
(3) ROB_dyn_size = min(ROB_dyn_size+8, ROB_size)
(4) i (L2 miss du ing he pe iod)
(4) ROB_dyn_size = min(ROB_dyn_size+8, ROB_size)
(5) i (#cycles_disp_s all > IQ_THRESHOLD_HIGH)
(5) IQ_dyn_size = min(IQ_dyn_size+8, IQ_size)
(5) else i (#cycles_disp_s all < IQ_THRESHOLD_LOW)
(5) IQ_dyn_size = max(IQ_dyn_size–8, 8)
P oceedings o he 21s In e na ional Con e ence on Compu e Design (ICCD’03)
1063-6404/03 $ 17.00 © 2003 IEEE
o IQ_size and IQ_dyn_size). In o de o a oid an ex emely
small eo de bu e , he ollowing cons ain is applied:
ROB_size/4 dROB_dyn_size dROB_size. The h esholds a e
se acco ding o (1). The ac ion o ime ha ins uc ions
spend in he issue queue e sus he ime ha hey spend in
he eo de bu e is app oxima ed as (2). This pa ame e is
a e aged o each in e al o ime. A he end o each
in e al, esizing decisions a e aken acco ding o he c i e ia
desc ibed in (3): he eo de bu e dynamic size is inc eased
by 8 ins uc ions, dec eased by 8 ins uc ions, o le
unchanged depending on he alue o he FRACTION
pa ame e and he h esholds.
Finally he hi d heu is ic in he abo e sec ion is
implemen ed as ollows. Whene e he e is an L2 cache
miss, he eo de bu e size is inc eased, as (4) in igu e 3
shows. In heo y only da a misses should be conside ed bu
o he sake o simplici y, we do no dis inguish be ween
ins uc ion and da a misses since he majo i y o L2 misses
co espond o da a.
Regis e ile banks (o ename bu e s) a e u ned o
when hey a e no busy as explained in sec ion 2.2. Issue
queue occupancy is u he con olled by a mechanism ha
moni o s how many cycles he dispa ch is s alled due o
una ailable en ies in he issue queue. As de ailed in sec ion
(5) o igu e 3, i s alls a e oo equen , he issue queue size
is augmen ed (#cycles_disp_s all s ands o he numbe o
cycles ha he dispa ch is s alled because ins uc ions canno
be placed in he issue queue). I s alls a e e y a e, he issue
queue size is dec eased. This simple mechanism along wi h
he adap i e mechanism o limi he eo de bu e
occupancy achie es a signi ican egis e ile p essu e
educ ion wi h e y small pe o mance loss. In ou
expe imen s, o an in e al size o 128 cycles, di e en
alues o he issue queue h esholds we e e alua ed (2, 4, 8,
16, 32, 64) ob aining signi ican powe sa ings and small
pe o mance deg ada ion o hese pai s o alues: <16,32>
and <16,64>. To simpli y he implemen a ion and a oid
doing some di isions and mul iplica ions, in ege a i hme ic
is used ins ead o FP one. In pa icula , he h esholds a e
scaled as ollows:
THRESHOLD_LOW = ROB_size – ROB_dyn_size
THRESHOLD_HIGH = THRESHOLD_LOW + ROB_size/8
In ou expe imen s we use a 128 en y eo de bu e , so
THRESHOLD_HIGH co esponds o THRESHOLD_LOW +
16. Th esholds a e compa ed wi h FRACTION so his
pa ame e is also scaled as ollows:
FRACTION = ROB_size x #ins _in_IQ / #ins _in_ROB
The mul iplica ion in he abo e exp ession is i ial o
implemen since he eo de bu e size is a powe o 2. Fo
he di ision, he di idend has 11 bi s and he di iso has 7
bi s, assuming an in e al o 128 cycles. This equi es a
a he small ha dwa e. In ac , an i e a i e di ide can be
used ins ead o a pa allel one, since delaying he esizing
decisions by a ew cycles does no ha e any p ac ical impac .
The ene gy consump ion o he addi ional ha dwa e is
negligible because only h ee small coun e s a e upda ed
e e y cycle and he es o he s uc u es wo k only once
e e y in e al (128 cycles in ou expe imen s). Assuming
ha he di ide is implemen ed as a adix 4 di ide (2 bi s o
he quo ien a e compu ed each cycle), he o al ha dwa e
equi ed is one mul iplexo and less han 20 uni s (adde s,
inc emen e s and compa a o s) whose inpu s always ha e 11
bi s o less. We ha e expe imen ally e i ied ha delaying
he esizing o he eo de bu e by 2 o 3 cycles o allow o
an i e a i e di iso has negligible impac on pe o mance.
3.2. Mechanism used o compa ison
The p oposed mechanism has been compa ed wi h he
mechanism p oposed in [7], which will be e e ed o as
FoGo in he es o he pape . The issue queue has he same
s uc u e o bo h he p oposed mechanism and he
mechanism used o compa ison, bu he esizing schemes
a e di e en .
FoGo educes powe consump ion in he egis e iles and
ename bu e s by dynamically esizing he issue queue. The
mechanism moni o s he pe o mance con ibu ion o he
younges bank o he issue queue (8 ins uc ions in hei
expe imen s) and measu es how much hese en ies
con ibu e o he IPC. I he con ibu ion is below a
h eshold, he issue queue size is educed by one bank. On
he o he hand, he size o he queue is inc eased
pe iodically. In pa icula , his mechanism coun s he numbe
o commi ed ins uc ions ha we e issued om he 8
younges en ies in he issue queue. I he e a e less han N
ins uc ions issued om he younges pa du ing an in e al
o ime, he issue queue size is educed. Thei expe imen s
showed ha using an in e al o 1000 cycles and a h eshold
o 25 ins uc ions educes signi ican ly he issue queue
occupancy wi h a e y small pe o mance loss. E e y 5
in e als, he issue queue size is inc eased by one bank.
Fo he compa ison p esen ed below, we ha e chosen he
con igu a ion wi h he pa ame e s ha hey epo as he
mo e app op ia e ones (FoGo1000) and he same pa ame e s
bu wi h an in e al o 128 cycles – he same as he one used
by he p oposed mechanism – wi h a co esponding
h eshold o 3 ins uc ions issued om he younges pa
(FoGo128).
4. Pe o mance e alua ion
In his sec ion we p esen pe o mance and powe esul s
o he p oposed mechanism, and compa e i wi h he
echnique p oposed in [7].
4.1. Expe imen al amewo k
Powe and pe o mance esul s a e ob ained h ough
Wa ch [2], which is an a chi ec u e-le el powe and
pe o mance simula o based on SimpleScala [3]. Some
enhancemen s a e he sepa a ion o he eo de bu e and he
issue queue, and he ex ension o model he po s o he
egis e iles and ename bu e s. The model equi ed o
mul iple-banked s uc u es has been ob ained om CACTI
3.0 [13], which is a iming, powe and a ea model o banked
cache memo ies. The ollowing able desc ibes he assumed
p ocesso con igu a ion.
P oceedings o he 21s In e na ional Con e ence on Compu e Design (ICCD’03)
1063-6404/03 $ 17.00 © 2003 IEEE
Table 3. P ocesso con igu a ion
Fe ch, decode, issue, commi wid h: 8 ins uc ions
B anch p ed.: Hyb id 2K Gsha e, 2K bimodal, 1K selec o
BTB: 2048 en ies, 4-way
L1 Icache: 64KB, 2-way, 32 by e line (1 cycle)
L1 Dcache: 64KB, 4-way, 32 by e line, 4 R/W po s (2 cycles)
L2 uni ied cache: 512KB, 4-way, 64 by e line (10 cycles hi ,
50 cycles miss, 2 cycles in e chunk)
Fe ch queue: 64 en ies IQ: 80 en ies ROB: 128 en ies
RegF mic oa chi ec u e:
INT egis e s: 112 (14 banks x 8), 16R+8W po s
FP egis e s: same as INT egis e s
RenB mic oa chi ec u e:
INT ename bu e s: 80 (10 banks x 8), 16R+8W po s
FP ename bu e s: same as INT ename bu e s
INT unc ional uni s: 6 ALU, 3 mul /di
FP unc ional uni s: 4 ALU, 2 mul /di
Technology: 0.10
P
m
Fo his s udy we ha e selec ed he whole Spec2000
benchma k sui e [18] wi h he e inpu da a se . We ha e
simula ed 100 million o ins uc ions o each benchma k
a e skipping he ini ializa ion pa . The benchma ks we e
compiled wi h he Compaq/Alpha compile wi h –O4 –
non_sha ed lags.
4.2. In e al leng h
In o de o choose a sui able in e al o esize he
s uc u es, we ha e done some expe imen s. Figu e 4 shows
he IPC wi h espec o he baseline o di e en in e al
leng hs using 3 benchma ks om SpecINT2000 (gap, gzip,
wol ) and 3 om SpecFP2000 (ammp, applu, a ). I can be
seen in igu e 4 ha in gene al, longe in e als imp o e
pe o mance. Figu e 5 shows he eo de bu e occupancy
educ ion o di e en in e al leng hs. I can be obse ed
ha sho e in e als achie e highe occupancy educ ion.
Highe occupancy educ ion will ansla e in o be e
oppo uni ies o sa e powe and educe egis e p essu e.
Figu e 4. IPC o di e en in e al leng hs
Figu e 5. Reo de bu e occupancy educ ion o
di e en in e al leng hs
Figu es 4 and 5 show ha a 32-cycle in e al ha dly
educes he eo de bu e occupancy wi h espec o a 128-
cycle in e al whe eas i esul s in sligh ly highe
pe o mance deg ada ion. In addi ion, he sho e he
in e al, he highe he ene gy o e head o esizing he
s uc u es. The 512-cycle in e al is sligh ly be e in e ms
o pe o mance bu i is no so e ec i e o educe he eo de
bu e occupancy. We can conclude ha he 128-cycle
in e al achie es he bes adeo be ween powe and
pe o mance.
4.3. Pe o mance and powe esul s
The pe o mance e alua ion has been done compa ing
wo e sions o he p oposed echnique, wo e sions o
FoGo,FoGo128 and FoGo1000 as desc ibed abo e, and a
baseline wi h no adap i e s uc u es. The wo e sions o ou
echnique co espond o di e en h eshold alues o he
IQ_THRESHOLD_HIGH (32 o 64). We will e e o hem
as IqRob32 and IqRob64 espec i ely in he es o he pape .
The baseline a chi ec u e does no esize he issue queue no
he eo de bu e bu includes he mechanisms ha we ha e
assumed o IqRob and FoGo o u n o unused egis e ile
o ename bu e banks.
4.3.1. Pe o mance
Figu e 6 shows he IPC loss o he di e en mechanisms.
IqRob32 and IqRob64 ha e be e pe o mance han
FoGo1000 and FoGo128 espec i ely o he SpecINT2000
and he whole Spec2000, and achie e simila esul s o he
SpecFP2000. On a e age, IqRob32 loses less han 2% in IPC
and IqRob64 loses less han 3.5%. FoGo educes he size o
he issue queue when he IPC con ibu ion o he younges
bank is below a ixed h eshold. This h eshold basically
de e mines he loss o IPC ha he mechanism may cause
and hus, i has a bigge impac o p og ams wi h lowe IPC,
such as some o he SpecINT2000.
Figu e 6. IPC loss o di e en echniques
4.3.2. Reo de bu e and issue queue
IqRob achie es lowe eo de bu e and issue queue
occupancies han FoGo. Ha ing ewe ins uc ions in hese
s uc u es implies ha ewe egis e s a e used so mo e
powe is sa ed. IqRob is signi ican ly mo e e ec i e han
FoGo, especially o in ege applica ions.
Table 4 shows he e ec i eness o IqRob o educing he
issue queue and eo de bu e sizes. On a e age, he
IPC wi h espec o baseline
90%
92%
94%
96%
98%
100%
32 128 512
in e al leng h (cycles)
ammp
applu
a
gap
gzip
wol
Reo de bu e occupancy educ ion
0%
5%
10%
15%
20%
25%
30%
32 128 512
in e al leng h (cycles)
ammp
applu
a
gap
gzip
wol
IPC loss s. baseline
0,0%
0,5%
1,0%
1,5%
2,0%
2,5%
3,0%
3,5%
4,0%
SPECINT SPECFP SPEC
FoGo1000
FoGo128
IqRob32
IqRob64
P oceedings o he 21s In e na ional Con e ence on Compu e Design (ICCD’03)
1063-6404/03 $ 17.00 © 2003 IEEE

maximum eo de bu e size is se o abou 70% o i s o al
capaci y. Abou 45% o he en ies a e occupied and 25% o
he en ies a e enabled bu emp y. This is mainly due o
sec ions o code whe e ins uc ions spend ew cycles in he
issue queue. The IqRob mechanism ends o inc ease he
eo de bu e size in hese si ua ions because hese
ins uc ions a e qui e powe e icien ( hey do no e ain
egis e s oo many cycles).
Table 4. Size educ ion
Reo de Bu e SpecINT SpecFP Spec
IqRob32 35.4% 23.5% 29.0%
IqRob64 34.2% 22.4% 27.9%
Issue Queue SpecINT SpecFP Spec
FoGo1000 18.7% 11.8% 15.0%
FoGo128 31.2% 20.4% 25.4%
IqRob32 28.7% 20.4% 24.2%
IqRob64 34.3% 24.1% 28.8%
4.3.3. In ege egis e ile and ename bu e s
As discussed abo e, educing he numbe o in- ligh
ins uc ions esul s in a lowe numbe o egis e s in use.
IqRob achie es highe educ ions han FoGo due o i s
highe e ec i eness a educing he eo de bu e size.
FoGo1000 educes he egis e p essu e by 7%, and
FoGo128 does i by 15%, whe eas IqRob32 and IqRob64
achie e educ ions o 18% and 20% espec i ely. These
egis e p essu e educ ions a e exac ly he same o bo h
a chi ec u es (RenB and RegF) since hey ha e been
con igu ed wi h exac ly he same numbe o egis e s (80
ename bu e s + 32 logical egis e s o RenB, and 112
egis e s o RegF). Figu es 7 and 8 show ha IqRob and
FoGo achie e highe dynamic powe sa ings in he egis e
ile and ename bu e s han he baseline.
I can be seen ha highe powe sa ings a e achie ed o
he RenB a chi ec u e. The main eason is ha ename
bu e s wi h high index a e eed as soon as he ins uc ion
commi s and hus, used egis e s co espond almos always
o low-index egis e s. In his way, high-index banks can be
u ned-o in mos o he cases when he numbe o unused
egis e s is highe han he size o a bank. Fo he RegF
a chi ec u e i may happen ha a egis e wi h high index is
alloca ed o an ins uc ion and emains alloca ed o a e y
long pe iod o ime a e he ins uc ion commi s, p e en ing
he co esponding bank o be u ned o .
Figu e 7. Dynamic powe sa ings o he in ege
egis e ile and ename bu e s w. . . he baseline
Figu e 8. S a ic powe sa ings o he in ege egis e
ile and ename bu e s wi h espec o he baseline
4.3.4. Floa ing poin ename bu e s
FP ename bu e s a e ha dly used by in ege p og ams so
we epo powe s a is ics only o FP p og ams. Figu es 9
and 10 show dynamic and s a ic powe sa ings. I can be
seen ha IqRob ou pe o m FoGo in bo h dynamic and s a ic
powe educ ion o bo h a chi ec u es. Addi ionally he FP
egis e equi emen s a e educed by mo e han 13% o bo h
IqRob echniques and less han 10% o FoGo echniques.
Figu e 9. Dynamic powe sa ings o he FP egis e
ile and ename bu e s wi h espec o he baseline
Figu e 10. S a ic powe sa ings o he FP egis e ile
and ename bu e s wi h espec o he baseline
4.3.5. Summa y
Table 5 summa izes he main pe o mance me ics o he
p oposed IqRob mechanism wi h espec o he baseline
con igu a ion. No e ha he baseline al eady includes a
mechanism o u n o unused egis e ile and ename bu e
banks. The FoGo mechanism is also shown o compa ison
pu poses.
Dynamic powe sa ings s baseline
0%
5%
10%
15%
20%
SPECINT
SPECFP
SPEC
SPECINT
SPECFP
SPEC
RenB RegF
FoGo1000
FoGo128
IqRob32
IqRob64
Dynamic powe sa ings
0%
2%
4%
6%
8%
10%
12%
14%
SPECFP SPECFP
RenB RegF
FoGo1000
FoGo128
IqRob32
IqRob64
S a ic powe sa ings
0%
2%
4%
6%
8%
10%
12%
14%
SPECFP SPECFP
RenB RegF
FoGo1000
FoGo128
IqRob32
IqRob64
S a ic powe sa ings s baseline
0%
5%
10%
15%
20%
SPECINT
SPECFP
SPEC
SPECINT
SPECFP
SPEC
RenB RegF
FoGo1000
FoGo128
IqRob32
IqRob64
P oceedings o he 21s In e na ional Con e ence on Compu e Design (ICCD’03)
1063-6404/03 $ 17.00 © 2003 IEEE
DP,SP,IQ,RenB and RegF s and o dynamic powe
sa ings, s a ic powe sa ings, issue queue, ename bu e s
and egis e ile espec i ely.
Table 5. Summa y o esul s
FoGo
1000
FoGo
128
IqRob
32
IqRob
64
IPC Loss 2.1% 3.6% 1.8% 3.3%
INT Reg P essu e 7.2% 15.3% 18.1% 19.8%
FP Reg P essu e 5.8% 9.9% 13.0% 15.5%
INT RegF DP 4.1% 6.2% 8.1% 10.9%
INT RegF SP 3.2% 5.4% 9.8% 13.0%
FP RegF DP 0.8% 2.0% 6.0% 7.4%
FP RegF SP 1.0% 2.9% 7.3% 8.0%
INT RenB DP 6.0% 8.0% 13.0% 15.7%
INT RenB SP 3.9% 7.0% 14.2% 18.2%
FP RenB DP 2.0% 4.5% 9.3% 10.6%
FP RenB SP 2.7% 6.2% 10.2% 12.1%
Table 5 shows ha IqRob32 and IqRob64 ou pe o m
FoGo1000 and FoGo128 in all me ics espec i ely.
Addi ionally IqRob echniques achie e highe powe sa ings
in egis e iles and ename bu e s, and educe egis e
p essu e mo e e ec i ely han FoGo echniques.
5. Conclusions
We ha e p esen ed a no el scheme ha dynamically
limi s he numbe o in- ligh ins uc ions in o de o sa e
dynamic and s a ic powe in egis e iles o ename bu e s,
and educes egis e p essu e. The p oposed mechanism is
based on moni o ing how much ime ins uc ions spend in
bo h he issue queue and he eo de bu e and limi hei
occupancy based on hese s a is ics.
The p oposed mechanism has been e alua ed in e ms o
pe o mance, and dynamic and s a ic powe sa ings o he
whole Spec2000.
Resul s ha e been compa ed wi h a s a e-o - he-a issue
queue esizing echnique, and i has been shown ha he
p oposed echnique ou pe o ms p e ious wo k in e ms o
pe o mance and powe sa ings. The p oposed echnique
achie es mo e han 13% dynamic and 15% s a ic ex a
powe sa ings in he in ege ename bu e s (45% dynamic
and 54% s a ic o al powe sa ings wi h espec o no
u ning o banks) and mo e han 9% dynamic and 10% s a ic
ex a powe sa ings in he FP ename bu e s (23% dynamic
and 30% s a ic o al powe sa ings wi h espec o no
u ning o banks). Signi ican powe sa ings a e also
achie ed o he egis e iles i hey a e used ins ead o
ename bu e s.
Addi ionally he egis e equi emen s a e educed by
mo e han 18% o he in ege egis e s and mo e han 13%
o he FP ones.
Acknowledgemen s
This wo k has been suppo ed by CICYT p ojec
TIC2001-0995-C02-01, he Minis y o Educa ion, Cul u e
and Spo s o Spain, and In el Co po a ion. We would like o
hank he anonymous e iewe s by hei commen s.
Re e ences
[1] R.I. Baha , S. Manne. Powe and Ene gy Reduc ion Via Pipelining
Balancing. In ISCA 2001.
[2] D. B ooks, V. Tiwa i, M. Ma onosi. Wa ch: a F amewo k o
A chi ec u al-Le el Powe Analysis and Op imiza ions. In ISCA 2000.
[3] D. Bu ge and T. Aus in. The SimpleScala Tool Se , Ve sion 3.0.
Technical epo , Compu e Sciences Depa men , Uni e si y o
Wisconsin-Madison, 1999.
[4] A. Buyuk osunoglu, D. Albonesi, S. Schus e , D. B ooks, P. Bose
and P. Cook. A Ci cui Le el Implemen a ion o an Adap i e Issue
Queue o Powe -Awa e Mic op ocesso s. In GLSVLSI 2001.
[5] J.L. C uz, A. González, M. Vale o, N. Topham. Mul iple-Banked
Regis e File A chi ec u es. In ISCA 2000.
[6] J. Eme . EV8: The pos -ul ima e alpha. Keyno e a PACT 2001.
[7] D. Folegnani and A. González. Ene gy-E ec i e Issue Logic. In
ISCA 2001.
[8] D. Halpe in. PA-RISC 8x00 Family o Mic op ocesso s wi h
Focus on PA-8700. Ho Chip Con e ence, 2000.
[9] T. Ka khanis, J.E. Smi h, P. Bose. Sa ing Ene gy wi h Jus in
Time Ins uc ion Deli e y. In ISLPED 2002.
[10] S. Manne, A. Klause , D. G unwald. Pipeline Ga ing: Specula ion
Con ol o Ene gy Reduc ion. In ISCA 1998.
[11] S. Palacha la, N.P. Jouppi, J.E. Smi h. Complexi y-E ec i e
Supe scala P ocesso s. In ISCA 1997.
[12] D. Ponoma e , G. Kucuk, K. Ghose. Reducing Powe
Requi emen s o Ins uc ion Scheduling Th ough Dynamic Alloca ion o
Mul iple Da apa h Resou ces. In MICRO 2001
[13] P. Shi akuma and N.P. Jouppi. CACTI 3.0: An In eg a ed Cache
Timing, Powe and A ea Model. Resea ch epo 2001/2, WRL, Palo
Al o, CA (USA), 2001.
[14] E. Sp angle, D. Ca mean. Inc easing P ocesso Pe o mance by
Implemen ing Deepe Pipelines. In ISCA 2002.
[15] W.L. Wins on. Ope a ions Resea ch Applica ions and Algo i hms.
Ed. Duxbu y P ess. Second edi ion, 1991.
[16] S.H. Yang, M.D. Powell, B. Falsa i, T.N. Vijaykuma . Exploi ing
Choice in Resizable Cache Design o Op imize Deep-Submic on
P ocesso Ene gy-Delay. In HPCA 2002.
[17] V. Zyuban, P. Kogge. The Ene gy Complexi y o Regis e Files. In
ISLPED 1998.
[18] SPEC2000. www.specbench.o g/osg/cpu2000/
P oceedings o he 21s In e na ional Con e ence on Compu e Design (ICCD’03)
1063-6404/03 $ 17.00 © 2003 IEEE