Parallelization Optimization of System-Level Specification

Size: px
Start display at page:

Download "Parallelization Optimization of System-Level Specification"

Transcription

1 Prlleliztion Optimiztion of System-Level Speifition Luki i niel. Gjski enter for Emedded omputer Systems University of liforni Irvine, 92697, US {li, strt This pper introdues the prlleliztion optimiztion of system-level speifition, whih eplores miml prllelism mong funtionl loks of the design. We introdue two tools, spe profiler nd spe optimizer, to implement the prlleliztion optimiztion utomtilly.

2 Inde 1Introdution...1 2Implementtion of Prlleliztion Optimiztion Prlleliztion Optimiztion Tsks Sequentil ehvior Serhing ependeny nlysis efinition ependeny nlysis Instne Struture Optimiztion Hierrhil Prllel Struture Gols of Instne Struture Optimiztion lgorithms for Instne Struture Optimiztion...4 3Speifition Modeling Proess...8 4Eperientil results Mnul Prlleliztion vs. utomti Prlleliztion Results for 10 Instne Emples Results for 20 Instne Emples Rel Projet Emples onlusion...11 Referene...11

3 List of Figures Figure 1: Etended Gjski nd Kuhn s Y hrt...1 Figure 2: Emple 1 of prlleliztion optimiztion...2 Figure 3: Prlleliztion optimiztion tsks...2 Figure 4: Emple 2 of prlleliztion optimiztion...3 Figure 5: Three types of PrGroup...5 Figure 6: Four ses of inserting instne to Flt PrGroup...5 Figure 7: Three ses of inserting instne to Pr PrGroup...7 Figure 8: Three ses of inserting instne to Sequ PrGroup....8 Figure 9: n emple of designers improvements on the results of onstrutive lgorithm...8

4 List of Tles Tle 1 : Overview of three solutions for the emple in Figure Tle 2: esign time of the mnul prlleliztion...9 Tle 3: Results for 10 instne emples...9 Tle 4: Results for instne emples...10 Tle 5: Results for JPEG nd Voode Projet Emples...10

5 Prlleliztion Optimiztion of System-Level Speifition Luki i, niel. Gjski enter for Emedded omputer Systems University of liforni Irvine, 92697, US {li, strt This pper introdues the prlleliztion optimiztion of system-level speifition, whih eplores miml prllelism mong funtionl loks of the design. We introdue two tools, spe profiler nd spe optimizer, to implement the prlleliztion optimiztion utomtilly. ehviorl Speifition tuning S System RTL Logi Trnsistor rhiteturl 1 Introdution In order to hndle the ever inresing ompleity nd time-to-mrket pressures in the design of system-onhips(sos) or emedded systems, the design hs een rised to the system level to inrese produtivity. Figure 1 illustrtes etended Gjski nd Kuhn s Y hrt[1] representing the entire design flow, whih is omposed of four different levels: system level, RTL level, logi level, nd trnsistor level. The thik r represents the system level design. It strts from the speifition representing the design s funtionlity, whih is denoted y point S. The system level design then synthesizes the speifition to the system rhiteture denoted y point. system rhiteture onsists of numer of PEs (proessing elements) onneted y uses. Eh PE implements numer of funtionl loks in the speifition. The system level design ontins series of tsks inluding PE llotion nd ehvior inding. PE llotion selets PEs for the rhiteture. ehvior inding mps different funtion loks in the speifition to different PEs. In ddition to tsks in eisting system level design, we dd tsk speifition tuning to the system design flow, whih is denoted y the dotted irle round point S. Speifition tuning not only redues the ompleity of the speifition, ut lso eplores miml prllelism eisting in the speifition, whih re used for tsks PE llotion nd ehvior inding in lter steps. For emple, if only two funtionl loks n e eeuted in prllel in the speifition, then PE llotion will hoose no more thn two PEs in the rhiteture euse of prllel eeution. For the sme reson, ehvior inding lso mps the two funtionl loks to different PEs. Physil Figure 1: Etended Gjski nd Kuhn s Y hrt This pper introdues the prlleliztion optimiztion of speifition tuning, whih eploits miml prllelism mong funtionl loks of the design s speifition. esigners n implement prlleliztion optimiztion mnully. In generl, designers strt modeling the speifition from eisting /++ ode. Sine /++ lnguge does not support prllelism, designers must mnully find the prllelism y nlyzing the ode or designs lgorithms, whih is time-onsuming. fter finding the prllelism mong the funtionl loks in the speifition, designers must determine the hierrhil prllel struture of the speifition. fter prlleliztion optimiztion, one originl speifition my produe different hierrhil prllel strutures. For emple, in Figure 2(), funtionl loks,,, nd re eeuted sequentilly. In Figure 2(), the dependenies mong the funtionl loks re displyed. lok n only e eeuted fter the eeution of, while lok n only e eeuted fter the eeution of. In Figure 2() nd (d), two possile hierrhil prllel strutures re shown. The funtionl loks seprted y dotted line represent prllel eeuted loks. In Figure 2(), lok 1

6 nd re eeuted prllel fter the prllel eeution of nd. In Figure 2(d), lok is eeuted fter while lok is eeuted fter. The eeution of nd is prllel with the eeution of nd. euse one originl speifition my produe different hierrhil prllel strutures, we prefer implementing prlleliztion optimiztion struturlly y tools rther thn rndomly y hnd. Spe uses keyword ehvior to represent funtionl lok. Eh ehvior ontins numer of methods tht define the funtionlity, set of ports tht onnet it with other ehviors, nd numer of ehvior instnes to support ehvior hierrhil modeling. The pper is orgnized s follows: Setion 2 desries the implementtion of the utomti prlleliztion; Setion 3 introdues the speifition modeling proess with the utomti prlleliztion; Setion 4 gives eperimentl results. Finlly, the onlusion is mde in Setion 5. () Originl eeuting sequene () ependenies mong funtionl loks 2 Implementtion of Prlleliztion Optimiztion 2.1 Prlleliztion Optimiztion Tsks In this pper, we prllelize sequentil ehviors. sequentil ehvior is defined s the ehvior tht only ontins numer of sequentil eeuting ehvior instnes. () Solution 1 fter prlleliztion optimiztion (d) Solution 2 fter prlleliztion optimiztion Figure 2: Emple 1 of prlleliztion optimiztion Therefore we mke two tools, spe profiler nd spe optimizer, to implement prlleliztion optimiztion utomtilly: spe profiler nlyzes the dependenies mong funtionl loks; spe optimizer finds out the hierrhil prllel struture with miml prllelism. We ompred the mnul prlleliztion with the utomti prlleliztion nd onluded the utomti prlleliztion produed etter results in terms of design time nd hierrhil prllel strutures. The prlleliztion optimiztion ontins three tsks shown in Figure 3. The first tsk, sequentil ehvior serhing, finds ll the sequentil ehviors in the speifition. The seond tsk, dependeny nlysis, omputes the dependenies mong ehvior instnes of the sequentil ehviors. Finlly, the third tsk, instne struture optimiztion, finds the hierrhil prllel struture for eh sequentil ehvior ording to the dependenies. Sequentil ehvior serhing ependeny nlysis We use Spe lnguge[2][3] to model the speifition. In ontrst to other system level design lnguges suh s System[4], Spe lnguge is synthesis-sed design lnguge euse it provides keywords suh s pr nd pipe to model prllel nd pipeline eeuting reltions mong funtionl loks. Epliitly speifying the eeuting reltions enles system-level synthesis tools to reognize the hierrhil prllel strutures, whih mke it possile for them to implement PE seletion nd ehvior inding utomtilly. Instne struture optimiztion Figure 3: Prlleliztion optimiztion tsks 2.2 Sequentil ehvior Serhing We first find ll the sequentil ehviors in the speifition. Sequentil ehviors re identified y internlly ttriutes of Spe internl representing formt. 2

7 2.3 ependeny nlysis efinition sequentil ehvior ontins ehvior instnes nd, set of lol vrile V i, nd set of port P j. is eeuted efore. If there eists V i or P j tht () write to V i /P j nd reds from V i /P j, or () oth nd write to V i /P j, or () There eists ehvior instne of suh tht depends on nd depends on,. then ehvior instne depends on ehvior instne If ehvior instne depends on ehvior instne, then must e eeuted fter the eeution of. Otherwise, ehvior instnes nd n e eeuted prllel ependeny nlysis We ompute the dependenies mong ehvior instnes y nlyzing the port trffi of ehvior instnes. First, we use spe profiler [5] to produe the speifition sttistis. Spe profiler genertes the stti trffi nd dynmi trffi of ehvior ports. Stti trffi of the port refers to the numer of ports of lef ehviors to whih it is onneted. Lef ehvior is the ehvior ontining only set of methods without ny ehvior instnes, whih is used s the instne of other ehviors. ynmi trffi of the port refers to the numer of port ess during simultion. If the port is n input port, nd stti/dynmi trffi is greter thn 0 for tht port, we onlude tht the ehvior sttilly/dynmilly red from the port. Likewise, if the port is n output port nd stti/dynmi trffi is greter thn 0, we onlude tht the ehvior sttilly/dynmilly write to the port. The inout port n e treted in similr wy. Seond, we nlyze the port onnetions of ehvior instnes. If ehvior instnes nd of sequentil ehvior meet the onditions () or () in sttilly or dynmilly, then sttilly or dynmilly depends on. Finlly, we find the stti/dynmi ehvior dependenies sed on the ondition () in fter dependeny nlysis, designers n determine whether one ehvior instne depends on nother sed on either stti dependeny or more greedy, dynmil dependeny. 2.4 Instne Struture Optimiztion Hierrhil Prllel Struture Instne struture optimiztion hnges the instne struture from one-level pure-sequentil struture to multilevel hierrhil prllel struture. Figure 4 gives n emple of the hierrhil prllel struture. fter instne struture optimiztion, the produed hierrhil prllel struture hs three levels shown in Figure 4(). In the first level, nd E re prllel eeuted. In the seond level, is eeuted efore the eeution of nd E. In the third level, nd ( is eeuted fter ) re eeuted prllel with,, nd E. Note tht two of three levels re prllel struture. E () Originl eeuting sequene () ependenies mong funtionl loks () Hierrhil prllel struture fter prlleliztion optimiztion Figure 4: Emple 2 of prlleliztion optimiztion Gols of Instne Struture Optimiztion uring instne struture optimiztion, we wnt to hieve two gols. () Minimize the numer of dded dependenies mong ehvior instnes. fter instne struture optimiztion, some independent ehvior instnes will e hnged to dependent ehvior instnes euse of overuse prllelism. For emple, the solution shown in Figure 2() dds two pirs of dependenies: depends on nd depends on, while do not eist in Figure 2(). dding dependenies mong ehvior instnes re unvoidle; therefore we hoose minimizing the numer of dded dependenies s the first gol. E E 3

8 () Minimize the length of ritil pth of produed hierrhil prllel struture. The length of the ritil pth of hierrhil prllel struture is defined s the numer of ehvior instnes on the longest pth from the first strting ehvior instne to the lst ending ehvior instne, while prllel-eeuted instnes n e eeuted simultneously lgorithms for Instne Struture Optimiztion We implemented two lgorithms for instne struture optimiztion: SP(s soon s possile) lgorithm nd onstrutive lgorithm SP lgorithm lgorithm 1 outlines the SP lgorithm for instne struture optimiztion for eh sequentil ehvior. is n instne group tht ontins set of ehvior instnes in sequentil ehviors. Hier_Strut denotes the generted hierrhil prllel struture ontining link of groups, eh of whih is eeuted sequentilly from the hed to the til of the link. The funtion ependenton() returns Φ if no ehvior instne on whih depends is in, otherwise it returns the first instne on whih depends. urgroup.ppend() inserts to group urgroup. ll the instnes in urgroup re eeuted prllel. fter the eeution of for loop eh time, urgroup reords set of prllel eeuting ehvior instnes. Hier_Strut.ppend(urGroup) then ppends the urrent urgroup t the end of the link of Hier_Strut. Figure 2() is the hierrhil prllel struture generted y SP lgorithm. The SP lgorithm hs only gol (), whih is to minimize the length of the ritil pth. It gives the optiml solution in terms of the ritil pth ut my dd lrge mount of dependenies mong ehvior instnes. lgorithm 1: SP lgorithm. = {ll the ehvior instnes}; Hier_Strut = {}; while Φ do urgroup = {}; for eh instne i do if ependenton(i ) = Φ then urgroup = urgroup.ppend(i, Pr); = - {i ); do endfor Hier_Strut = Hier_Strut.ppend(urGroup, Sequ); do onstrutive lgorithm esides SP lgorithm, we lso implemented onstrutive lgorithm. The onstrutive lgorithm shedules one ehvior instne t time in the order of the eeution sequene in the originl sequentil ehvior nd produes temporl hierrhil prllel struture. It is onstrutive euse it onstruts the hierrhil prllel struture without performing ny ktrking, i.e. hnging the previously produed temporl struture. The onstrutive lgorithm hs oth gols () nd () during instne struture optimiztion. Figure 2(d) is the hierrhil prllel struture generted y the onstrutive lgorithm t Struture of Hierrhil Prllel Struture efore introduing the onstrutive lgorithm, we first speify the dt struture for the hierrhil prllel struture in the lgorithm. Eh hierrhil prllel struture is represented y dt struture PrGroup. Eh PrGroup ontins set/link of hild PrGroups, or link of ehvior instnes. The items in the links re eeuted sequentilly from hed to til of the link. The items in the set re eeuted prllel. Figure 5 shows three types of PrGroups. Flt PrGroup ontins ehvior instne link without ny hild PrGroups. Pr PrGroup ontins set of hild PrGroups. Sequ PrGroup ontins link of hild PrGroups. 4

9 G1 G1 G1 (efore) (fter) result = {} () se 1: no instntition in group(efore) () G1 is Flt PrGroup () G1 is Pr PrGroup Figure 5: Three types of PrGroup () G1 is Sequ PrGroup (efore) (fter) new_group = {} result = { {,, }, {} } lgorithm Overview lgorithm 2.1 outlines the onstrutive lgorithm. The ehvior instne link ontins ll of the ehvior instnes of the sequentil ehvior, whih re sved in the order of eeution sequene of the sequentil ehvior. Strting from the hed of link, n instne of is inserted into PrGroup Hier_Strut t time y funtion Insert. Funtion Insert lls different inserting funtions ording to the type of Hier_Strut. fter ll of the instnes in re inserted, Hier_Strut represents the finl hierrhil prllel struture. lgorithm 2.1: The onstrutive lgorithm = {ll the ehvior instnes} Hier_Strut = {}; () se 2: does not depends on,, (efore) () se 3: depends on, (fter) result = {,,, } for eh instne i do Insert(Hier_Strut, i); endfor Funtion Insert(Hier_Strut, ) swith Type(Hier_Strut) do se FLT: Hier_Strut = InsertToFlt(Hier_Strut, i ); rek; se PR: Hier_Strut = InsertToPr(Hier_Strut, i); rek; se SEQU: Hier_Strut = InsertToSequ(Hier_Strut, i ); endswith (efore) (d) se 4: depends on, (fter) new_group1 = {} new_group2 = {} new_group3 = {, } new_group4 ={ {}, {} } result = { {, }, { {}, {} } } Figure 6: Four ses of inserting instne to Flt PrGroup. 5

10 Insert to Flt PrGroup lgorithm 2.2 outlines the funtion InsertToFlt tht inserts n instne to Flt PrGroup Hier_Strut. InsertToFlt ontins four different ses ording to different dependeny reltions etween nd instnes in Hier_Strut s instne links. The result reords the produed hierrhil prllel struture. The emples of the four ses re displyed in Figure 6. lgorithm 2.2: InsertToFlt(Hier_Strut, ) // se 1 if NoInstInGroup(Hier_Strut) = 1 do result = ppendinst(hier_strut, ); // se 2 else if NotependOnGroup(Hier_Strut, ) = 1 do new_group = Group(, FLT); result = Group(Hier_Strut, new_group, PR) // se 3 else if ependonlstinst(hier_strut, ) = 1 do result = ppendinst(hier_strut, ); // se 4 else if d1 = FindLstependInst(Hier_Strut, ); new_group1 = Group(, FLT); new_group2 = Group( llsu(hier_strut,d1),flt); new_group3 = Group( llpred(hier_strut,d1),flt); new_group4 = Group( new_group1, new_group2, PR); result = Group(new_group3, new_group4, SEQU); endif return result; In the first se, funtion NoInstInGroup finds whether Hier_Strut s instne link ontins ny instnes. If not, is inserted in to the link y funtion ppendinst. In the seond se, if funtion NotependOnGroup finds tht does not depend on ny instnes in the link, then funtion Group retes new Flt PrGroup new_group ontining only nd retes new Pr PrGroup result whih ontins Hier_Strut nd new_group s its hild PrGroups. In the third se, funtion ependonlstinst finds whether depends on the lst instne in the link. If so, ppendinst ppends to the end of the instne link of Hier_Strut. In the lst se, funtion FindLstependInst finds the ltest instne d1 on whih depends. The ltest instne refers to the instne tht is most lose to the til of the instne link of Hier_Strut. New_group1 is new Flt PrGroup ontining. New_group2 is nother new Flt PrGroup ontining ll the instnes following d1 in the instne link of Hier_Strut. The instnes in New_group2 re stored in New_group2 s instne link in the sme order s tht of Hier_Strut. New_group3 is the third new Flt PrGroup tht ontins ll the instnes in front of d1 inlusively, sved in the sme order s tht of Hier_Sturt. New_group4 is Pr PrGroup ontining new_group1 nd new_group2. The result is new Sequ PrGroup ontining new_group3 followed y new_group4 in its hild PrGroup link Insert to Pr PrGroup lgorithm 2.3 outlines the funtion InsertToPr tht inserts n instne to Pr PrGroup Hier_Strut. InsertToPr ontins three different ses ording to different dependeny reltions etween nd hild PrGroups in Hier_Strut s instne. We define tht n instne depends on PrGroup if nd only if depends on t lest one instne in PrGroup. The result reords the produed hierrhil prllel struture. The emples of the three ses re displyed in Figure 7. lgorithm 2.3: InsertToPr(Hier_Strut, ) // se 1 if NotependOnhildGroup(Hier_Strut, ) = 1 do new_group = Group(, FLT); result = ddhildgroup(hier_strut, new_group); // se 2 else if ependononehildgroup(hier_strut, ) = 1 do su_group = FindependhildGroup(Hier_Strut, ); result = Insert(su_group, ); // se 3 else if new_group1 = Group(, FLT); new_group2 = Group( ependhildgroup(hier_strut,d1),pr); new_group3 = Group(IndependhildGroup(Hier_Strut,d1),PR); new_group4 = Group( new_group2, new_group1, SEQU); result = Group(new_group3, new_group4, PR); endif In the first se, if funtion NotependOnhildGroup finds tht does not depend on ny hild PrGroups of Hier_Strut, then funtion Group retes new Flt PrGroup new_group ontining. Funtion ddhildgroup then dds new_group into Hier_Strut s its hild PrGroup. In the seond se, if funtion ependononehildgroup finds tht only depends on one hild PrGroup of Hier_strut denoted y su_group, then funtion Insert desried in lgorithm 2.1 inserts to su_group. In the lst se, if depends on more thn one hild PrGroups of Hier_strut, then five new PrGroups will e produed. New_group1 is Flt PrGroup ontining. New_group2 is Pr PrGroup ontining ll the hild PrGroups of Hier_strut tht depends on. New_group3 is Pr PrGroup ontining ll the hild PrGroups of 6

11 Hier_strut tht does not depend on. New_group4 is Sequ PrGroup ontining new_group2 followed y new_group1 in this hild PrGroup link. Finlly, the result is Pr PrGroup ontining hild PrGroup new_group3 nd new_group4 in its hild PrGroup set. (efore) () se 1: does not depend on,, nd. new_group = {} result = { {}, {}, {}, {} } () se 2: depends on. is inserted to 's PrGroup y Insert result = { {}, {, }, {} } new_group1 = {} new_group2 = { {}, {} } new_group3 = {} new_group4 = { { {}, {} }, {} } result = { { { {}, {} }, {} }, {} } () se 3: depends on nd Figure 7: Three ses of inserting instne to Pr PrGroup. PrGroups in Hier_Strut. The emples of the three ses re displyed in Figure 8. lgorithm 2.4: InsertToSequ(Hier_Strut, ) // se 1 if NotependOnhildGroup(Hier_Strut, ) = 1 do new_group = Group(, FLT); result = result = ddhildgroup(hier_strut, new_group); // se 2 else if ependonlsthildgroup(hier_strut, ) = 1 do hild_group = FindLsthildGroup(Hier_Strut); result = Insert(hild_group, ); // se 3 else if lst_depend_hild = FindLstependhildGroup (Hier_Strut, ); net_hild = Net(lst_depend_hild); solution1 = Insert(lst_depend_hild, ); solution2 = Insert(net_hild, ) result = est(solution1, solution2); The first se of InsertToSequ is the sme s the first se of InsertToPr. In the seond se, if funtion ependonlsthildgroup finds tht depends on the til PrGroup of hild PrGroup link of Hier_strut, then funtion Insert desried in lgorithm 2.1 inserts to this hild PrGroup hild_group. In the third se, funtion FindLstependhildGroup finds lst_depend_group, whih is the hild PrGroup in its hild PrGroup link tht is most losest to the til of its hild PrGroup link, mong the hild PrGroups on whih depends. Net_hild is the immedite suessive hild PrGroup of lst_depend_group in the link. Then two lternte solutions, inserting in lst_depend_group nd inserting in net_hild, re eplored. The first solution ensures tht its mount of dded dependenies re not greter thn tht of the seond solution, while the seond solution ensures tht its length of ritil pth is not longer thn tht of the first solution. Finlly, funtion est hooses the solution1 in the se tht the length of ritil pth of solution1 is not longer thn tht of solution2. Otherwise, est hooses solution2 s the result Insert to Sequ PrGroup lgorithm 2.4 outlines the funtion InsertToSequ tht inserts n instne to Sequ PrGroup Hier_Strut. InsertToSequ ontins three different ses ording to different dependeny reltions etween nd hild 7

12 d e f d e f (efore) new_group = {} result = {{ {}, {} }, {} } () se 1: does not depend on nd result = { {}, {,} } () se 2: depends on () ependenies mong instntitions () Solution1: SP lgorithm's result d d () se3 - solution1 (d) se3 - solution2 e f () Solution2: onstrutive lgorithm 's result e (d) Solution3: improved result f lst_depend_hild = {} net_hild = {} result = { {}, { {}, {} } } se 3: depends on. Solution2 is the result Figure 8: Three ses of inserting instne to Sequ PrGroup. 3 Speifition Modeling Proess We introdue the proess of speifition modeling using the spe profiler nd the spe optimizer, whih ontins three steps. First, designers write Spe speifition model y referening originl /++ ode. esigners n speify top level prllelism mong ehvior instnes ording to design lgorithms/stndrds. Seond, designers use the spe profiler nd the spe optimizer. The tools red Spe speifition model nd generte hierrhil prllel strutures in the formt of teturl file for sequentil ehviors. Third, designers optimize the speifition model sed either on the result of SP lgorithm or on the result of the onstrutive lgorithm. Figure 9: n emple of designers improvements on the results of onstrutive lgorithm In the third step, designers n lso hnge the result of onstrutive lgorithm y referening SP lgorithm for shorter ritil pth, whih is illustrted in Figure 9. y referening the result of SP lgorithms shown in Figure 9(), designers n hnge the result of onstrutive lgorithm shown in Figure 9(), to prllel eeute instne e nd f. s shown Figure 9(d), the improved solution hs the shorter ritil pth thn the solution in Figure 9(). Tle 1 gives overview of three solutions. Tle 1 : Overview of three solutions for the emple in Figure 9 dded ependeny Length of ritil pth SP 4 3 onstrutive 1 4 Improved 2 3 8

13 4 Eperimentl results We evlute the effiieny of the spe profiler nd the spe optimizer in terms of design time, the length of the ritil pth of the resulting hierrhil prllel struture, nd the dded dependenies of the resulting struture. We hose four sets of testing emples. First, we hose three emples for ompring the mnul prlleliztion with the utomti prlleliztion. Seond, we hose ehviors with no more thn 10 instnes. Third, we hose ehviors with more thn 20 instnes. Finlly, we hose rel projet emples. 4.1 Mnul Prlleliztion vs. utomti Prlleliztion First, we evlute the effiieny of the spe profiler nd the spe optimizer in terms of design time. We rndomly generted three sequentil ehviors, two of whih ontins 10 ehvior instnes, the rest of whih ontins 20 ehvior instnes. The required design time for the mnul prlleliztion is listed in Tle 2. Tle 2 lso shows tht the mnul prlleliztion nnot nlyze dynmi dependeny. Tle 2: esign time of the mnul prlleliztion. Mnul design tsks nlyze stti dependeny nlyze dynmi dependeny E. 1 (10 inst.) esign time (mins) E. 2 (10 inst.) E. 3 (20 inst.) Not vl. Not vl. Not vl. SP onstrutive Totl In ontrst to 11/11/39 minutes required y the mnul prlleliztion in the emples, the utomti prlleliztion took less thn 3 seonds for eh emple, whih is 220/220/780 times fster thn the time for the mnul prlleliztion. s the ompleity of design inreses, designers n sve more time y using the tools. 4.2 Results for 10 Instne Emples Tle 3: Results for 10 instne emples E1 E2 E3 E4 E5 Originl Num. instntition Num. depedeny Length. P onstrutive lgorithm Num. depedeny Length. P dded dependeny (%) 28.57% 14.71% 15.38% 4.55% 2.78% Redued P (%) 50.00% 20.00% 60.00% 50.00% 30.00% SP lgorithm Num. ependeny Length. P dded ependeny (%) 71.43% 23.53% % 72.73% 11.11% Redued P (%) % 30.00% 60.00% 50.00% 40.00% We rndomly generted 5 ehviors, eh of whih ontins no more thn 10 instnes. Tle 3 shows the results of prlleliztion optimiztion for the emples. Length. P represents the length of ritil pth. Num. dependeny represents the numer of stti dependenies mong instnes of ehvior. dded dependeny (%) is equl to the differene etween Num. dependeny(originl) nd Num. dependeny(onstrutive/sp lgorithm) divided y Num. dependeny(originl). Redued P(%) is equl to the differene etween Length. P (Originl) nd Length. P (onstrutive/sp lgorithm) divided y Length. P(Originl). Tle 3 shows tht the verge dded dependeny for the onstrutive lgorithm is 13.2%, while for SP lgorithm is 65.0%. Therefore, onstrutive lgorithm is muh etter thn SP lgorithm in terms of gol () desried in On the other hnd, the verge Redued P for the onstrutive lgorithm is 42%, while for the SP lgorithm is 46%, oth of whih re similr. y onsidering the numer of dependeny s well s the length of the ritil pth, we onlude tht the onstrutive lgorithm is etter for 10 instne ehviors. 4.3 Results for 20 Instne Emples We generted nother five emples shown in Tle 4, eh of whih hs no less thn 20 instnes. E6 nd E9 do not hve lolity ttriute, while E7, E8, nd E10 hve. For ehvior without lolity ttriute, the instne hs the sme proility of hving dependent reltions with ny other instnes. For ehvior with lolity ttriute, the instne hs lrger proility of hving dependent reltions with instnes lose to it thn 9

14 instnes not lose to it. The loseness etween two instnes is equl to the numer of instnes etween them during the eeution of originl sequentil ehvior. ttriute lolity eists in most designs. In this pper, when the loseness of two instnes is no more thn 4, we lled them lose instnes. For E7, E8, nd E10, eh instne n depend on ny lose instnes, ut n depend on only one un-lose instne. Tle 4: Results for instne emples E. 6 E. 7 E. 8 E. 9 E. 10 Originl trriute rndom lolity lolity rndom lolity Num. Instntition Num. ependeny Length. P onstrutive lgorithm Num. epedeny Length. P dded ependeny (%) 61.22% 42.11% 59.49% 69.95% % Redued P (%) 45.00% 60.00% 66.67% 60.00% 76.67% SP lgorithm Num. epedeny Length. P dded ependeny (%) 72.45% 82.11% % % % Redued P (%) 65.00% 60.00% 66.67% 66.67% 76.67% Tle 4 shows tht the verge dded dependeny for the onstrutive lgorithm is 70%, while for SP lgorithm is 128%. lthough dded dependeny of onstrutive lgorithm is muh etter thn SP lgorithm, they re muh worse thn the results for 10 instne ehviors. It is resonle euse lter eeuted instnes will dd more dependenies thn the previous ones. On the other hnd, the verge Redued P for the onstrutive lgorithm is 61%, while for SP lgorithm is 67%, oth of whih re similr. Oviously, Redued Ps of 20 instne ehviors re greter thn the results of 10 instne ehviors. Furthermore, we do more reserh on emple 7, 8, nd 10 for ehviors with lolity ttriute. We find tht the Redued Ps of onstrutive lgorithm nd SP lgorithm re the sme for these emples. euse of this nd the nlysis on the onstrutive lgorithm, we onlude tht the proility of hving similr length of ritil pth of the results of SP nd onstrutive lgorithm for ehviors with lolity ttriute is lrger thn the proility for ehviors without lolity ttriute. Therefore, onstrutive lgorithm is more suitle for ehviors with lolity ttriute. 4.4 Rel Projet Emples Tle 5: Results for JPEG nd Voode Projet Emples JPEG_Init (Jpeg) Pre_ proess (vooder) E_syn_ upd_sh (vooder) Lp_ nlysis (vooder) Originl Num. Instntition Num. ependeny Length. P onstrutive lgorithm Num. epedeny Length. P dded ependeny (%) 0.00% 0.00% 0.00% 0.00% Redued P (%) 33.33% 33.33% 40.00% 33.33% SP lgorithm Num. epedeny Length. P dded ependeny (%) 0.00% 0.00% 0.00% 6.67% Redued P (%) 33.33% 33.33% 40.00% 33.33% We use the spe profiler nd the spe optimizer on JPEG projet[6] nd Vooder projet[7]. lthough designers hve implemented the prlleliztion optimiztion mnully for the projets, the tools still found prlleliztion instnes eisting in four sequentil ehviors shown in Tle 5. We updted the speifition sed on the produed hierrhil prllel strutures nd hd the sme simultion results with the originl speifitions. It proves tht using the tools re more relile thn implementing prlleliztion optimiztion mnully. In ddition to sequentil ehviors shown in Tle 5, the tools lso found tht sequentil ehvior oder_12k2 of Vooder ontined ehvior instnes eeuted in prllel. However, the simultion result of updted speifition ording to the tools is different from the simultion result of the originl speifition. The reson for this differene is tht n ddress of oder_12k2 s port is ssigned s vlue to n ddress of nother oder_12k2 s port. Sine the tsk dependeny nlysis ould not tret red/write ess of the seond port s the red/write ess of the first port, the tools produed wrong result. To prevent this from hppening, designers need to void ddress trnsfer etween ports in the speifition. 10

15 5 onlusion This pper introdues the prlleliztion optimiztion for speifition tuning. Prlleliztion optimiztion is ritil optimiztion for design speifition, whih will e used for the PE llotion nd ehvior inding. [6] Luki i, Junyu Peng et l. esign of JPEG Enoding System, University of liforni, Irvine, Tehnil Report IS-99-54, Nov [7] ndres Gerstluer, Shuqing Zho et l. esign of GSM Vooder using Spe Methodology, University of liforni, Irvine, Tehnique report IS-99-11, Fe We introdue two tools for prlleliztion optimiztion. The spe profiler nlyzes the stti nd dynmi dependenies mong ehvior instnes. The spe optimizer produes the hierrhil prllel struture sed on SP lgorithm nd onstrutive lgorithm. In omprison to the mnul prlleliztion, the utomti prlleliztion hs three dvntges. First, it shortens the design time. The utomti prlleliztion is 200 times fster thn the mnul prlleliztion for 10-instne ehviors, 700 times fster for 20-instne ehviors. s the ompleity of design inreses, the utomti prlleliztion n sve more time. Seond, it genertes required hierrhil prllel strutures. SP lgorithm produes the optiml strutures in terms of the length of the ritil pth. onstrutive lgorithm produes the strutures tht hve the similr length of the ritil pth s tht of the SP lgorithm nd hve the muh smller numer of dded dependenies mong ehvior instnes thn tht of SP lgorithm. Third, it optimizes every possile prllelism in the design. We lso find tht with the inrese in the numer of instnes of ehviors, or with the loss of ehvior s lolity ttriute, it is impossile to keep oth the length of the ritil pth nd the mount of the dded dependenies to minimum for generted strutures. This is due to the nture of the prolem rther thn the limittion of the tools. Referene [1]. Gjski Silion ompilers, ddison-wesley, 1987 [2]. Gjski, J. Zhu et l. Spe: Speifition lnugeg nd esign methodology Kluwer demi Pulishers, 2000 [3]. Gerstluer, R. omer, et l. System esign: prtil guide of with Spe. Kluwer demi Pulishers 2001 [4] [5] Luki i, n Gjski, Introdution of esign-oriented Profiler of Spe Lnguge, University of liforni, Irvine, Tehnil Report IS-00-47, June

CS 241 Week 4 Tutorial Solutions

CS 241 Week 4 Tutorial Solutions CS 4 Week 4 Tutoril Solutions Writing n Assemler, Prt & Regulr Lnguges Prt Winter 8 Assemling instrutions utomtilly. slt $d, $s, $t. Solution: $d, $s, nd $t ll fit in -it signed integers sine they re 5-it

More information

Error Numbers of the Standard Function Block

Error Numbers of the Standard Function Block A.2.2 Numers of the Stndrd Funtion Blok evlution The result of the logi opertion RLO is set if n error ours while the stndrd funtion lok is eing proessed. This llows you to rnh to your own error evlution

More information

CMPUT101 Introduction to Computing - Summer 2002

CMPUT101 Introduction to Computing - Summer 2002 CMPUT Introdution to Computing - Summer 22 %XLOGLQJ&RPSXWHU&LUFXLWV Chpter 4.4 3XUSRVH We hve looked t so fr how to uild logi gtes from trnsistors. Next we will look t how to uild iruits from logi gtes,

More information

Midterm Exam CSC October 2001

Midterm Exam CSC October 2001 Midterm Exm CSC 173 23 Otoer 2001 Diretions This exm hs 8 questions, severl of whih hve suprts. Eh question indites its point vlue. The totl is 100 points. Questions 5() nd 6() re optionl; they re not

More information

Internet Routing. IP Packet Format. IP Fragmentation & Reassembly. Principles of Internet Routing. Computer Networks 9/29/2014.

Internet Routing. IP Packet Format. IP Fragmentation & Reassembly. Principles of Internet Routing. Computer Networks 9/29/2014. omputer Networks 9/29/2014 IP Pket Formt Internet Routing Ki Shen IP protool version numer heder length (words) for qulity of servie mx numer remining hops (deremented t eh router) upper lyer protool to

More information

Duality in linear interval equations

Duality in linear interval equations Aville online t http://ijim.sriu..ir Int. J. Industril Mthemtis Vol. 1, No. 1 (2009) 41-45 Dulity in liner intervl equtions M. Movhedin, S. Slhshour, S. Hji Ghsemi, S. Khezerloo, M. Khezerloo, S. M. Khorsny

More information

Paradigm 5. Data Structure. Suffix trees. What is a suffix tree? Suffix tree. Simple applications. Simple applications. Algorithms

Paradigm 5. Data Structure. Suffix trees. What is a suffix tree? Suffix tree. Simple applications. Simple applications. Algorithms Prdigm. Dt Struture Known exmples: link tble, hep, Our leture: suffix tree Will involve mortize method tht will be stressed shortly in this ourse Suffix trees Wht is suffix tree? Simple pplitions History

More information

COMP 423 lecture 11 Jan. 28, 2008

COMP 423 lecture 11 Jan. 28, 2008 COMP 423 lecture 11 Jn. 28, 2008 Up to now, we hve looked t how some symols in n lphet occur more frequently thn others nd how we cn sve its y using code such tht the codewords for more frequently occuring

More information

Lecture 8: Graph-theoretic problems (again)

Lecture 8: Graph-theoretic problems (again) COMP36111: Advned Algorithms I Leture 8: Grph-theoreti prolems (gin) In Prtt-Hrtmnn Room KB2.38: emil: iprtt@s.mn..uk 2017 18 Reding for this leture: Sipser: Chpter 7. A grph is pir G = (V, E), where V

More information

Enterprise Digital Signage Create a New Sign

Enterprise Digital Signage Create a New Sign Enterprise Digitl Signge Crete New Sign Intended Audiene: Content dministrtors of Enterprise Digitl Signge inluding stff with remote ess to sign.pitt.edu nd the Content Mnger softwre pplition for their

More information

CS553 Lecture Introduction to Data-flow Analysis 1

CS553 Lecture Introduction to Data-flow Analysis 1 ! Ide Introdution to Dt-flow nlysis!lst Time! Implementing Mrk nd Sweep GC!Tody! Control flow grphs! Liveness nlysis! Register llotion CS553 Leture Introdution to Dt-flow Anlysis 1 Dt-flow Anlysis! Dt-flow

More information

Chapter 9. Greedy Technique. Copyright 2007 Pearson Addison-Wesley. All rights reserved.

Chapter 9. Greedy Technique. Copyright 2007 Pearson Addison-Wesley. All rights reserved. Chpter 9 Greey Tehnique Copyright 2007 Person Aison-Wesley. All rights reserve. Greey Tehnique Construts solution to n optimiztion prolem piee y piee through sequene of hoies tht re: fesile lolly optiml

More information

Distance vector protocol

Distance vector protocol istne vetor protool Irene Finohi finohi@i.unirom.it Routing Routing protool Gol: etermine goo pth (sequene of routers) thru network from soure to Grph strtion for routing lgorithms: grph noes re routers

More information

McAfee Web Gateway

McAfee Web Gateway Relese Notes Revision C MAfee We Gtewy 7.6.2.11 Contents Aout this relese Enhnement Resolved issues Instlltion instrutions Known issues Additionl informtion Find produt doumenttion Aout this relese This

More information

Lesson 4.4. Euler Circuits and Paths. Explore This

Lesson 4.4. Euler Circuits and Paths. Explore This Lesson 4.4 Euler Ciruits nd Pths Now tht you re fmilir with some of the onepts of grphs nd the wy grphs onvey onnetions nd reltionships, it s time to egin exploring how they n e used to model mny different

More information

Type Checking. Roadmap (Where are we?) Last lecture Context-sensitive analysis. This lecture Type checking. Symbol tables

Type Checking. Roadmap (Where are we?) Last lecture Context-sensitive analysis. This lecture Type checking. Symbol tables Type Cheking Rodmp (Where re we?) Lst leture Contet-sensitie nlysis Motition Attriute grmmrs Ad ho Synt-direted trnsltion This leture Type heking Type systems Using synt direted trnsltion Symol tles Leil

More information

Calculus Differentiation

Calculus Differentiation //007 Clulus Differentition Jeffrey Seguritn person in rowot miles from the nerest point on strit shoreline wishes to reh house 6 miles frther down the shore. The person n row t rte of mi/hr nd wlk t rte

More information

Lecture 12 : Topological Spaces

Lecture 12 : Topological Spaces Leture 12 : Topologil Spes 1 Topologil Spes Topology generlizes notion of distne nd loseness et. Definition 1.1. A topology on set X is olletion T of susets of X hving the following properties. 1. nd X

More information

CS453 INTRODUCTION TO DATAFLOW ANALYSIS

CS453 INTRODUCTION TO DATAFLOW ANALYSIS CS453 INTRODUCTION TO DATAFLOW ANALYSIS CS453 Leture Register llotion using liveness nlysis 1 Introdution to Dt-flow nlysis Lst Time Register llotion for expression trees nd lol nd prm vrs Tody Register

More information

4.3 Balanced Trees. let us assume that we can manipulate them conveniently and see how they can be put together to form trees.

4.3 Balanced Trees. let us assume that we can manipulate them conveniently and see how they can be put together to form trees. 428 T FOU 4.3 Blned Trees T BT GOIT IN T VIOU setion work well for wide vriety of pplitions, ut they hve poor worst-se performne. s we hve noted, files lredy in order, files in reverse order, files with

More information

The Network Layer: Routing in the Internet. The Network Layer: Routing & Addressing Outline

The Network Layer: Routing in the Internet. The Network Layer: Routing & Addressing Outline CPSC 852 Internetworking The Network Lyer: Routing in the Internet Mihele Weigle Deprtment of Computer Siene Clemson University mweigle@s.lemson.edu http://www.s.lemson.edu/~mweigle/ourses/ps852 1 The

More information

Distance Computation between Non-convex Polyhedra at Short Range Based on Discrete Voronoi Regions

Distance Computation between Non-convex Polyhedra at Short Range Based on Discrete Voronoi Regions Distne Computtion etween Non-onvex Polyhedr t Short Rnge Bsed on Disrete Voronoi Regions Ktsuki Kwhi nd Hiroms Suzuki Deprtment of Preision Mhinery Engineering, The University of Tokyo 7-3-1 Hongo, Bunkyo-ku,

More information

Introduction to Algebra

Introduction to Algebra INTRODUCTORY ALGEBRA Mini-Leture 1.1 Introdution to Alger Evlute lgeri expressions y sustitution. Trnslte phrses to lgeri expressions. 1. Evlute the expressions when =, =, nd = 6. ) d) 5 10. Trnslte eh

