scieee Science in your language
[en] (orig)

TaskPoint: sampled simulation of task-based programs

Abstract

Sampled simulation is a mature technique for reducing simulation time of single-threaded programs, but it is not directly applicable to simulation of multi-threaded architectures. Recent multi-threaded sampling techniques assume that the workload assigned to each thread does not change across multiple executions of a program. This assumption does not hold for dynamically scheduled task-based programming models. Task-based programming models allow the programmer to specify program segments as tasks which are instantiated many times and scheduled dynamically to available threads. Due to system noise and variation in scheduling decisions, two consecutive executions on the same machine typically result in different instruction streams processed by each thread. In this paper, we propose TaskPoint, a sampled simulation technique for dynamically scheduled task-based programs. We leverage task instances as sampling units and simulate only a fraction of all task instances in detail. Between detailed simulation intervals we employ a novel fast-forward mechanism for dynamically scheduled programs. We evaluate the proposed technique on a set of 19 task-based parallel benchmarks and two different architectures. Compared to detailed simulation, TaskPoint accelerates architectural simulation with 64 simulated threads by an average factor of 19.1 at an average error of 1.8% and a maximum error of 15.0%.

Read accessible full text

TaskPoint: sampled simulation of task-based programs

Author: Grass, Thomas Dieter,Rico, Alejandro,Casas, Marc,Moretó Planas, Miquel,Ayguadé Parra, Eduard
Publisher: Institute of Electrical and Electronics Engineers (IEEE)
Year: 2016
DOI: 10.1109/ISPASS.2016.7482104
Source: https://upcommons.upc.edu/bitstream/2117/91424/3/TaskPoint%2bSampled%2bSimulation%2bof.pdf
TaskPoin : Sampled Simula ion o
Task-Based P og ams
Thomas G ass∗†, Alejand o Rico‡, Ma c Casas†, Miquel Mo e o∗†, Edua d Ayguad´
e∗†
∗Uni e si a Poli `
ecnica de Ca alunya, †Ba celona Supe compu ing Cen e , ‡ARM Inc.
Abs ac —Sampled simula ion is a ma u e echnique o e-
ducing simula ion ime o single- h eaded p og ams, bu i is no
di ec ly applicable o simula ion o mul i- h eaded a chi ec u es.
Recen mul i- h eaded sampling echniques assume ha he
wo kload assigned o each h ead does no change ac oss mul iple
execu ions o a p og am. This assump ion does no hold o
dynamically scheduled ask-based p og amming models. Task-
based p og amming models allow he p og amme o speci y
p og am segmen s as asks which a e ins an ia ed many imes
and scheduled dynamically o a ailable h eads. Due o sys em
noise and a ia ion in scheduling decisions, wo consecu i e
execu ions on he same machine ypically esul in di e en
ins uc ion s eams p ocessed by each h ead.
In his pape , we p opose TaskPoin , a sampled simula ion
echnique o dynamically scheduled ask-based p og ams. We
le e age ask ins ances as sampling uni s and simula e only
a ac ion o all ask ins ances in de ail. Be ween de ailed
simula ion in e als we employ a no el as - o wa d mechanism
o dynamically scheduled p og ams. We e alua e he p oposed
echnique on a se o 19 ask-based pa allel benchma ks and
wo di e en a chi ec u es. Compa ed o de ailed simula ion,
TaskPoin accele a es a chi ec u al simula ion wi h 64 simula ed
h eads by an a e age ac o o 19.1 a an a e age e o o 1.8%
and a maximum e o o 15.0%.
I. INTRODUCTION
Compu e a chi ec u e esea ch hea ily elies on simula ion.
Inc easing design complexi y and inc easing co e coun s in
mode n mul i-co e p ocesso s p esen new challenges o a chi-
ec u al simula ion. Fi s , simula ing a mo e complex design
equi es mo e ime o a gi en wo kload. Second, he mo e
complex a design, he la ge he simula ed wo kload needs o
be in o de o meaning ully s ess he design.
One echnique o educe simula ion ime is sampling. Sam-
pled simula ion educes simula ion ime by only simula ing
a ac ion o a wo kload. Sampling is a well-es ablished
echnique o simula ion o single- h eaded a chi ec u es. The
p e alen echniques pe o m de ailed simula ion o ei he only
he ep esen a i e p og am pa s iden i ied in p o iling [1] o
pe iodically ia ime-based sampling [2].
While sampled simula ion is a well-es ablished echnique
o single- h eaded a chi ec u es, echniques a ge ing mul i-
h eaded a chi ec u es ha e only been ecen ly p oposed. The
main challenge in sampling mul i- h eaded simula ions is o
ensu e ha a he beginning o each de ailed simula ion in e al
all h eads ha e made he same amoun o p og ess as in a
ull de ailed simula ion. A echnique p oposed by Ca lson e
al. [3] achie es his by selec ing a pe iodic sampling in e al
du ing o line p o iling and, du ing simula ion, es ima ing he
a e a which o as - o wa d each h ead be ween in e als o
de ailed simula ion. Ca lson e al. [4] also p opose a echnique
based on he insigh ha a e a global ba ie all h eads
a e synch onized and esume execu ion simul aneously. The
echnique le e ages he in e -ba ie egions in ba ie syn-
ch onized p og ams as sampling uni s.
Task-based p og amming models ha e been p oposed o
educe load imbalance and hus inc ease pa allel e iciency
o u u e la ge-scale mul i-co e machines [5]. A ask-based
p og amming model allows he p og amme o speci y p o-
g am pa s as asks and o speci y dependencies be ween
hose asks. Tasks a e ypically ins an ia ed many imes du ing
he execu ion o a p og am. O e -decomposi ion ensu es ha
he e a e many mo e ask ins ances han he e a e execu ion
h eads. The o e -decomposi ion o a pa allel p og am in o
asks, oge he wi h dynamic scheduling o ask ins ances o
h eads, dynamically balances he amoun o wo k assigned o
each h ead. In e - ask dependencies en o ce synch oniza ion
only when necessa y. The lack o global ba ie s and he
dynamically scheduled execu ion o ask-based p og ams make
hem unsui able o exis ing sampled simula ion echniques.
In his wo k we p esen TaskPoin , a sampled simula ion
me hodology o dynamically scheduled ask-based p og ams
execu ed on sha ed memo y mul i-co e machines. TaskPoin
le e ages ask ins ances as sampling uni s and only simula es
a small numbe o hem in de ail. The emaining ask ins ances
a e simula ed in a as e simula ion mode, ensu ing ha
p og ess in di e en h eads is modelled co ec ly.
In his pape , we make he ollowing con ibu ions:
•We compa e he pe o mance a ia ion o ask-based
p og ams in na i e execu ion and a chi ec u al simula ion.
This mo i a es he design o ou TaskPoin me hodology,
i s sampling policies and i s as - o wa ding me hodology.
•We p esen TaskPoin , a sampled simula ion echnique
o mul i-co e a chi ec u es p og ammed wi h a dynami-
cally scheduled, ask-based p og amming model. In his
con ex , we in oduce wo sampling policies, pe iodic
sampling and lazy sampling. Lazy sampling simula es
ask ins ances in de ail based on hei ype while pe iodic
sampling conside s hei ype and dis ibu ion o e ime.
•We p opose a mechanism o accu a ely as - o wa d an
a chi ec u al simula ion o a ask-based p og am. Du ing
as - o wa d, we model he pe o mance o a gi en ask
ins ance based on p e ious ins ances o he same ask
ype. We accoun o di e en ask inpu sizes ac oss
he applica ion execu ion by ac o ing in he numbe o
ins uc ions o he gi en ask ins ance acco dingly.
© 2016 IEEE. Pe sonal use o his ma e ial is pe mi ed. Pe mission om IEEE mus be ob ained o all o he uses, in any
cu en o u u e media, including ep in ing/ epublishing his ma e ial o ad e ising o p omo ional pu poses,c ea ing
new collec i e wo ks, o esale o edis ibu ion o se e s o lis s, o euse o any copy igh ed componen o his wo k in
o he wo ks.
2dcon olu ion
3ds encil
a omicmon eca lo
dynamics
densema ix
mul iplica ion
his og am
nbody
educ ion
spa sema ix ec o 
mul iplica ion
ec o ope a ion
checkSpa seLU
cholesky
kmeans
knn
blackscholes
body ack
canneal
dedup
eqmine
swap ions
20
15
10
5
0
5
10
15
20
IPC a ia ion[%]
28
24
Fig. 1: IPC a ia ion ac oss all ask ins ances o na i e execu ion wi h 8 h eads, no malized pe ask ype
•We e alua e TaskPoin simula ing 19 ask-based pa al-
lel benchma ks, including 6 ask-based e sions o he
PARSEC benchma k sui e. We e alua e he sensi i i y o
TaskPoin o di e en a chi ec u es by es ing di e en
numbe s o simula ed h eads on wo di e en con igu-
a ions co e ing he opposi e ex emes o he mul i-co e
design space: high-pe o mance and low powe .
The emainde o his pape is o ganized as ollows. In
Sec ion II, we p o ide backg ound and mo i a ion o ou
wo k. In Sec ion III, we p esen ou TaskPoin me hodology.
Nex , we in oduce ou expe imen al se up in Sec ion IV. We
e alua e TaskPoin in Sec ion V. Finally, we p esen ela ed
wo k in Sec ion VI, be o e we conclude in Sec ion VII.
II. BACKGROUND AND MOTIVATION
This sec ion p o ides backg ound on ask-based p og am-
ming models. We hen mo i a e ou wo k wi h an analysis
o pe o mance a ia ion in na i e execu ion o 19 ask-based
pa allel benchma ks.
A. Pa allel P og amming Models
In adi ional pa allel p og amming models o sha ed mem-
o y sys ems, like POSIX Th eads [6], he p og amme ex-
plici ly decomposes an applica ion in o concu en ins uc ion
s eams and manages synch oniza ion be ween hose. These
ins uc ion s eams a e p ocessed simul aneously by di e en
h eads. A common p oblem wi h mul i- h eaded p og ams is
load imbalance. Load imbalance occu s when di e en h eads
each a synch oniza ion poin a di e en poin s in ime.
Task-based p og amming models ha e he po en ial o al-
le ia e load imbalance and hus inc ease pa allel e iciency.
When implemen ing a pa allel p og am using a ask-based p o-
g amming model, he p og amme speci ies p og am pa s as
asks and, op ionally, da a dependencies be ween hese asks.
Tasks a e ins an ia ed many imes du ing he execu ion o a
p og am, esul ing in a la ge numbe o ask ins ances, each
o which ope a es on di e en da a. A un ime en i onmen
dynamically schedules ask ins ances o execu ion h eads.
Due o a ine-g ained o e -decomposi ion o he applica ion,
he e a e ideally mo e ask ins ances eady o execu ion han
he e a e h eads. This allows he un ime en i onmen o
dynamically balance he wo kload assigned o each h ead [5].
Fu he op imiza ions a e possible i he a chi ec u e in e aces
di ec ly wi h he un ime en i onmen [7, 8].
In his wo k, we di e en ia e be ween ask ypes and ask
ins ances. E e y execu ion o a ask decla a ion s a emen a
un ime esul s in he c ea ion o a ask ins ance. All ask
ins ances esul ing om he same ask decla a ion s a emen in
he sou ce code a e said o be o he same ask ype. In a ypical
ask-based p og am, he numbe o ask ypes is small, whe eas
he numbe o ask ins ances lies in he o de o housands.
B. Pe o mance Va ia ion o Task-Based P og ams
In o de o mo i a e TaskPoin , ou sampled simula ion
echnique o ask-based pa allel p og ams, we analyze pe -
o mance a ia ion in na i e execu ion o 19 benchma ks. The
in es iga ed benchma ks a e in oduced in Sec ion IV.
Di e en benchma ks, and e en di e en ask ypes o he
same benchma k, gene ally show di e en a e age ins uc ions
pe cycle (IPC). Fo an easy compa ison o pe o mance
a ia ion ac oss benchma ks, we no malize he IPC o all ask
ins ances o he a e age IPC o hei espec i e ask ype. Fo
each benchma k, we use one box plo o hese no malized IPC
alues o isualize pe o mance a ia ion ac oss ask ins ances.
Figu e 1 shows IPC a ia ion ac oss ask ins ances obse ed
in a na i e execu ion wi h 8 h eads on a sys em wi h an
In el SandyB idge-EP E5-2670 CPU unning a 2.6 GHz and
128 GB o DDR3-1600 as main memo y. The solid box o
each box plo indica es he ange om he i s o he hi d
qua ile o he no malized IPC alues, while he whiske s
ex end om he i h o he 95 h pe cen ile. IPC alues o
ask ins ances below he i h and abo e he 95 h pe cen ile
a e ea ed as ou lie s. The Figu e shows ha o 15 ou o 19
benchma ks pe o mance a ia ion lies wi hin ±5%. We show
ha pe o mance a ia ion is closely e lec ed in simula ion
when we in oduce he TaskSim simula o in Sec ion IV.
We mo i a e TaskPoin based on he insigh ha pe o -
mance o ask-based p og ams is gene ally egula ac oss
ins ances o he same ask ype. A no el y o TaskPoin is ha
i le e ages he concep o asks decla ed by he p og amme
o iden i y ask ins ances o he same ask ype as sampling
uni s o simila pe o mance.
III. SAMPLED SIMULATION OF TASK-BASED PROGRAMS
In his sec ion, we p esen ou TaskPoin me hodology. Fi s ,
we in oduce he p e equisi es which need o be ul illed by
an a chi ec u al simula o in o de o se e as an implemen a-
ion pla o m o TaskPoin . Nex , we p esen he di e en
2
A1
Th ead 1
Th ead 2
Time
B1
...
wa mup
...
1 2 3 4
A2B2
A3B3
A4B4
A5
A6
B5
B6
A7
An-1
Bn
Bn+1
... An
An+1 Bn+3
An+2 Bn+4
An+3 Bn+5
5
An+4
An+5
Bn+6
Bn+7
An+6 ...
measu e sample as - o wa d wa mup measu e sample
0
Bn+2
de ailed
simula ion
as - o wa d
Xi
i- h ins ance
o ask- ype X
Fig. 2: Ini ial wa mup, sampling, as - o wa ding and esampling in TaskPoin
phases o TaskPoin ’s sampling mechanism, namely wa m-
up, sampling and as - o wa ding. A e wa ds, we in oduce
ou pe iodic sampling policy. The sepa a ion in o sampling
mechanism and policy allows o he in eg a ion o o he
sampling policies wi h low implemen a ion e o .
A. Requi emen s o he A chi ec u al Simula o
Ou objec i e is o p o ide a sampled simula ion me hod-
ology o ask-based p og ams which does no depend on
a speci ic a chi ec u al simula o . The e o e, we keep he
equi emen s o he a ge simula o o a minimum. In o de
o se e as a sui able pla o m o implemen ing ou me hodol-
ogy, a simula o needs o ul il he ollowing wo equi emen s:
1) The simula o needs o ea u e a de ailed and a as
simula ion mode.
2) The as mode has o be capable o ope a ing a a use -
speci ied IPC.
Mos con empo a y a chi ec u al simula o s ea u e se e al
le els o de ail [9, 10, 11], allowing o ade o speed o
accu acy. Thus, we assume he i s equi emen o be i ially
ul illed. Rega ding he second equi emen , i a simula o does
no suppo ixed-IPC simula ion by de aul , we conside he
implemen a ion o his unc ionali y o be a mino e o .
B. Sampling Mechanism
TaskPoin ope a es on he le el o g anula i y o ask
ins ances. A ask ins ance is simula ed ei he in de ailed o
in as mode. Simula ion in de ailed mode se es o wa ming
a chi ec u al s a e o o measu e samples, whe eas simula ion
in as mode accu a ely as - o wa ds simula ion ime. Swi ch-
ing be ween de ailed and as mode only occu s be ween wo
consecu i e ask ins ances.
Figu e 2 illus a es he di e en phases o TaskPoin . Fo
each ask ype, we main ain wo ec o s holding he IPC
his o ies o he mos ecen ly simula ed ask ins ances. The
size Ho hese ec o s is a pa ame e e e ed o as he his o y
size. Bo h ec o s a e FIFO bu e s in which a newly added
elemen eplaces he oldes one. The i s ec o con ains he
his o y o ask ins ances which a e alid samples, i.e. which
a e simula ed a e wa ming up a chi ec u al s a e. We e e
o i as he his o y o alid samples. The second ec o holds
he his o y o all ask ins ances simula ed in de ailed mode,
ega dless o he simula ion being p ope ly wa med. We e e
o i as he his o y o all samples. While he o me is he
sample his o y we usually use o de e mine which IPC o use
in as mode, he la e is needed i he e a e ask ypes ha
occu in equen ly and can no be sampled in a single sampling
in e al. We e e o hese ask ypes as a e ask ypes.
In mul i- h eaded applica ions, co-exis ing h eads in e e e
wi h each o he , e.g. by compe ing o sha ed esou ces,
h ough in e - h ead synch oniza ion o by in alida ing da a
esiding in emo e caches. In o de o co ec ly model h ead
in e e ence, we simula e all h eads ei he in de ailed mode
o in as mode. Since we assume ha mode swi ching only
occu s be ween wo consecu i e ask ins ances, he e a e sho
phases du ing which some h eads a e simula ed in as -
o wa d mode, while o he s a e simula ed in de ailed mode
(see 2, 3and 5in Figu e 2).
Simula ion Wa mup:Be o e conduc ing pe o mance mea-
su emen s, a simula ion needs o be wa med, i.e. i needs o be
pu in a ep esen a i e s a e. Wa ming mic o-a chi ec u al s a e
in sampled simula ion is well-s udied [1, 2, 12, 13, 14, 15]. In
his pape , we wa m he simula ion by simula ing an empi i-
cally de e mined numbe o ask ins ances in de ail and a oid
complex wa mup schemes. Ins ead, we ocus on he sampling
me hodology i sel . Howe e , we dis inguish be ween wa ming
a simula ion s a and wa ming be o e esampling a e a
simula ion phase in as mode. When a ask ins ance simula ed
o wa mup inishes execu ion, i s IPC is added o he his o y
o all samples.
A simula ion s a , all simula ed mic o-a chi ec u al s uc-
u es a e in hei ini ial (cold) s a e. Du ing de ailed simula ion,
s a e-holding elemen s begin o ill un il occupancy eaches a
s eady s a e. In his wo k, we assume ha simula ing W ask
ins ances pe h ead a simula ion s a is su icien o pu ing
he simula o in o a ep esen a i e (wa m) s a e. We e e o
Was he size o he wa m-up in e al and e alua e di e en
alues o Win Sec ion V.
A e a simula ion phase in as mode, mic o-a chi ec u al
s a e is s ale. Be o e esampling he simula ion, wa mup makes
su e ha mic o-a chi ec u al s a e is (app oxima ely) he same
as i he whole p og am was simula ed in de ail. Be o e
esampling, we pe o m de ailed simula ion un il e e y h ead
has simula ed one ask ins ance in de ail.
Sampling:Like simula ion wa mup, sampling is pe o med
in de ailed simula ion mode. When wa mup is inished, we
s a ea ing he simula ed ask ins ances as alid samples.
When a alid sample ask ins ance inishes simula ion, i s
a e age IPC is added o he his o y o alid samples and o he
his o y o all samples. We igge he ansi ion o as mode
when one o he ollowing wo condi ions is ul illed:
1) The his o y o alid samples is ully popula ed.
3
Th ead 1
Th ead 2
Time
Time
1
1
2
2
P-1
P-1
P
P
1
1
2
2
... ... ...
...
...
Th ead 1
Th ead 2
1
1
2
2
P-1
P-1
P
P
sampling
as - o wa d
(a) Pe iodic sampling
(b) Lazy sampling
wa mup
Fig. 3: Illus a ion o pe iodic sampling (a) and lazy sampling (b) as a special case o pe iodic sampling wi h in ini e sampling
pe iod P
2) A ce ain numbe o ask ins ances has been simula ed
wi hou encoun e ing any ins ance o a a e ask ype
whose his o y o alid samples is no ye ully popula ed.
The i s condi ion means ha all ask ypes a e ully sampled.
The second condi ion is needed o a oid spending an excessi e
amoun o ime on de ailed simula ion in he p esence o
a e ask ypes. In his pape , we cu o sampling when all
h eads ha e simula ed 5 ask ins ances wi hou encoun e ing
an ins ance o a p e iously obse ed a e ask ype.
Accu a e Fas -Fo wa ding:When he ansi ion o as
mode is igge ed, all ask ins ances s a ing in he u u e a e
simula ed in as mode. Howe e , ask ins ances which s a ed
in he pas a e simula ed in de ailed mode un il hey comple e.
Task ins ances inishing simula ion a e he ansi ion o as
mode a e only added o he his o y o all samples.
A ask ins ance simula ed in as mode is simula ed wi h he
a e age IPC o he his o y o alid samples o i s ask ype.
I a ask ins ance belongs o a a e ask ype whose his o y o
alid samples is emp y, we use he a e age IPC o he his o y
o all samples ins ead. I he his o y o all samples o he
co esponding ask ype is also emp y, we igge esampling.
Ra e ask ypes end o occu in equen ly du ing he
execu ion o an applica ion. They accoun only o a small
pe cen age o he o al ins uc ion coun o an applica ion
and a e used o in equen asks, e.g. se ing up and dele ing
da a s uc u es. We ind he impac o using non- ep esen a i e
samples o as simula ion o a e ask ypes o be negligible.
One con ibu ion o his pape is he p esen ed as -
o wa ding mechanism o a chi ec u al simula ion o ask-
based pa allel p og ams. Ou echnique as - o wa ds each
h ead a a a e depending on he ask ype o he ask ins ance
cu en ly being simula ed.
C. Pe iodic Sampling Policy
A sampling policy decides when o esample a simula ion
unning in as - o wa d mode. The pe iodic sampling policy,
illus a ed in Figu e 3a, wa ms and samples a simula ion a
simula ion s a . A e wa ds, i swi ches he simula ion o as -
o wa d mode. When a h ead has execu ed a numbe Po ask
ins ances o any ask ype in as - o wa d mode, he simula ion
is esampled. We e e o he pa ame e Pas he sampling
pe iod. When a simula ion is esampled, he en ies o he
his o y o alid samples a e disca ded. When esampling is
comple e, he simula ion e u ns o as - o wa d mode and he
p ocess epea s.
Th ead 1
Th ead 2
Time
...
Th ead 3
Th ead 4
...
Task ype B Task ype A
(a) Change in numbe o execu ion h eads a ime , hus al e ing a e age
pe o mance due o esou ce con en ion
Th ead 1
Th ead 2
Time
...
Th ead 3
Th ead 4
...
(b) Ins ance o a e ask ype s a ing execu ion a ime
Fig. 4: Illus a ion o changing numbe o execu ion h eads
(a) and a e ask ype (b)
Simula ion speedup is de e mined by he size o he sam-
pling pe iod. The la ge he sampling pe iod, he mo e ask
ins ances a e simula ed in as mode. In he special case o
an in ini e sampling pe iod, esampling is ne e igge ed by
he sampling policy. We e e o his case as lazy sampling.
Lazy sampling is illus a ed in Figu e 3b. I he numbe o ask
ins ances o a p og am is oo small o he sampling pe iod is
oo la ge, a simula ion inishes du ing he i s as - o wa d
in e al, be o e any h ead has simula ed P ask ins ances. In
his case, pe iodic sampling is equi alen o lazy sampling.
Besides he a o emen ioned case o a h ead ha ing sim-
ula ed P ask ins ances in as mode, esampling is also
igge ed when i is impossible o accu a ely simula e a ask
ins ance in as mode. This happens in he ollowing wo cases.
Figu e 4a shows a case whe e he numbe o h eads
pa icipa ing in ask execu ion changes a un ime, e.g. when
he simula ed applica ion en e s a phase exposing mo e pa -
allelism. When he numbe o execu ion h eads changes, so
does he con en ion on sha ed esou ces, like sha ed caches
and main memo y. This a ec s pe - h ead pe o mance and
in alida es p e iously measu ed samples. Resampling a oids
p edic ion e o s due o non- ep esen a i e samples.
Figu e 4b shows a case whe e he i s ins ance o a
new ask ype is encoun e ed while simula ing in as mode.
When encoun e ing an ins ance o a p e iously unknown ask
ype, he ask ype’s sample his o y is emp y. The e o e, i
is impossible o simula e his ask ins ance in as mode. We
ci cum en his p oblem by igge ing esampling.
4
Wi h his esampling s a egy, bo h pe iodic sampling and
lazy sampling accoun o phase changes in he applica ion.
I a new phase is implemen ed wi h di e en ask ypes, he
simula ion is esampled. The same holds o changes in he
a ailable compu a ion esou ces o he a ailable pa allelism.
IV. EXPERIMENTAL SETUP
In his sec ion, we in oduce he expe imen al se up we
use o implemen and e alua e TaskPoin . Fi s , we in oduce
he ask-based p og amming model OmpSs. Subsequen ly, we
p esen he 19 benchma ks and he wo a chi ec u es we use in
ou e alua ion. Finally, we elabo a e on he TaskSim simula o
and ou implemen a ion o as simula ion a a bi a y IPC
and show an analysis o pe o mance a ia ion obse ed in
simula ion o ask-based p og ams.
The OmpSs P og amming Model:Fo ou e alua ions we
choose he OmpSs p og amming model [16]. The OmpSs com-
pile and un ime en i onmen a e a ailable as open sou ce.
OmpSs allows o decla e asks and anno a e hem wi h da a
inpu s and ou pu s. Using his in o ma ion, he OmpSs un ime
sys em schedules ask ins ances aking da a dependencies in o
accoun and pe o ms synch oniza ion only when necessa y.
These OmpSs ea u es we e included in o he speci ica ions
o OpenMP 3.0 and 4.0.
Benchma ks:Table I lis s he benchma ks used in ou
e alua ion. They ep esen a a ie y o wo kloads and a e
implemen ed using he OmpSs p og amming model. While he
majo i y o benchma ks ep esen wo kloads common o high-
pe o mance compu ing (HPC), blackscholes,body ack,can-
neal,dedup, eqmine and swap ions a e pa o he PARSEC
benchma k sui e [17]. Whene e possible, we gene a ed aces
equi alen o a leas en seconds o single- h eaded execu ion
on a s a e-o - he-a machine. Fo he PARSEC benchma ks we
used he simla ge inpu se s. Table I lis s he numbe o ask
ins ances and he ime equi ed o a de ailed simula ion o
he en i e benchma k o 1 and 64 execu ion h eads using he
TaskSim simula o . TaskSim is in oduced la e in his sec ion.
Simula ed A chi ec u es:We e alua e he ideli y o ou
me hodology by in es iga ing simula ion speedup and execu-
ion ime e o o mul i- h eaded simula ions o wo adically
di e en mul i-co e a chi ec u es. One esembles a se e -
class sys em, while he o he esembles a low-powe mobile
pla o m. Table II lis s he key cha ac e is ics o he simula ed
a chi ec u es. The high pe o mance a chi ec u e ea u es a
la ge eo de bu e and a h ee-le el cache hie a chy, as ound
in HPC sys ems. The low-powe a chi ec u e has a smalle
eo de bu e and wo le els o cache memo ies, as is ypical
o ba e y powe ed mobile sys ems. Recen ly, low-powe
sys ems a e gaining in e es o applica ions in HPC [18].
The TaskSim Simula o :We e alua e ou me hodology
using he TaskSim simula o [19, 20]. TaskSim is a cycle-
accu a e, ace-d i en pe o mance simula o o mul i-co e
a chi ec u es. I in e aces wi h an unmodi ied e sion o he
OmpSs un ime sys em. The un ime sys em schedules he ask
ins ances o he simula ed applica ion o execu ion on he
simula ed p ocesso co es.
TaskSim has a de ailed and a as simula ion mode. The
de ailed mode is based on he Reo de -Bu e Occupancy
Analysis model p oposed by Lee e al. [21]. When unning in
de ailed mode, TaskSim models a use -de ined memo y hie a -
chy including p i a e and sha ed cache memo ies, in e connec
s uc u es and DRAM.
In he as mode, called bu s mode, TaskSim only accoun s
o he numbe o CPU cycles be ween e en s, in ou case
be ween he beginning and he end o he execu ion o a
ask ins ance. In he exis ing implemen a ion, TaskSim eads
a ask ins ance’s cycle coun om he applica ion ace. In he
implemen a ion o ou as - o wa d mechanism, he du a ion o
a ask ins ance is calcula ed a he beginning o i s execu ion.
Using he mean IPC o he sample his o y o a ask ins ance i’s
ask ype Tand i s dynamic ins uc ion coun Ii, we es ima e
i s numbe o execu ion cycles Ciacco ding o Ci=Ii
IP CT
.
The esul is he numbe o cycles i akes o execu e he ask
ins ance a an IPC o IP CT, he a e age IPC o he ins ance’s
ask ype. The dynamic ins uc ion coun is ead om he
applica ion ace.
In he scope o his wo k, we ex ended TaskSim wi h he
capabili y o swi ch be ween de ailed and as - o wa d mode
a un ime. We also ex ended i s as simula ion mode. Ins ead
o using p e iously eco ded cycle coun s om a ace, ou
implemen a ion o as mode uses cycle coun s p edic ed by
ou as - o wa d mechanism. To he bes o ou knowledge,
his is he i s as - o wa d mechanism applying di e en IPCs
o di e en pa s o a p og am. Ou mechanism allows as -
o wa ding dynamically scheduled pa allel p og ams in which
he pe - h ead ins uc ion s eam is a-p io i unknown. Nex ,
we e alua e pe o mance a ia ion o ask-based p og ams
obse ed in simula ion wi h TaskSim.
Figu e 5 shows IPC a ia ion ac oss ask ins ances in an
a chi ec u al simula ion wi h 8 execu ion h eads. The pa am-
e e s o he simula ed a chi ec u e ma ch he machine used
o na i e execu ion, as a as hey a e publicly a ailable.
All benchma ks showing a pe o mance a ia ion o less
hen ±5% in na i e execu ion (see Figu e 1) also do so
in simula ion. Con e sely, h ee ou o he ou benchma ks
showing a a ia ion la ge han ±5% in na i e execu ion also
do so in simula ion. The excep ion is spa se-ma ix- ec o -
mul iplica ion, which in na i e execu ion exhibi s a a ia ion
o nea ly ±10%, compa ed o less han ±5% in simula ion.
The h ee benchma ks wi h he la ges deg ee o pe o mance
a ia ion in na i e execu ion, namely checkSpa seLU,dedup
and eqmine, also show he la ges a ia ion in simula ion.
Due o modelling inaccu acies in TaskSim’s de ailed simu-
la ion mode, he magni udes o pe o mance a ia ion in na i e
execu ion and simula ion do no ma ch exac ly. Howe e , o
18 ou o 19 benchma ks we co ec ly iden i y i a benchma k
exposes a pe o mance a ia ion o mo e o less han 5%.
V. EVALUATION
In his sec ion, we conduc a sensi i i y analysis o Task-
Poin ’s model pa ame e s. Then, we e alua e execu ion ime
e o and simula ion speedup o pe iodic sampling and lazy
5

TABLE I: Task-based pa allel benchma ks used o he e alua ion o TaskPoin
Benchma k # Task # Task Simula ion ime [h:min]P ope ies
Types Ins ances 1 Th ead 64 Th eads
2d-con olu ion 1 16384 31:37 59:34 Ke nel: s ided memo y accesses
3d-s encil 1 16370 9:12 40:51 Ke nel: s ided memo y accesses
a omic-mon e-ca lo-dynamics 1 16384 8:38 15:16 Ke nel: emba assingly pa allel
dense-ma ix-mul iplica ion 1 17576 70:14 127:10 Ke nel: high da a euse, compu e bound
his og am 1 16384 6:02 12:13 Ke nel: a omic ope a ions
n-body 2 25000 8:15 12:31 Ke nel: i egula memo y accesses
educ ion 2 16384 1:51 5:15 Ke nel: pa allelism dec eases o e ime
spa se-ma ix- ec o -mul iplica ion 1 1024 0:33 1:26 Ke nel: load imbalance, memo y bound
ec o -ope a ion 1 16400 24:25 191:00 Ke nel: egula , memo y bound
checkSpa seLU 11 22058 7:25 17:17 Decomposi ion o la ge, spa se ma ices
cholesky 4 19600 33:42 59:29 Decomposi ion o He mi ian posi i e-de ini e ma ices
kmeans 6 16337 75:21 141:02 Clus e ing based on Lloyd’s algo i hm
knn 2 18400 31:28 65:27 Ins ance-based machine lea ning algo i hm
blackscholes 2 24500 8:42 17:19 Op ion p ice calcula ion
body ack 7 21439 15:24 31:28 Human body acking wi h mul iple came as
canneal 1 16384 11:13 29:38 Cache-awa e simula ed annealing
dedup 4 15738 10:08 23:32 Deduplica ion: combina ion o global and local comp ession
eqmine 7 1932 23:52 34:13 F equen Pa e n G ow h me hod o F equen I em Mining
swap ions 1 16384 29:27 70:25 Mon e-Ca lo simula ion o calcula e swap ion p ices
2dcon olu ion
3ds encil
a omicmon eca lo
dynamics
densema ix
mul iplica ion
his og am
nbody
educ ion
spa sema ix ec o 
mul iplica ion
ec o ope a ion
checkSpa seLU
cholesky
kmeans
knn
blackscholes
body ack
canneal
dedup
eqmine
swap ions
20
15
10
5
0
5
10
15
20
IPC a ia ion[%]
26 39
21
Fig. 5: IPC a ia ion ac oss all ask ins ances o simula ion o high-pe o mance a chi ec u e wi h 8 h eads, no malized pe
ask ype
TABLE II: A chi ec u al pa ame e s o high pe o mance and
mobile con igu a ions used o model alida ion
Pa ame e High-pe . Low-powe
Reo de -bu e size 168 40
Issue wid h 4 3
Commi a e 4 3
Cache line size 64 B 64 B
L1 cache 32 kB p i a e
4 cycles la ency
8-way associa i e
32 kB p i a e
4 cycles la ency
2-way associa i e
L2 cache 2 MB p i a e
11 cycles la ency
8-way associa i e
1 MB sha ed
21 cycles la ency
16-way associa i e
L3 cache 20 MB sha ed
28 cycles la ency
20-way associa i e
none
sampling. Finally, we es he obus ness o ou model by using
he same pa ame e s o simula e a low-powe a chi ec u e.
A. Adjus ing he Model Pa ame e s
We de e mine he op imal model pa ame e s ollowing an
inc emen al app oach. Fi s , we de e mine he op imal numbe
Wo ask ins ances needed o wa mup a simula ion s a .
A e wa ds, we conside di e en numbe s o ask ins ances
Hcons i u ing he sample his o y. Finally, we explo e a ange
o alues o he sampling pe iod P.
In o de o de e mine he op imal alue o Wwe se H=
10 and P=∞and e alua e di e en alues anging om
W= 0 (no wa mup) o W= 10. Figu e 6a shows e o and
speedup, a e aged o e simula ions wi h 32 and 64 h eads.
The epo ed alues a e a e aged o e he benchma ks and
ke nels wi h an e o >5% o a leas one alue o H, namely
2d-con olu ion,3d-s encil,a omic-mon e-ca lo-dynamics,knn
and blackscholes. We ound ha W= 2 yields an a e age
e o o less han 2%. La ge alues o Wdo no signi ican ly
educe he a e age e o , bu hey educe simula ion speedup.
The e o e, o he emainde o his pape , we se W= 2.
Nex , we e alua e di e en alues o H, he size o he
sample his o y. Fo his pu pose, we se P=∞. No e ha
we al eady se W= 2. Figu e 6b shows e o and speedup
o di e en sizes Ho he sample his o y, a e aged o e
simula ions wi h 32 and 64 h eads o he a o emen ioned
benchma ks. We ound ha H= 4 minimizes he a e age
e o . This alue also minimizes he s anda d de ia ion o he
a e age e o , which is no shown in he Figu e. La ge alues
o Hdo no only esul in a la ge a e age e o , bu also in
lowe simula ion speedup. The e o e, o he emainde o his
pape , we se H= 4.
Finally, we explo e di e en sizes o he sampling pe iod P.
Wi h W= 2 and H= 4 al eady ixed, Pis he only emaining
pa ame e . Figu e 6c shows he a e age e o o alues o
P anging om 10 o 1,000. We ind ha a e age e o
6
0 2 4 6 8 10
Numbe 
W
o  askins ances o wa mup
0
2
4
6
8
10
A e agee o [%]
0
50
100
150
200
A e agespeedup
E o
Speedup
(a) E o and speedup o di e en sizes Wo wa mup in e al, a e age o
32 and 64 h eads
1 2 3 4 5 6 7 8 9 10
Size
H
o samplehis o y
0
2
4
6
8
A e agee o [%]
0
10
20
30
40
A e agespeedup
E o
Speedup
(b) E o and speedup o di e en sizes Ho ask ins ance his o y, a e age
o 32 and 64 h eads
101102103
Size
P
o samplingpe iod
0.0
0.5
1.0
1.5
2.0
2.5
A e agee o [%]
0
5
10
15
20
25
A e agespeedup
E o
Speedup
(c) E o and speedup o di e en sizes Po sampling pe iod, a e age o
32 and 64 h eads
Fig. 6: E o and speedup o di e en sizes o wa mup in e al
(a), sample his o y (b) and sampling pe iod (c)
and speedup inc ease wi h he size o he sampling pe iod.
The la ge he alue o P, mo e ask ins ances a e simula ed
in as mode. Since he o al numbe o ask ins ances o
a p og am is cons an , he ac ion o de ailed simula ion
dec eases, esul ing in inc easing speedup. Fo P≥1000
e o and speedup emain cons an . A his poin , none o
he in es iga ed p og ams has a su icien numbe o ask
ins ances o esampling he simula ion a leas once and
pe iodic sampling becomes equi alen o lazy sampling.
We aim o a simula ion e o o less han 1%. A sampling
pe iod P= 250 yields an e o o 0.8% and a simula ion
speedup o 15.1x, a e aged o e he benchma ks used in
ou sensi i i y analysis. In he emainde o his sec ion, we
e alua e TaskPoin o pe iodic sampling wi h P= 250 and
o lazy sampling (pe iodic sampling wi h P=∞).
B. Pe iodic Sampling
Fi s , we e alua e pe iodic sampling, simula ing he high-
pe o mance a chi ec u e in Table II, which we also use o ind
he sampling pa ame e s. A e wa ds, we simula e he low-
powe a chi ec u e using he same sampling pa ame e s.
High-Pe o mance A chi ec u e:Figu e 7 shows execu ion
ime e o and simula ion speedup o all in es iga ed bench-
ma ks, simula ed wi h he pa ame e s W= 2,H= 4 and
P= 250. The a e age execu ion ime e o is less han 2%
o 8, 16, 32 and 64 simula ed h eads. The e o o 1, 2
and 4 simula ed h eads is less han 1% and no shown in he
Figu e. We obse e he la ges simula ion speedup o 76.2 o
spa se-ma ix- ec o -mul iplica ion execu ed wi h 8 h eads.
We obse e he highes e o o 8.9% in he simula ion o
eqmine wi h 8 h eads. F eqmine consis s o 7 di e en ask
ypes, one o which accoun s o 93% o he o al numbe o
dynamic ins uc ions. The dynamic ins uc ion coun o he
ins ances o his ask ype anges om 490 o 11,000,000.
Inspec ing he sou ce code e eals a cons uc o nes ed i -
s a emen s in a ask decla a ion. This causes di e en ins ances
o he same ask ype o ollow comple ely un ela ed con ol
low pa hs. The unbalanced size ac oss ask ins ances makes
sampling he simula ions wi h 32 and 64 h eads ine ec i e.
Since hese con igu a ions a e simula ed almos en i ely in
de ail, he e o is negligible and speedup is close o 1.
F om his inding, we de i e a ecommenda ion o p o-
g amme s o imp o ing pe o mance p edic abili y o ask-
based p og ams: One should a oid la ge-scale con ol low
di e gence among ins ances o he same ask ype. In p ac ice,
his is achie ed by decla ing code pe o ming un ela ed wo k
as di e en ask ypes.
The second la ges e o o 7.3% is shown by dedup o 64
h eads. Dedup consis s o 4 ask ypes, one o which accoun s
o 99.9% o he dynamic ins uc ion coun . The dynamic
ins uc ion coun o he ins ances o his ask ype anges
om 3,500,000 o 25,100,000. The domina ing ask ype
pe o ms de-duplica ion as well as comp ession, which a e
highly inpu dependen ope a ions. P e ious wo k iden i ied
inpu dependence as a sou ce o pe o mance a ia ion [22].
Pe o mance a ia ion makes i di icul o de e mine a ask
ype’s a e age pe o mance du ing sampling.
We ecognize ha , in ce ain cases, inpu dependence can
no be a oided. One way o imp o e he accu acy o sam-
pled simula ion o p og ams showing inpu dependence is o
classi y ask ins ances in o classes o simila pe o mance. We
en ision clus e ing o ins ances o he same ask ype based on
mic o-a chi ec u e independen me ics, e.g. ins uc ion coun
o ins uc ion mix. We lea e his o u u e wo k.
Nex , we e alua e he gene aliza ion capabili y o pe iodic
sampling. We simula e a low-powe a chi ec u e which is
adically di e en om he high-pe o mance a chi ec u e we
used o de e mine he sampling pa ame e s.
Low-Powe A chi ec u e:Figu e 8 shows execu ion ime
e o and simula ion speedup o simula ions o all benchma ks
execu ed on he low-powe a chi ec u e in oduced in Table II
wi h 1, 2, 4 and 8 h eads. We no ice ha , o inc easing
7
0
2
4
6
8
10
Absolu ee o [%]
8 h eads
16 h eads
32 h eads
64 h eads
2dcon olu ion
3ds encil
a omicmon e
ca lodynamics
densema ix
mul iplica ion
his og am
nbody
educ ion
spa sema ix ec o 
mul iplica ion
ec o ope a ion
checkSpa seLU
cholesky
kmeans
knn
blackscholes
body ack
canneal
dedup
eqmine
swap ions
a e age
100
101
102
Speedup
Fig. 7: E o and speedup o pe iodic sampling; high-pe o mance a chi ec u e; P= 250
0
2
4
6
8
10
Absolu ee o [%]
11.0
13.0
1 h ead
2 h eads
4 h eads
8 h eads
2dcon olu ion
3ds encil
a omicmon e
ca lodynamics
densema ix
mul iplica ion
his og am
nbody
educ ion
spa sema ix ec o 
mul iplica ion
ec o ope a ion
checkSpa seLU
cholesky
kmeans
knn
blackscholes
body ack
canneal
dedup
eqmine
swap ions
a e age
100
101
102
Speedup
Fig. 8: E o and speedup o pe iodic sampling; low-powe a chi ec u e; P= 250
h ead coun s, speedup deg ades less han in he case o
he high-pe o mance a chi ec u e. Since we simula e smalle
h ead coun s, he simula ion is esampled mo e o en and he
pe cen age o ask ins ances simula ed in as mode is mo e
simila ac oss di e en h ead coun s.
Wi h an e o o 13.0% o 4 h eads, eqmine is he
benchma k wi h he highes e o . This is consis en wi h he
simula ion o he high-pe o mance a chi ec u e. We a ibu e
his e o o he same eason as in he case o he high-
pe o mance a chi ec u e, namely he highly imbalanced size
o he ins ances o he dominan ask ype.
We obse ed he second la ges e o o 8.4% o spa se-
ma ix- ec o -mul iplica ion wi h 8 h eads. Depending on he
s uc u e o he inpu ma ix, memo y accesses a e mo e o
less egula [23]. We conclude ha , due o he wo-le el cache
hie a chy, he smalle las -le el cache and he lowe memo y
bandwid h, his has a highe impac on pe o mance a ia ion
han in he high-pe o mance a chi ec u e. This is ano he
example o inpu dependence, simila o he case o dedup
explained in he p e ious sec ion.
C. Lazy Sampling
Fo ou e alua ion o lazy sampling, we se W= 2,H= 4
and P=∞. We simula e he benchma ks lis ed in Table I
execu ing on he high pe o mance a chi ec u e and he low-
powe a chi ec u e lis ed in Table II.
High-Pe o mance A chi ec u e:Figu e 9 shows execu-
ion ime e o and simula ion speedup o he lazy sampling
policy o he in es iga ed benchma ks execu ed on he high-
pe o mance a chi ec u e. The a e age e o is less han 2%
o all simula ed h ead coun s (including 1, 2, and 4 h eads,
which a e no shown in he Figu e).
Dedup and eqmine a e s ill he benchma ks showing he
highes e o . Compa ed o pe iodic sampling, he highes
obse ed e o o dedup inc eases om 7.3% o 15.0% o
he simula ion wi h 64 h eads. In he case o eqmine, he
highes obse ed e o inc eases om 8.9% o 9.6% o he
simula ion wi h 8 h eads.
While he a e age e o o lazy sampling is compa able
o he e o o pe iodic sampling, we obse e a signi ican
inc ease o a e age simula ion speedup. Compa ed o pe iodic
sampling, we obse e he la ges inc ease om 44.4 o 178.5
o he a e age speedup o he simula ions wi h 8 h eads. The
smalles gain in speedup is obse ed o he simula ions wi h
64 h eads, in which speedup inc eases om 15.8 o 19.1. Fo
1 h ead, which is no shown in he Figu e, speedup inc eases
om 43.2 o 1019.
Low-Powe A chi ec u e:Figu e 10 shows execu ion ime
e o and simula ion speedup o he low-powe a chi ec u e.
We obse e a ma ginal inc ease o he maximum e o o
spa se-ma ix- ec o -mul iplica ion and eqmine, he bench-
8
0
2
4
6
8
10
Absolu ee o [%]
14.2
15.0
8 h eads
16 h eads
32 h eads
64 h eads
2dcon olu ion
3ds encil
a omicmon e
ca lodynamics
densema ix
mul iplica ion
his og am
nbody
educ ion
spa sema ix ec o 
mul iplica ion
ec o ope a ion
checkSpa seLU
cholesky
kmeans
knn
blackscholes
body ack
canneal
dedup
eqmine
swap ions
a e age
101
102
103
104
Speedup
Fig. 9: E o and speed-up o lazy sampling; high-pe o mance a chi ec u e
0
2
4
6
8
10
Absolu ee o [%]
10.3
11.2
13.1
11.3
1 h ead
2 h eads
4 h eads
8 h eads
2dcon olu ion
3ds encil
a omicmon e
ca lodynamics
densema ix
mul iplica ion
his og am
nbody
educ ion
spa sema ix ec o 
mul iplica ion
ec o ope a ion
checkSpa seLU
cholesky
kmeans
knn
blackscholes
body ack
canneal
dedup
eqmine
swap ions
a e age
101
102
103
104
Speedup
Fig. 10: E o and speed-up o lazy sampling; low-powe a chi ec u e
ma ks wi h he la ges e o s in he simula ions o he low-
powe a chi ec u e employing pe iodic sampling. Howe e , in
he case o dedup, he e o inc eases o all simula ed h ead
coun s. We obse e he highes inc ease, om 3.2% o 11.3%,
o he simula ion wi h 8 h eads.
Summa y:The esul s o ou e alua ion show ha Task-
Poin accu a ely p edic s execu ion ime o ask-based p o-
g ams. Fo lazy sampling, he a e age e o is 1.8% wi h a
maximum e o o 15% and a simula ion speedup o 19.1.
We show ha lazy sampling achie es much g ea e speedup
han pe iodic sampling a a compa able e o . The e o e, we
ad oca e he use o lazy sampling o e alua ions equi ing
a la ge numbe o simula ions, e.g. du ing he ea ly phase o
design space explo a ion. We ecommend o employ pe iodic
sampling in la e phases o design space explo a ion when he
size o he design space has al eady been signi ican ly educed.
VI. RELATED WORK
In his sec ion, we i s in oduce di e en simula o s o
mul i-co e sys ems. Then, we p esen he p e alen ech-
niques o sampled simula ion o single- h eaded a chi ec u es.
A e wa ds, we e iew ecen wo k on sampled simula ion
o mul i- h eaded a chi ec u es. Finally, we p esen wo k on
pe o mance analysis o ask-based p og ams.
Mul i-Th eaded A chi ec u al Simula ion: COTSon [10]
is a ull-sys em simula o decoupling unc ional and iming
simula ion. Func ional simula ion elies on jus -in- ime com-
pila ion o he simula ed p og am. COTSon ea u es se e al
le els o de ail and suppo s sampling.
In addi ion o pe o mance, ESESC [24] also simula es a
u u e design’s powe consump ion and he mal beha iou .
ESESC is he i s simula o applying ime-based sampling
o simula ion o mul i- h eaded applica ions.
The ull-sys em simula o gem5 [11] ea u es CPU models
a se e al le els o de ail, anging om a model employing
na i e execu ion o a de ailed model o a supe scala ou -o -
o de CPU. Besides o he s, gem5 suppo s he x86 and ARM
a chi ec u es, which a e he mos p e alen a chi ec u es oday.
In con as o he a o emen ioned simula o s, Snipe [25]
ea u es a pu ely analy ic CPU model. Ins ead o modelling
mic o-a chi ec u al s uc u es wi hin he CPU, i employs he
mechanis ic In e al Simula ion model [26]. The highe le el
o abs ac ion o in e al simula ion is di ec ly e lec ed in a
highe simula ion speed, compa ed o mo e de ailed models.
Single-Th eaded Simula ion Sampling:In hei SimPoin
me hodology [1], She wood e al. use basic block ec o s
o iden i y he mos ep esen a i e code sec ions. The majo
simula ion e o is spen on hese sec ions SimPoin s equi es
a-p io i p o iling o he applica ion o be simula ed in o de o
9