More information

CS 551 Computer Graphics. Hidden Surface Elimination. Z-Buffering. Basic idea: Hidden Surface Removal

CS 551 Computer Graphics. Hidden Surface Elimination. Z-Buffering. Basic idea: Hidden Surface Removal CS 55 Computer Grphis Hidden Surfe Removl Hidden Surfe Elimintion Ojet preision lgorithms: determine whih ojets re in front of others Uses the Pinter s lgorithm drw visile surfes from k (frthest) to front

More information

CS 340, Fall 2016 Sep 29th Exam 1 Note: in all questions, the special symbol ɛ (epsilon) is used to indicate the empty string.

CS 340, Fall 2016 Sep 29th Exam 1 Note: in all questions, the special symbol ɛ (epsilon) is used to indicate the empty string. CS 340, Fll 2016 Sep 29th Exm 1 Nme: Note: in ll questions, the speil symol ɛ (epsilon) is used to indite the empty string. Question 1. [10 points] Speify regulr expression tht genertes the lnguge over

More information

10.2 Graph Terminology and Special Types of Graphs

10.2 Graph Terminology and Special Types of Graphs 10.2 Grph Terminology n Speil Types of Grphs Definition 1. Two verties u n v in n unirete grph G re lle jent (or neighors) in G iff u n v re enpoints of n ege e of G. Suh n ege e is lle inient with the

More information

Greedy Algorithm. Algorithm Fall Semester

Greedy Algorithm. Algorithm Fall Semester Greey Algorithm Algorithm 0 Fll Semester Optimiztion prolems An optimiztion prolem is one in whih you wnt to fin, not just solution, ut the est solution A greey lgorithm sometimes works well for optimiztion

More information

P(r)dr = probability of generating a random number in the interval dr near r. For this probability idea to make sense we must have

P(r)dr = probability of generating a random number in the interval dr near r. For this probability idea to make sense we must have Rndom Numers nd Monte Crlo Methods Rndom Numer Methods The integrtion methods discussed so fr ll re sed upon mking polynomil pproximtions to the integrnd. Another clss of numericl methods relies upon using

More information

Minimal Memory Abstractions

Minimal Memory Abstractions Miniml Memory Astrtions (As implemented for BioWre Corp ) Nthn Sturtevnt University of Alert GAMES Group Ferury, 7 Tlk Overview Prt I: Building Astrtions Minimizing memory requirements Performnes mesures

More information

GENG2140 Modelling and Computer Analysis for Engineers

GENG2140 Modelling and Computer Analysis for Engineers GENG4 Moelling n Computer Anlysis or Engineers Letures 9 & : Gussin qurture Crete y Grn Romn Joles, PhD Shool o Mehnil Engineering, UWA GENG4 Content Deinition o Gussin qurture Computtion o weights n points

More information

CS201 Discussion 10 DRAWTREE + TRIES

CS201 Discussion 10 DRAWTREE + TRIES CS201 Discussion 10 DRAWTREE + TRIES DrwTree First instinct: recursion As very generic structure, we could tckle this problem s follows: drw(): Find the root drw(root) drw(root): Write the line for the

More information

Package Contents. Wireless-G USB Network Adapter with SpeedBooster USB Cable Setup CD-ROM with User Guide (English only) Quick Installation

Package Contents. Wireless-G USB Network Adapter with SpeedBooster USB Cable Setup CD-ROM with User Guide (English only) Quick Installation A Division of Ciso Systems, In. Pkge Contents Wireless-G USB Network Adpter with SpeedBooster USB Cle Setup CD-ROM with User Guide (English only) Quik Instlltion 2,4 GHz 802.11g Wireless Model No. Model

More information

Final Exam Review F 06 M 236 Be sure to look over all of your tests, as well as over the activities you did in the activity book

Final Exam Review F 06 M 236 Be sure to look over all of your tests, as well as over the activities you did in the activity book inl xm Review 06 M 236 e sure to loo over ll of your tests, s well s over the tivities you did in the tivity oo 1 1. ind the mesures of the numered ngles nd justify your wor. Line j is prllel to line.

More information

COMP108 Algorithmic Foundations

COMP108 Algorithmic Foundations Grph Theory Prudene Wong http://www.s.liv..uk/~pwong/tehing/omp108/201617 How to Mesure 4L? 3L 5L 3L ontiner & 5L ontiner (without mrk) infinite supply of wter You n pour wter from one ontiner to nother

More information

In the last lecture, we discussed how valid tokens may be specified by regular expressions.

In the last lecture, we discussed how valid tokens may be specified by regular expressions. LECTURE 5 Scnning SYNTAX ANALYSIS We know from our previous lectures tht the process of verifying the syntx of the progrm is performed in two stges: Scnning: Identifying nd verifying tokens in progrm.

More information

An Efficient Code Update Scheme for DSP Applications in Mobile Embedded Systems

An Efficient Code Update Scheme for DSP Applications in Mobile Embedded Systems An Effiient Code Updte Sheme for DSP Applitions in Moile Emedded Systems Weiji Li, Youto Zhng Computer Siene Deprtment,University of Pittsurgh,Pittsurgh, PA 526 {weijili,zhngyt}@s.pitt.edu Astrt DSP proessors

More information

[SYLWAN., 158(6)]. ISI

[SYLWAN., 158(6)]. ISI The proposl of Improved Inext Isomorphi Grph Algorithm to Detet Design Ptterns Afnn Slem B-Brhem, M. Rizwn Jmeel Qureshi Fulty of Computing nd Informtion Tehnology, King Adulziz University, Jeddh, SAUDI

More information

LINX MATRIX SWITCHERS FIRMWARE UPDATE INSTRUCTIONS FIRMWARE VERSION

LINX MATRIX SWITCHERS FIRMWARE UPDATE INSTRUCTIONS FIRMWARE VERSION Overview LINX MATRIX SWITCHERS FIRMWARE UPDATE INSTRUCTIONS FIRMWARE VERSION 4.4.1.0 Due to the omplex nture of this updte, plese fmilirize yourself with these instrutions nd then ontt RGB Spetrum Tehnil

More information

Fig.25: the Role of LEX

Fig.25: the Role of LEX The Lnguge for Specifying Lexicl Anlyzer We shll now study how to uild lexicl nlyzer from specifiction of tokens in the form of list of regulr expressions The discussion centers round the design of n existing

More information

Compiling a Parallel DSL to GPU

Compiling a Parallel DSL to GPU Compiling Prllel DSL to GPU Rmesh Nrynswmy Bdri Gopln Synopsys In. Synopsys 2012 1 Agend Overview of Verilog Simultion Prllel Verilog Simultion Algorithms Prllel Simultion Trdeoffs on GPU Chllenges Synopsys

More information

[Prakash* et al., 5(8): August, 2016] ISSN: IC Value: 3.00 Impact Factor: 4.116

[Prakash* et al., 5(8): August, 2016] ISSN: IC Value: 3.00 Impact Factor: 4.116 [Prksh* et l 58: ugust 6] ISSN: 77-9655 I Vlue: Impt Ftor: 6 IJESRT INTERNTIONL JOURNL OF ENGINEERING SIENES & RESERH TEHNOLOGY SOME PROPERTIES ND THEOREM ON FUZZY SU-TRIDENT DISTNE Prveen Prksh* M Geeth

More information

Width and Bounding Box of Imprecise Points

Width and Bounding Box of Imprecise Points Width nd Bounding Box of Impreise Points Vhideh Keikh Mrten Löffler Ali Mohdes Zhed Rhmti Astrt In this pper we study the following prolem: we re given set L = {l 1,..., l n } of prllel line segments,

More information

COSC 6374 Parallel Computation. Non-blocking Collective Operations. Edgar Gabriel Fall Overview

COSC 6374 Parallel Computation. Non-blocking Collective Operations. Edgar Gabriel Fall Overview COSC 6374 Prllel Computtion Non-loking Colletive Opertions Edgr Griel Fll 2014 Overview Impt of olletive ommunition opertions Impt of ommunition osts on Speedup Crtesin stenil ommunition All-to-ll ommunition

More information

FASTEST METHOD TO FIND ALTERNATIVE RE-ROUTE

FASTEST METHOD TO FIND ALTERNATIVE RE-ROUTE INTERNATIONAL JOURNAL OF RESEARCH IN COMPUTER APPLICATIONS AND ROBOTICS ISSN 2320-7345 FASTEST METHOD TO FIND ALTERNATIVE RE-ROUTE 1 M.JothiLkshmi, M.S., M.Phil. 2 C.Theeendr, M.S., M.Phil. 3 M.K.Pvithr,

More information

Lecture 13: Graphs I: Breadth First Search

Lecture 13: Graphs I: Breadth First Search Leture 13 Grphs I: BFS 6.006 Fll 2011 Leture 13: Grphs I: Bredth First Serh Leture Overview Applitions of Grph Serh Grph Representtions Bredth-First Serh Rell: Grph G = (V, E) V = set of verties (ritrry

More information

c s ha2 c s Half Adder Figure 2: Full Adder Block Diagram

c s ha2 c s Half Adder Figure 2: Full Adder Block Diagram Adder Tk: Implement 2-it dder uing 1-it full dder nd 1-it hlf dder omponent (Figure 1) tht re onneted together in top-level module. Derie oth omponent in VHDL. Prepre two implementtion where VHDL omponent

More information

Pattern Matching. Pattern Matching. Pattern Matching. Review of Regular Expressions

Pattern Matching. Pattern Matching. Pattern Matching. Review of Regular Expressions Pttern Mthing Pttern Mthing Some of these leture slides hve een dpted from: lgorithms in C, Roert Sedgewik. Gol. Generlize string serhing to inompletely speified ptterns. pplitions. Test if string or its

More information

CS321 Languages and Compiler Design I. Winter 2012 Lecture 5

CS321 Languages and Compiler Design I. Winter 2012 Lecture 5 CS321 Lnguges nd Compiler Design I Winter 2012 Lecture 5 1 FINITE AUTOMATA A non-deterministic finite utomton (NFA) consists of: An input lphet Σ, e.g. Σ =,. A set of sttes S, e.g. S = {1, 3, 5, 7, 11,

More information

Troubleshooting. Verify the Cisco Prime Collaboration Provisioning Installation (for Advanced or Standard Mode), page

Troubleshooting. Verify the Cisco Prime Collaboration Provisioning Installation (for Advanced or Standard Mode), page Trouleshooting This setion explins the following: Verify the Ciso Prime Collortion Provisioning Instlltion (for Advned or Stndrd Mode), pge 1 Upgrde the Ciso Prime Collortion Provisioning from Smll to

More information

INTEGRATED WORKFLOW ART DIRECTOR

INTEGRATED WORKFLOW ART DIRECTOR ART DIRECTOR Progrm Resoures INTEGRATED WORKFLOW PROGRAM PLANNING PHASE In this workflow phse proess, you ollorte with the Progrm Mnger, the Projet Mnger, nd the Art Speilist/ Imge Led to updte the resoures

More information

Outline. Motivation Background ARCH. Experiment Additional usages for Input-Depth. Regular Expression Matching DPI over Compressed HTTP

Outline. Motivation Background ARCH. Experiment Additional usages for Input-Depth. Regular Expression Matching DPI over Compressed HTTP ARCH This work ws supported y: The Europen Reserh Counil, The Isreli Centers of Reserh Exellene, The Neptune Consortium, nd Ntionl Siene Foundtion wrd CNS-119748 Outline Motivtion Bkground Regulr Expression

More information

A decision support system prototype for fuzzy multiple objective optimization

A decision support system prototype for fuzzy multiple objective optimization EUSFLAT - LFA A eision support system prototype for fuzzy multiple ojetive optimiztion Fengjie Wu Jie Lu n Gungqun Zhng Fulty of Informtion Tehnology University of Tehnology Syney Austrli E-mil: {fengjiewjieluzhngg}@it.uts.eu.u

More information

SOFTWARE-BUG LOCALIZATION WITH GRAPH MINING

SOFTWARE-BUG LOCALIZATION WITH GRAPH MINING Chpter 17 SOFTWARE-BUG LOCALIZATION WITH GRAPH MINING Frnk Eihinger Institute for Progrm Strutures nd Dt Orgniztion (IPD) Universit-t Krlsruhe (TH), Germny eihinger@ipd.uk.de Klemens B-ohm Institute for

More information

this grammar generates the following language: Because this symbol will also be used in a later step, it receives the

this grammar generates the following language: Because this symbol will also be used in a later step, it receives the LR() nlysis Drwcks of LR(). Look-hed symols s eplined efore, concerning LR(), it is possile to consult the net set to determine, in the reduction sttes, for which symols it would e possile to perform reductions.

More information

Balanced Trees. 2-3 trees red-black trees B-trees. 2-3 trees red-black trees B-trees smaller than. 2-node. 3-node E J S X A C.

Balanced Trees. 2-3 trees red-black trees B-trees. 2-3 trees red-black trees B-trees smaller than. 2-node. 3-node E J S X A C. ymol tle review Blned Trees implementtion gurntee verge se serh insert delete serh hit insert delete ordered itertion? opertions on keys sequentil serh (linked list) N N N N/2 N N/2 no equls() 2-3 trees

More information

Slides for Data Mining by I. H. Witten and E. Frank

Slides for Data Mining by I. H. Witten and E. Frank Slides for Dt Mining y I. H. Witten nd E. Frnk Simplicity first Simple lgorithms often work very well! There re mny kinds of simple structure, eg: One ttriute does ll the work All ttriutes contriute eqully

More information

Towards Unifying Advances in Twig Join Algorithms

Towards Unifying Advances in Twig Join Algorithms Pro. 21st Austrlsin Dtse Conferene (ADC 2010), Brisne, Austrli Towrds Unifying Advnes in Twig Join Algorithms Nils Grimsmo Truls A. Bjørklund Deprtment of Computer nd Informtion Siene Norwegin University

More information

Advanced Programming Handout 5. Enter Okasaki. Persistent vs. Ephemeral. Functional Queues. Simple Example. Persistent vs.

Advanced Programming Handout 5. Enter Okasaki. Persistent vs. Ephemeral. Functional Queues. Simple Example. Persistent vs. Avne Progrmming Hnout 5 Purel Funtionl Dt Strutures: A Cse Stu in Funtionl Progrmming Persistent vs. Ephemerl An ephemerl t struture is one for whih onl one version is ville t time: fter n upte opertion,

More information

Inter-domain Routing

Inter-domain Routing COMP 631: NETWORKED & DISTRIBUTED SYSTEMS Inter-domin Routing Jsleen Kur Fll 2016 1 Internet-sle Routing: Approhes DV nd link-stte protools do not sle to glol Internet How to mke routing slle? Exploit

More information

Photovoltaic Panel Modelling Using a Stochastic Approach in MATLAB &Simulink

Photovoltaic Panel Modelling Using a Stochastic Approach in MATLAB &Simulink hotovolti nel Modelling Using Stohsti Approh in MATLAB &Simulink KAREL ZALATILEK, JAN LEUCHTER eprtment of Eletril Engineering University of efene Kouniov 65, 61 City of Brno CZECH REUBLIC krelzpltilek@unoz,

More information

From Dependencies to Evaluation Strategies

From Dependencies to Evaluation Strategies From Dependencies to Evlution Strtegies Possile strtegies: 1 let the user define the evlution order 2 utomtic strtegy sed on the dependencies: use locl dependencies to determine which ttriutes to compute

More information

Tries. Yufei Tao KAIST. April 9, Y. Tao, April 9, 2013 Tries

Tries. Yufei Tao KAIST. April 9, Y. Tao, April 9, 2013 Tries Tries Yufei To KAIST April 9, 2013 Y. To, April 9, 2013 Tries In this lecture, we will discuss the following exct mtching prolem on strings. Prolem Let S e set of strings, ech of which hs unique integer

More information

Selecting the Most Highly Correlated Pairs within a Large Vocabulary

Selecting the Most Highly Correlated Pairs within a Large Vocabulary Seleting the Most Highl Correlted Pirs within Lrge Voulr Koji Umemur Deprtment of Computer Siene Toohshi Universit of Tehnolog umemur@tutistutjp Astrt Ourene ptterns of words in douments n e epressed s

More information

Distributed Systems Principles and Paradigms. Chapter 11: Distributed File Systems

Distributed Systems Principles and Paradigms. Chapter 11: Distributed File Systems Distriuted Systems Priniples nd Prdigms Mrten vn Steen VU Amsterdm, Dept. Computer Siene steen@s.vu.nl Chpter 11: Distriuted File Systems Version: Deemer 10, 2012 2 / 14 Distriuted File Systems Distriuted

More information

COSC 6374 Parallel Computation. Communication Performance Modeling (II) Edgar Gabriel Fall Overview. Impact of communication costs on Speedup

COSC 6374 Parallel Computation. Communication Performance Modeling (II) Edgar Gabriel Fall Overview. Impact of communication costs on Speedup COSC 6374 Prllel Computtion Communition Performne Modeling (II) Edgr Griel Fll 2015 Overview Impt of ommunition osts on Speedup Crtesin stenil ommunition All-to-ll ommunition Impt of olletive ommunition

More information

Incremental Design Debugging in a Logic Synthesis Environment

Incremental Design Debugging in a Logic Synthesis Environment Inrementl Design Deugging in Logi Synthesis Environment Andres Veneris Jing Brndon Liu University of Toronto Freesle Semiondutors Dept ECE nd CS High Performne Tools Group Toronto, ON M5S 3G4 Austin, TX

More information

Lecture 10 Evolutionary Computation: Evolution strategies and genetic programming

Lecture 10 Evolutionary Computation: Evolution strategies and genetic programming Lecture 10 Evolutionry Computtion: Evolution strtegies nd genetic progrmming Evolution strtegies Genetic progrmming Summry Negnevitsky, Person Eduction, 2011 1 Evolution Strtegies Another pproch to simulting

More information

Table-driven look-ahead lexical analysis

Table-driven look-ahead lexical analysis Tle-riven look-he lexil nlysis WUU YANG Computer n Informtion Siene Deprtment Ntionl Chio-Tung University, HsinChu, Tiwn, R.O.C. Astrt. Moern progrmming lnguges use regulr expressions to efine vli tokens.

More information

What are suffix trees?

What are suffix trees? Suffix Trees 1 Wht re suffix trees? Allow lgorithm designers to store very lrge mount of informtion out strings while still keeping within liner spce Allow users to serch for new strings in the originl

More information

Efficient Subscription Management in Content-based Networks

Efficient Subscription Management in Content-based Networks Effiient Susription Mngement in Content-sed Networks Rphël Chnd, Psl A. Feler Institut EURECOM 06904 Sophi Antipolis, Frne {hnd feler}@eureom.fr Astrt Content-sed pulish/susrie systems offer onvenient

More information

6.045J/18.400J: Automata, Computability and Complexity. Quiz 2: Solutions. Please write your name in the upper corner of each page.

6.045J/18.400J: Automata, Computability and Complexity. Quiz 2: Solutions. Please write your name in the upper corner of each page. 6045J/18400J: Automt, Computbility nd Complexity Mrh 30, 2005 Quiz 2: Solutions Prof Nny Lynh Vinod Vikuntnthn Plese write your nme in the upper orner of eh pge Problem Sore 1 2 3 4 5 6 Totl Q2-1 Problem

More information

Shared Memory Architectures. Programming and Synchronization. Today s Outline. Page 1. Message passing review Cosmic Cube discussion

Shared Memory Architectures. Programming and Synchronization. Today s Outline. Page 1. Message passing review Cosmic Cube discussion Tody s Outline Arhitetures Progrmming nd Synhroniztion Disuss pper on Cosmi Cube (messge pssing) Messge pssing review Cosmi Cube disussion > Messge pssing mhine Shred memory model > Communition > Synhroniztion

More information

Distributed Systems Principles and Paradigms

Distributed Systems Principles and Paradigms Distriuted Systems Priniples nd Prdigms Christoph Dorn Distriuted Systems Group, Vienn University of Tehnology.dorn@infosys.tuwien..t http://www.infosys.tuwien..t/stff/dorn Slides dpted from Mrten vn Steen,

More information

If you are at the university, either physically or via the VPN, you can download the chapters of this book as PDFs.

If you are at the university, either physically or via the VPN, you can download the chapters of this book as PDFs. Lecture 5 Wlks, Trils, Pths nd Connectedness Reding: Some of the mteril in this lecture comes from Section 1.2 of Dieter Jungnickel (2008), Grphs, Networks nd Algorithms, 3rd edition, which is ville online

More information

Convex Hull Algorithms. Convex hull: basic facts

Convex Hull Algorithms. Convex hull: basic facts CG Leture D Conve Hull Algorithms Bsi fts Algorithms: Nïve, Gift wrpping, Grhm sn, Quik hull, Divide-nd-onquer Lower ound 3D Bsi fts Algorithms: Gift wrpping, Divide nd onquer, inrementl Conve hulls in

More information

Additional Measurement Algorithms in the Overhauser Magnetometer POS-1

Additional Measurement Algorithms in the Overhauser Magnetometer POS-1 Additionl Mesurement Algorithms in the Overhuser Mgnetometer POS-1 O.V. Denisov, A.Y. Denisov, V.A. Spunov (QM Lortory of Url Stte Tehnil University, Mir 19, Ekterinurg, 620002, Russi) J.L. Rsson (Royl

More information

MITSUBISHI ELECTRIC RESEARCH LABORATORIES Cambridge, Massachusetts. Introduction to Matroids and Applications. Srikumar Ramalingam

MITSUBISHI ELECTRIC RESEARCH LABORATORIES Cambridge, Massachusetts. Introduction to Matroids and Applications. Srikumar Ramalingam Cmrige, Msshusetts Introution to Mtrois n Applitions Srikumr Rmlingm MERL mm//yy Liner Alger (,0,0) (0,,0) Liner inepenene in vetors: v, v2,..., For ll non-trivil we hve s v s v n s, s2,..., s n 2v2...

More information

Computational geometry

Computational geometry Leture 23 Computtionl geometry Supplementl reding in CLRS: Chpter 33 exept 33.3 There re mny importnt prolems in whih the reltionships we wish to nlyze hve geometri struture. For exmple, omputtionl geometry

More information

Taming Subgraph Isomorphism for RDF Query Processing

Taming Subgraph Isomorphism for RDF Query Processing Tming Sugrph Isomorphism for RDF Query Proessing Jinh Kim # jinh.kim@orle.om Hyungyu Shin hgshin@dl.posteh..kr Wook-Shin Hn wshn@posteh..kr Sungpk Hong # Hssn Chfi # {sungpk.hong, hssn.hfi}@orle.om POSTECH,

More information

All in One Kit. Quick Start Guide CONNECTING WITH OTHER DEVICES SDE-4003/ * 27. English-1

All in One Kit. Quick Start Guide CONNECTING WITH OTHER DEVICES SDE-4003/ * 27. English-1 All in One Kit Quik Strt Guide SDE-00/00 CONNECTING WITH OTHER DEVICES Lol PC Brodnd Modem Brodnd Router or HUB CH CH CH CH 9 0 G 9 0 ALARM RS- OUT G DC V If you do not use the Internet, just follow the

More information

Compression Outline :Algorithms in the Real World. Lempel-Ziv Algorithms. LZ77: Sliding Window Lempel-Ziv

Compression Outline :Algorithms in the Real World. Lempel-Ziv Algorithms. LZ77: Sliding Window Lempel-Ziv Compression Outline 15-853:Algorithms in the Rel World Dt Compression III Introduction: Lossy vs. Lossless, Benchmrks, Informtion Theory: Entropy, etc. Proility Coding: Huffmn + Arithmetic Coding Applictions

More information

Don Thomas, 1998, Page 1

Don Thomas, 1998, Page 1 The Verilog Hrdwre Desription Lnguge Professor Don Thoms Crnegie Mellon University (CMU) thoms@ee.mu.edu http://www.ee.mu.edu/~thoms This is not one ohesive presenttion on Verilog. The slides ontined here

More information

Problem Final Exam Set 2 Solutions

Problem Final Exam Set 2 Solutions CSE 5 5 Algoritms nd nd Progrms Prolem Finl Exm Set Solutions Jontn Turner Exm - //05 0/8/0. (5 points) Suppose you re implementing grp lgoritm tt uses ep s one of its primry dt strutures. Te lgoritm does

More information

2 Computing all Intersections of a Set of Segments Line Segment Intersection

2 Computing all Intersections of a Set of Segments Line Segment Intersection 15-451/651: Design & Anlysis of Algorithms Novemer 14, 2016 Lecture #21 Sweep-Line nd Segment Intersection lst chnged: Novemer 8, 2017 1 Preliminries The sweep-line prdigm is very powerful lgorithmic design

More information

COMPUTER EDUCATION TECHNIQUES, INC. (WEBLOGIC_SVR_ADM ) SA:

COMPUTER EDUCATION TECHNIQUES, INC. (WEBLOGIC_SVR_ADM ) SA: In orer to lern whih questions hve een nswere orretly: 1. Print these pges. 2. Answer the questions. 3. Sen this ssessment with the nswers vi:. FAX to (212) 967-3498. Or. Mil the nswers to the following

More information

Fault tree conversion to binary decision diagrams

Fault tree conversion to binary decision diagrams Loughorough University Institutionl Repository Fult tree onversion to inry deision digrms This item ws sumitted to Loughorough University's Institutionl Repository y the/n uthor. Cittion: ANDREWS, J.D.

More information

Compilers. Topic 4. The Symbol Table and Block Structure PART II. Mick O Donnell: Alfonso Ortega:

Compilers. Topic 4. The Symbol Table and Block Structure PART II. Mick O Donnell: Alfonso Ortega: Compilers Topi 4 The ol Tle nd Blok Struture PART II Mik O Donnell: mihel.odonnell@um.es Alfonso Orteg: lfonso.orteg@um.es Topi 2: Blok Struture 2 1 ol tles with lok strutures Blok Struture Progrmming

More information

To access your mailbox from inside your organization. For assistance, call:

To access your mailbox from inside your organization. For assistance, call: 2001 Ative Voie, In. All rights reserved. First edition 2001. Proteted y one or more of the following United Sttes ptents:,070,2;,3,90;,88,0;,33,102;,8,0;,81,0;,2,7;,1,0;,90,88;,01,11. Additionl U.S. nd

More information

Ma/CS 6b Class 1: Graph Recap

Ma/CS 6b Class 1: Graph Recap M/CS 6 Clss 1: Grph Recp By Adm Sheffer Course Detils Adm Sheffer. Office hour: Tuesdys 4pm. dmsh@cltech.edu TA: Victor Kstkin. Office hour: Tuesdys 7pm. 1:00 Mondy, Wednesdy, nd Fridy. http://www.mth.cltech.edu/~2014-15/2term/m006/

More information

COMMON FRACTIONS. or a / b = a b. , a is called the numerator, and b is called the denominator.

COMMON FRACTIONS. or a / b = a b. , a is called the numerator, and b is called the denominator. COMMON FRACTIONS BASIC DEFINITIONS * A frtion is n inite ivision. or / * In the frtion is lle the numertor n is lle the enomintor. * The whole is seprte into "" equl prts n we re onsiering "" of those

More information

Class Overview. Database Design. Database Design Process. Database Design. Introduction to Data Management CSE 414

Class Overview. Database Design. Database Design Process. Database Design. Introduction to Data Management CSE 414 Introution to Dt Mngement CSE 44 Unit 6: Coneptul Design E/R Digrms Integrity Constrints BCNF Introution to Dt Mngement CSE 44 E/R Digrms ( letures) CSE 44 Autumn 08 Clss Overview Dtse Design Unit : Intro

More information

Stack Manipulation. Other Issues. How about larger constants? Frame Pointer. PowerPC. Alternative Architectures

Stack Manipulation. Other Issues. How about larger constants? Frame Pointer. PowerPC. Alternative Architectures Other Issues Stck Mnipultion support for procedures (Refer to section 3.6), stcks, frmes, recursion mnipulting strings nd pointers linkers, loders, memory lyout Interrupts, exceptions, system clls nd conventions

More information

High-speed architectures for binary-tree based stream ciphers: Leviathan case study

High-speed architectures for binary-tree based stream ciphers: Leviathan case study High-speed rhitetures for inry-tree sed strem iphers: Levithn se study Astrt Rel-time pplitions suh s streming medi nd voie require enryption lgorithms tht do not propgte errors nd support fst enryption

More information

McAfee Data Loss Prevention Prevent

McAfee Data Loss Prevention Prevent Quik Strt Guide Revision B MAfee Dt Loss Prevention Prevent version 10.x This quik strt guide provides high-level instrutions for setting up MAfee Dt Loss Prevention Prevent (MAfee DLP Prevent) hrdwre

More information

the machine and check the components AC Power Cord Carrier Sheet/ Plastic Card Carrier Sheet DVD-ROM

the machine and check the components AC Power Cord Carrier Sheet/ Plastic Card Carrier Sheet DVD-ROM Quik Setup Guide Strt Here ADS-2100 Plese red the Produt Sfety Guide first efore you set up your mhine. Then, plese red this Quik Setup Guide for the orret setup nd instlltion. WARNING WARNING indites

More information

Single-Layer Trunk Routing Using 45-Degree Lines within Critical Areas for PCB Routing

Single-Layer Trunk Routing Using 45-Degree Lines within Critical Areas for PCB Routing SASIMI 2010 Proeedings (R3-8) Single-Lyer Trunk Routing Using 45-Degree Lines within Critil Ares for PCB Routing Kyosuke SHINODA Yukihide KOHIRA Atsushi TAKAHASHI Tokyo Institute of Tehnology Dept. of

More information

UTMC APPLICATION NOTE UT1553B BCRT TO INTERFACE PSEUDO-DUAL-PORT RAM ARCHITECTURE INTRODUCTION ARBITRATION DETAILS DESIGN SELECTIONS

UTMC APPLICATION NOTE UT1553B BCRT TO INTERFACE PSEUDO-DUAL-PORT RAM ARCHITECTURE INTRODUCTION ARBITRATION DETAILS DESIGN SELECTIONS UTMC APPLICATION NOTE UT1553B BCRT TO 80186 INTERFACE INTRODUCTION The UTMC UT1553B BCRT is monolithi CMOS integrte iruit tht provies omprehensive Bus Controller n Remote Terminl funtions for MIL-STD-

More information

EECS150 - Digital Design Lecture 23 - High-level Design and Optimization 3, Parallelism and Pipelining

EECS150 - Digital Design Lecture 23 - High-level Design and Optimization 3, Parallelism and Pipelining EECS150 - Digitl Design Lecture 23 - High-level Design nd Optimiztion 3, Prllelism nd Pipelining Nov 12, 2002 John Wwrzynek Fll 2002 EECS150 - Lec23-HL3 Pge 1 Prllelism Prllelism is the ct of doing more

More information

V = set of vertices (vertex / node) E = set of edges (v, w) (v, w in V)

V = set of vertices (vertex / node) E = set of edges (v, w) (v, w in V) Definitions G = (V, E) V = set of verties (vertex / noe) E = set of eges (v, w) (v, w in V) (v, w) orere => irete grph (igrph) (v, w) non-orere => unirete grph igrph: w is jent to v if there is n ege from

More information

Doubts about how to use azimuth values from a Coordinate Object. Juan Antonio Breña Moral

Doubts about how to use azimuth values from a Coordinate Object. Juan Antonio Breña Moral Douts out how to use zimuth vlues from Coordinte Ojet Jun Antonio Breñ Morl # Definition An Azimuth is the ngle from referene vetor in referene plne to seond vetor in the sme plne, pointing towrd, (ut

More information