!"#$%&'()*+",*+"-(+./012('/"3(+(''/'" 4*%5&)/+"!+26$)/2)&+/1" " " #$%&'(")*"+,-((.-/'"0.12'"34,1(&.'-((5-/"675&&"#%,-85%4/"+5(.9:";*"<.--=/"31'";'-,%/" >,?'4"3*"@?.-(A=/",-4"+,7A(5-"B,=5" " " 6,-4',"C,&'5-,1"),D5%,&5%'.(" )'?.%E5%./"#3"FGHH!IJFKF" " " " " " " " " " " " " <.=L5%4(M"75E9$&.%",%7:'&.7&$%."('E$1,&'5-/"-.&L5%A"E54.1(/"-.&L5%A"75-2.(&'5-/" B.((,2.";,(('-2"N-&.%8,7." " " " " " " " 377.9&.4"85%"9$D1'7,&'5-"'-"ON-&.%-,&'5-,1"+5$%-,1"58">'(&%'D$&.4"6=(&.E(",-4" P.7:-5152=Q*" " " " " " " " 63C>RJJFIRRSF#" " " "

!"

!71)+(2)" "

@88'7'.-&"4.('2-"58":,%4L,%.",-4"(58&L,%."85%"1,%2.I(7,1."9,%,11.1".T.7$&'5-" %.U$'%.("4.&,'1.4"$-4.%(&,-4'-2"58"&:."'-&.%,7&'5-("D.&L..-"&:.",991'7,&'5-/" 75E9$&.%/",-4"-.&L5%A*"V.":,?."4.?.159.4","E,7%5(7,1."('E$1,&5%"W66PXE,7%5Y" &:,&"9.%E'&("&:."75,%(.I2%,'-.4"(&$4="58"4'(&%'D$&.4IE.E5%=",991'7,&'5-(*" #$%%.-&1=/",991'7,&'5-("$('-2"&:."B.((,2.";,(('-2"N-&.%8,7."WB;NY",%."('E$1,&.4Z" :5L.?.%/"&:."('E$1,&5%"'("4.('2-.4"&5",115L"'-71$('5-"58"5&:.%"9%52%,EE'-2"E54.1(*"" P:."('E$1,&5%"'("4%'?.-"8%5E".'&:.%","&%,7."8'1."5%","(A.1.&5-",991'7,&'5-*"P%,7."8'1.(" 7,-"D.".'&:.%","(&,-4,%4"85%E,&"W[9.-"P%,7."\5%E,&Y"5%","E5%."4.&,'1.4"7$(&5E" 85%E,&"W>]B;NY*"P:."('E$1,&5%",%7:'&.7&$%."'("E54$1,%/",115L'-2"'&"&5".,('1="D." .T&.-4.4"L'&:",44'&'5-,1"-.&L5%A"E54.1(/"&%,7."8'1."85%E,&(/",-4"E5%."4.&,'1.4" 9%57.((5%"E54.1(*"V."4.(7%'D."&:."4.('2-"58"&:."('E$1,&5%/"9%5?'4."9.%85%E,-7." %.($1&(/",-4"9%.(.-&"(&$4'.("(:5L'-2":5L",991'7,&'5-"9.%85%E,-7."'(",88.7&.4"D=" E,7:'-."7:,%,7&.%'(&'7(*""

" 8"9:)+*;&2)$*:""

P:."4.2%.."58"9,%,11.1'(E"&:,&"E$(&"D.".T95(.4"&5".88'7'.-&1="$&'1'^."E54.%-" 1,%2.I(7,1."9,%,11.1"75E9$&'-2"(=(&.E("'("'-&'E'4,&'-2*"_.7,$(."'-4'?'4$,1"9%57.((5%" 9.%85%E,-7."2,'-(",%."7$%%.-&1=",7:'.?.4"9%'E,%'1="&:%5$2:"E$1&'91."75%.("5-"," 7:'9",-4"E$1&'91."&:%.,4("58".T.7$&'5-"'-","75%./"&:."%,&.",&"L:'7:"9,%,11.1'(E"E$(&" D.".T95(.4"D=",-",991'7,&'5-"L'11"'-7%.,(.",(","8$-7&'5-"58"5?.%,11"E,7:'-." 9.%85%E,-7."%.1,&'?."&5":'(&5%'7,1"&%.-4(*"P:'("%.($1&("'-"2%.,&.%"4.('2-"75E91.T'&=" 85%"D5&:"E,7:'-.",%7:'&.7&(",-4",991'7,&'5-"(58&L,%."4.?.159.%(*"P:."$(."58" ('E$1,&'5-/":5L.?.%/"7,-",'4"D5&:"'-"&:.'%".885%&("&5"5D&,'-":'2:"$&'1'^,&'5-"8%5E" 8$&$%."75E9$&'-2"91,&85%E(*"" 6'E$1,&'5-"'(",1%.,4="$(.4".T&.-('?.1="'-"&:."4.('2-"58"75E9$&'-2"(=(&.E("85%" D5&:"8$-7&'5-,1"?.%'8'7,&'5-",-4"&'E'-2".(&'E,&'5-*"3(",-".T,E91."58"&:."%,-2."58" 7,9,D'1'&'.(",?,'1,D1./"'-71$4'-2"`$(&","8.L".T,E91.("58"59.-I(5$%7."&'E'-2" ('E$1,&5%(/"&:.%.",%."9%57.((5%"('E$1,&5%("W_'-A.%&/".&",1*/"RJJKZ"BH6'EY/"E.E5%=" ('E$1,&5%("W+,75DZ"V,-2/".&",1*/"RJJHY/",-4"-.&L5%A"-(Ia"W-(IaY*" 6.?.%,1"('E$1,&5%(":,?."D..-"4.?.159.4"&5"2.-.%,&."9.%85%E,-7.".(&'E,&.(" 85%":'2:I9.%85%E,-7."75E9$&'-2",%7:'&.7&$%.(*"P:.(."%,-2."8%5E":'2:I8'4.1'&=",-4" 75E9$&,&'5-,11=".T9.-('?."('E$1,&5%("85%"E.,($%'-2"9.%85%E,-7."D.&L..-"&L5" -54.("Wb54%'2$.(/".&",1*/"RJJaZ"]-4.%L554/").?.-:,2.-/"c"b54%'2$.(/"RJJSY"&5" 15L.%I8'4.1'&=",-4"15L.%I75(&"('E$1,&5%("&:,&"7,-".(&'E,&."9.%85%E,-7."5-"1,%2.I (7,1."E,7:'-.(*"P:.(."15L.%I8'4.1'&="('E$1,&5%("$(.","?,%'.&="58",99%5,7:.("&5" 2.-.%,&."&:.",991'7,&'5-d("9%57.((5%",-4"-.&L5%A"L5%A15,4"'-71$4'-2"&%,7'-2/"4'%.7&" .T.7$&'5-/",-4"&:."$(."58"(A.1.&5-",991'7,&'5-(*"344'&'5-,11=/"&:."815L"58"4,&," &:%5$2:"&:."-.&L5%A"'("E54.1.4"L'&:"?,%='-2"8'4.1'&=*"N-"&:."9%.(.-&"9,9.%"L.",%." 75-7.%-.4"L'&:"15L.%I8'4.1'&=",-4"15L.%I75(&"('E$1,&'5-"&.7:-'U$.("&5".-,D1." ('E$1,&'5-",&"?.%="1,%2."(7,1.(/",-4"L."L'11"D%'.81="4'(7$(("&:.(."('E$1,&5%"?,%',-&(" '-"E5%."4.&,'1/"2'?'-2".T,E91.("58"('E$1,&5%("($995%&'-2".,7:"7,9,D'1'&="D.85%." &$%-'-2"&5","4.&,'1.4"4.(7%'9&'5-"58"5$%"('E$1,&5%"'-"6.7&'5-"R*"" "

R"

V:.-",-",991'7,&'5-"'("&%,7.4/"&:."8$11"9%52%,E"'("%$-"'-"5%4.%"&5"7511.7&" '-85%E,&'5-",D5$&":5L"'&".T.7$&.(*"P:."%.($1&'-2"4,&,"'("5$&9$&"'-&5","&%,7."8'1./" L:'7:"75-&,'-("4,&,"($7:",("&:."&'E."(9.-&"'-"75E9$&,&'5-",-4"&:.",E5$-&"58"4,&," (.-&",-4"%.7.'?.4"D=".,7:"-54.*"P:'("&%,7."8'1."'("%.,4"D="&:."('E$1,&5%/",115L'-2"'&"&5" %.91,="&:."%$-/",4`$(&'-2"&:."('E$1,&.4"&'E.("&5",775$-&"85%"4'88.%.-7.("D.&L..-"&:." ('E$1,&.4"E,7:'-.",-4"&:,&"L:'7:"L,("$(.4"&5"7511.7&"&:."&%,7.("We:.-2/"V'1E,%&:/" +,2,4'(:9%,(,4/"c"<,1./"RJJHY*"N-"&:."7,(."58"B.((,2.";,(('-2"N-&.%8,7."WB;NY" WB.((,2.";,(('-2"N-&.%8,7."\5%$E/"RJJfY"&%,7.(/".?.-&("&:,&",%.":'2:.%"1.?.1"&:,-" ('E91."(.-4(",-4"%.7.'?.(",%."%.75%4.4/"($7:",(",11I&5I,11"D%5,47,(&"5%",11I&5I5-." %.4$7.*"P:.(."-.&L5%A".?.-&(",15-2"L'&:",((57',&.4"9,%,E.&.%(",%."1522.4"L'&:5$&" &:."4.&,'1("58"&:."$-4.%1='-2"E.((,2.("&:,&",%."$(.4"&5"'E91.E.-&"&:."59.%,&'5-*"N&" '("&:."%.(95-('D'1'&="58"&:."('E$1,&5%"&5".'&:.%"75-?.%&"&:.(.":'2:.%I1.?.1"59.%,&'5-(" '-&5"&:."15LI1.?.1"E.((,2.("&:,&"'E91.E.-&"&:."59.%,&'5-"5%"&5"9%5?'4.",-" ,99%59%',&."&'E'-2"E54.1"&:,&"45.("-5&"%.U$'%."('E$1,&'5-"58"&:."15LI1.?.1" E.((,2.(*"" N-"&:."4'%.7&".T.7$&'5-",99%5,7:"&:."8$11",991'7,&'5-"'("%$-"5-".,7:"-54." W;%,A,(:/".&",1*/"RJJJZ"b'.(.-/"RJJKZ"e:.-2/".&",1*/"RJJHY*"P:'("'("4'88.%.-&"8%5E" -5%E,1"D.-7:E,%A'-2"D.7,$(./"'-(&.,4"58"%.,1"&'E./","?'%&$,1"&'E."'("$(.4"&5" 4.&.%E'-."&:.".T.7$&'5-"&'E.*"P:."?'%&$,1"&'E."'("75E9$&.4"D="$('-2","-.&L5%A" E54.1"&5".(&'E,&."75EE$-'7,&'5-"&'E.(*"P:."75-&%'D$&'5-"&5"&:."?'%&$,1"&'E."4$."&5" 9%57.((5%".T.7$&'5-"7,-"D."4.&.%E'-.4"('E91="D="$('-2"&:."E.,($%.4"%.,1"&'E."85%" -5-I75EE$-'7,&'5-"L5%A"5%"D="$('-2","9%57.((5%"E54.1*"P:'("E54.1"7,-"D." '-85%E.4"D="E.,($%.E.-&("58",7&$,1",991'7,&'5-"9%57.((5%"$&'1'^,&'5-"5%"E5%." 4.&,'1.4"9%57.((5%"('E$1,&'5-(*"" P:."&:'%4",99%5,7:"&5"2.-.%,&'-2"&:."E,7:'-.d("L5%A15,4"45.("-5&"$(.","8$11" ,991'7,&'5-*"N-(&.,4","(5I7,11.4"(A.1.&5-",991'7,&'5-"'("$(.4"&:,&"9%5?'4.(".-5$2:" '-85%E,&'5-"&5"&:."('E$1,&5%"85%"'&"&5"E54.1"D5&:"75E9$&,&'5-",-4"75EE$-'7,&'5-*" P:'("&,A.(",4?,-&,2."58"&:."8,7&"&:,&"&:."75E9$&,&'5-("-..4.4"&5"4.&.%E'-." 9%52%,E"815L",%.","(E,11"($D(.&"58"&:."&5&,1"-$ED.%"58"75E9$&,&'5-("-..4.4"D=" &=9'7,1":'2:I9.%85%E,-7."75E9$&'-2",991'7,&'5-(*"P:."(A.1.&5-",991'7,&'5-"7,-"D." 75-(&%$7&.4"'-","?,%'.&="58"L,=(*"3-",991'7,&'5-"9%52%,EE.%"75$14"4'%.7&1="9%52%,E" ,"(A.1.&5-",991'7,&'5-/"2'?'-2"&:."9%52%,EE.%"&:."5995%&$-'&="&5".T9.%'E.-&"L'&:" 4'88.%.-&",125%'&:E("D.85%.":,?'-2"&5"L%'&."&:."8$11",991'7,&'5-*"@T'(&'-2",991'7,&'5-(" 7,-"D."(A.1.&5-'^.4"D="%.91,7'-2"95%&'5-("58"&:."754."45'-2"75E9$&,&'5-"L'&:"7,11(" &:,&"'-(&%$7&"&:."('E$1,&5%"&5",775$-&"85%"&:."&'E."'E91'7'&1="W6$($A'&,/".&",1*/"RJJfY*" 6A.1.&5-",991'7,&'5-("7,-",1(5"D."75-(&%$7&.4"$('-2",$&5E,&.4",-,1=('("&551(/"85%" .T,E91./"$('-2"75E9'1.%",-,1=('("&.7:-'U$.("&5",D(&%,7&",L,="95%&'5-("58"&:." ,991'7,&'5-"W34?./"_,2%54',/">..1E,-/"c"6,A.11,%'5$/"RJJRY*"6A.1.&5-",991'7,&'5-(" :,?."&:.",4?,-&,2."58"7,9&$%'-2"&:.".((.-7."58"&:.",991'7,&'5-"'-"($88'7'.-&"4.&,'1"&5" .-,D1."%.,(5-,D1=",77$%,&."('E$1,&'5-"L:'1."D.'-2"E$7:"1.((".T9.-('?."&:,-" %$--'-2"&:.",991'7,&'5-*"" g,%'5$(",99%5,7:.(",%.",1(5"&,A.-"&5"E54.1"&:."-.&L5%A"1,=.%*"P:.(."%,-2." 8%5E"%.1,&'?.1="('E91."E54.1("&:,&"5-1="75-('4.%".-495'-&"75-2.(&'5-"W;%,A,(:/".&" ,1*/"RJJJY"&5",77$%,&."E54.1("&:,&"&%.,&"&:."815L"58"4,&,"&:%5$2:"&:."-.&L5%A"'-" 4.&,'1"W_.-?.-'(&."c"0.'4.1D.%2.%/"!FFHZ";.&%'-'"c"g,--.(7:/"!FFSZ"e:.-2/".&",1*/" RJJHY*"N-".-495'-&"75-2.(&'5-"E54.1("&:."5-1="-.&L5%A"D5&&1.-.7A(",%."&:."-54.(*"N8" "

a"

&L5"E.((,2.(",%%'?."('E$1&,-.5$(1=",&","-54./"5-1="5-.",&","&'E."7,-"D."%.7.'?.4/" ,-4"&:."4.1,="'-"%.7.9&'5-"58"&:."(.75-4"E.((,2."'("4.&.%E'-.4"8%5E"('E91." -.&L5%A"9.%85%E,-7."7:,%,7&.%'(&'7("($7:",("&:."1,&.-7=",-4"D,-4L'4&:*"P:'("E54.1" 45.("-5&"%.81.7&"&:."8,7&"&:,&"'-&.%-,1"&5"&:."-.&L5%A"8,D%'7"&:.%."7,-"D."75-&.-&'5-" 85%"%.(5$%7.(*">.&,'1.4"-.&L5%A"E54.1(",%.",L,%."58"&:."E,7:'-.d("-.&L5%A" &595152=",-4"$(."&:'("'-85%E,&'5-/",15-2"L'&:"5&:.%"4.&,'1("($7:",("%5$&'-2" ,125%'&:E(/"&5".(&'E,&."E.((,2.",%%'?,1"&'E.(*"_5&:",99%5,7:.(",%."$(.8$1"'-"&:,&"&:." .-495'-&"75-2.(&'5-"E54.1"9%5?'4.(",-"'-.T9.-('?."L,="&5"5D&,'-",-"59&'E'(&'7" 9.%85%E,-7.".(&'E,&."L:'1."&:."E5%."4.&,'1.4"E54.1("&,A."'-&5",775$-&"&:."'E9,7&" 5-"9.%85%E,-7."58"E,7:'-."&595152=",-4"9%57.(("1,=5$&".88.7&(*"" N-"&:."9%.(.-&"L5%A"L."4.(7%'D.","E,7%5(7,1."('E$1,&5%"85%".(&'E,&'-2"&:." 9.%85%E,-7."58"1,%2.I(7,1."9,%,11.1"E,7:'-.(*"P:."25,1("58"&:."('E$1,&5%",%."&5",(('(&" '-"(=(&.E"4.('2-",-4",991'7,&'5-"4.?.159E.-&*"P:."('E$1,&5%"'("E54$1,%/"9.%E'&&'-2" E$1&'91."75E9$&,&'5-",-4"75EE$-'7,&'5-"E54.1("&5"D.".E915=.4*"P:'("L'11",115L" &:."(&$4="58",%7:'&.7&$%.(",&","?,%'.&="58"8'4.1'&'.("(5"L."7,-"&%,4."588"&:." 75E9$&,&'5-,1"75(&"58"45'-2","('E$1,&'5-",2,'-(&"&:.",77$%,7="58"&:."%.($1&*"P:." ('E$1,&5%"L'11"D."4'(&%'D$&.4"$-4.%",-"59.-I(5$%7."1'7.-(."&5"E,T'E'^."'&(" $(.8$1-.(("&5"&:.":'2:I9.%85%E,-7."75E9$&'-2"75EE$-'&=*"V."857$("5-",-" .T&%.E.1="1'2:&L.'2:&"'E91.E.-&,&'5-/"%,&:.%"&:,-".-,D1'-2"9,%,11.1'(E"'-"&:." ('E$1,&5%"'&(.18*";,%,11.1'(E"7,-"D.".,('1="'-&%54$7.4"L:.-"9.%85%E'-2"'-4.9.-4.-&" ('E$1,&'5-("58",%7:'&.7&$%."?,%',-&(*"V.",1(5"9%5?'4.","4.&,'1.4"B;N"E54.1"&:,&" 75-?.%&("&:.":'2:I1.?.1"B;N".?.-&("'-&5"&:."-.7.((,%="75EE$-'7,&'5-"59.%,&'5-(*" _.7,$(."&:."B;N"7,9,D'1'&="'("'E91.E.-&.4"&5"D."E54$1,%/"'&"'("('E91."&5"'-?.(&'2,&." &:."%.1,&'?."9.%85%E,-7."58"?,%'5$("B;N",125%'&:E(*"P:."('E$1,&5%"'("4.('2-.4"&5" ,115L"&:."$(."58",1&.%-,&'?."9%52%,EE'-2"E54.1(/",("L.11*" [$%"L5%A"'("45-."'-"&:."75-&.T&"58","1,%2.%"9%5`.7&"&5"4.?.159","9,%,11.1" E$1&'(7,1."('E$1,&5%"&:,&"9.%E'&("$(.%("58"&:."('E$1,&5%"&5"(.1.7&"&:."4.('%.4"1.?.1"58" 8'4.1'&="85%".,7:"75E95-.-&"58"&:."E,7:'-.*"P:'("1,%2.%"9%5`.7&"'(",-"5$&2%5L&:"58" &:."6&%$7&$%,1"6'E$1,&'5-"P551A'&"W66PY"Wb54%'2$.(/".&",1*/"RJJaZ"]-4.%L554/".&",1*/" RJJSY",-4"&:."E,7%5(7,1."75E95-.-&("4.(7%'D.4":.%.'-"L'11"D."%.8.%%.4"&5",(" 66PXE,7%5"&5"4'(&'-2$'(:"&:.E"8%5E"&:.".T'(&'-2"E'7%5(7,1."66P"75E95-.-&(*" "

<"=6/">(2+*12('/"#$%&'()*+""

P:.".T.7$&'5-"58",-",991'7,&'5-"5-","9,%,11.1"E,7:'-."7,-"D."%.9%.(.-&.4",("," 7511.7&'5-"58"75E9$&,&'5-",-4"75EE$-'7,&'5-".?.-&(*"P:.(.".?.-&(":,?."75E91.T" D$&"A-5L-"4.9.-4.-7'.(Z"85%".T,E91./","(=-7:%5-'^,&'5-".?.-&"E$(&"577$%"'-",11" 9,%,11.1"&,(A("D.85%.",-="&,(A"7,-"E5?."85%L,%4*"V."E54.1"&:.".T.7$&'5-"58"&:.(." .?.-&("$('-2","4'(7%.&.".?.-&"('E$1,&5%*"]('-2"E54.1("&5"4.&.%E'-."&:."4$%,&'5-"58" &:.(."75E9$&,&'5-",-4"75EE$-'7,&'5-".?.-&(/"&:."('E$1,&5%"4.&.%E'-.(".?.-&" 75E91.&'5-"&'E.(*"P:$(/"&:."E.((,2."&'E'-2"58",991'7,&'5-("'("4.&.%E'-.4/",115L'-2" &:.".88'7'.-7=",-4"(7,1,D'1'&="58",991'7,&'5-("&5"D.".T,E'-.4*"" V.",?5'4"&:."(=-7:%5-'^,&'5-"5?.%:.,4("'-7$%%.4"D="9,%,11.1"4'(7%.&.".?.-&" ('E$1,&'5-",-4"'E91.E.-&",-".T&%.E.1="1'2:&L.'2:&"('E$1,&5%"L'&:'-","('-21."A.%-.1" &:%.,4*"3991'7,&'5-"&,(A(",%."E54.1.4"$('-2"1'2:&L.'2:&"&:%.,4(/",115L'-2"&:." ('E$1,&5%"&5"E,'-&,'-"&:."75E91.T"(&,&.("58"-$ED.%("58"&,(A("%,-2'-2"'-&5"&:."

"

G"

E'11'5-(*"3991'7,&'5-"&,(A"&:%.,4("$(.","L.11I4.8'-.4"'-&.%8,7."1,=.%"&5"2.-.%,&." ('E$1,&'5-".?.-&(/"%.9%54$7'-2"&:."75,%(.I2%,'-.4"75EE$-'7,&'5-",-4"75E9$&,&'5-" 15,4("58"%.,1",991'7,&'5-(*"P:'("1'2:&L.'2:&"'E91.E.-&,&'5-",115L("$("&5"('E$1,&."$9" &5"RJJ/JJJ"B;N"(.-4X%.7.'?."9,'%("9.%"(.75-4"5-","('-21."L5%A(&,&'5-/"L'&:"," E.E5%="855&9%'-&"&:,&"(7,1.("1'-.,%1="L'&:"&:."-$ED.%"58"9..%(*" \'2$%."!"'11$(&%,&.("&:.":'2:I1.?.1"4.('2-"58"&:."('E$1,&5%*"P:."9%57.(("1,=.%" ($995%&("&L5".T.7$&'5-"E54.(/"(A.1.&5-",991'7,&'5-",-4"&%,7.I4%'?.-/"$('-2" 1'2:&L.'2:&"&:%.,4(*"P,(A"&:%.,4("7%.,&."75EE$-'7,&'5-",-4"75E9$&."A.%-.1(" L:'7:",%."9,%,E.&.%'^.4"L'&:"4,&,"85%","9,%&'7$1,%"75EE$-'7,&'5-"59.%,&'5-"5%" 75E9$&."D157A*"<.%-.1("85%"B;N"59.%,&'5-(/"85%"'-(&,-7./"%.U$'%."&:.",%2$E.-&("&5" &:."B;N"7,11/"L:'1."75E9$&."A.%-.1("%.U$'%.","4.(7%'9&'5-"58"&:."#;]"'-(&%$7&'5-("&5" D."('E$1,&.4*"P,(A("'-&.%,7&"L'&:"&:."('E$1,&5%"D,7AI.-4"D="9$(:'-2"A.%-.1("45L-" &5"&:."'-&.%8,7."1,=.%*"P:."'-&.%8,7."1,=.%"755%4'-,&.("'-&.%,7&'5-"L'&:"-.&L5%A",-4" #;]"E54.1(",-4":,-41.("&:."(7:.4$1'-2"58"%.($1&'-2".?.-&("5-"&:."('E$1,&5%"D,7A" .-4*"P:."'-&.%8,7."1,=.%"'-71$4.("(.%?.%(/"($7:",("mpiserver"L:'7:"E,-,2.(" '-&.%,7&'5-"L'&:"&:."-.&L5%A"E54.1"'-"B;N"75-&.T&(*"V:.-"A.%-.1(",%."75E91.&.4/" &:."9%57.(("1,=.%"%.7.'?.("7,11D,7A("?',"%.U$.(&"5D`.7&(*"" "

" " \'2$%."!M"3991'7,&'5-"&:%.,4("7%.,&."75EE$-'7,&'5-",-4"75E9$&."A.%-.1(",-4"9$(:" &:.E"45L-"&5"&:."'-&.%8,7."1,=.%*"P:."'-&.%8,7."1,=.%"(7:.4$1.(".?.-&("5-"&:." 4'(7%.&.".?.-&"('E$1,&5%/"95(('D1="$('-2"7,11("&5"(.%?.%(*"#,11D,7A(",%."E,4."&5"&:." 9%57.(("1,=.%"?',"%.U$.(&"5D`.7&("L:.-".?.-&("75E91.&.*" " 66PXE,7%5"'("'E91.E.-&.4"'-"#hh/",115L'-2","81.T'D1./"E54$1,%"4.('2-"&:,&" 9%5?'4.("5995%&$-'&'.("85%"E54'8'7,&'5-",-4".T&.-('5-*"P:."'-:.%'&,-7."4',2%,E" 9%5?'4.4"'-"\'2$%."R":'2:1'2:&("&:."81.T'D'1'&="58"5$%"4.('2-"'-"&:."75-&.T&"58"A.%-.1" "

H"

5D`.7&(*"3("(9.7'8'.4"D="&:."kernel"D,(."71,((/",11"A.%-.1(":,?."start()",-4" complete()"E.&:54(",-4"E,'-&,'-","1'(&"58".?.-&":,-41.%("L:'7:"%.U$'%." -5&'i7,&'5-"58"&:."A.%-.1d("75E91.&'5-*"P:.(.",%."&:."5-1="E.&:54("%.U$'%.4"D="&:." ('E$1,&5%"&5"'-75%95%,&."A.%-.1(",("4'(7%.&.".?.-&(*"P:."?,%'5$("(9.7',1'^,&'5-("58" &:."A.%-.1"71,((":,-41."&:."(9.7'8'7"%.U$'%.E.-&("58"9,%&'7$1,%"59.%,&'5-("D=" 4.8'-'-2"&:."start()",-4"complete()"E.&:54(*"V:'1."7,11'-2"start()"5-",-" mpisendengine"A.%-.1"%.($1&("'-","7,11"&5"mpiserver::send()/"'-?5A'-2"," -.&L5%A"E54.1"&5"4.&.%E'-."4.1,=(/","7,11"&5"start()"5-","computekernel" %.($1&("'-","7,11"&5"&:."-54."E54.1",((57',&.4"L'&:"&:."&,(A/"'-?5A'-2","9%57.((5%" E54.1*"_=".-7,9($1,&'-2"'E91.E.-&,&'5-"4.&,'1("D.:'-4"L.11I4.8'-.4"'-&.%8,7.(/" E54$1.("L'&:'-"&:."('E$1,&5%"7,-".,('1="D."%.91,7.4Z"85%".T,E91./",1&.%-,&." 9%52%,EE'-2"E54.1("75$14"D."('E$1,&.4"D="%.91,7'-2"&:."B;N"'-&.%8,7."1,=.%"L'&:" ,-"'-&.%8,7."1,=.%"($995%&'-2","4'88.%.-&"9,%,11.1'^,&'5-"E54.1*"" "

" " " \'2$%."RM"N-:.%'&,-7."4',2%,E"85%"A.%-.1"5D`.7&(*"<.%-.1"(9.7',1'^,&'5-(":,-41."&:." (9.7'8'7"%.U$'%.E.-&("58"9,%&'7$1,%"59.%,&'5-("L:'1."9%5?'4'-2","$-'85%E"'-&.%8,7." &5"&:."4'(7%.&.".?.-&"('E$1,&5%*" "

=6/">39">*;/'"

P:."B.((,2.";,(('-2"N-&.%8,7."WB;NY"WB.((,2.";,(('-2"N-&.%8,7."\5%$E/"RJJfY" 9%5?'4.(","(&,-4,%4"'-&.%8,7."85%"9%52%,EE'-2"4'(&%'D$&.4"E.E5%="9,%,11.1"E,7:'-.("'-"," 95%&,D1.",-4".88'7'.-&"E,--.%*"P:."B;N"'-&.%8,7."7$%%.-&1="75-('(&("58"5?.%"RJJ"8$-7&'5-" 7,11("9%5?'4'-2","%'7:"(.&"58"75EE$-'7,&'5-"9%'E'&'?.(*"PL5"58"&:."E5(&"75EE5-"(.&("58" 9%'E'&'?.("'-71$4."&:5(."85%"95'-&I&5I95'-&"75EE$-'7,&'5-",-4"&:5(."85%"7511.7&'?." 75EE$-'7,&'5-*";5'-&I&5I95'-&"59.%,&'5-(",%.",?,'1,D1."85%","?,%'.&="58"E54.(/"'-71$4'-2" D$88.%.4/"(=-7:%5-5$("WL'11"5-1="75E91.&.",8&.%"&:."E,&7:'-2"%.7.'?."'("95(&.4Y/",-4"%.,4=" W&:."E,&7:'-2"%.7.'?."E$(&"D."95(&.4"D.85%."&:."(.-4Y"E54.(*"\5%".,7:"58"&:.(."(.-4" E54.(/",("L.11",("&:."%.7.'?."7,11(/"&:.%.",%."D157A'-2"WL:'7:":,?."75E91.&.4"L:.-"&:.=" %.&$%-Y",-4"-5-D157A'-2"W,"(.9,%,&."7,11"'("$(.4"&5"7:.7A"85%"75E91.&'5-Y"?.%('5-(*"N-" ,44'&'5-"&5"&:.(."95'-&I&5I95'-&"7,11(/"7511.7&'?."59.%,&'5-("&:,&"'-?51?."2%5$9("58" 9%57.((5%(",%."75EE5-1=".E915=.4*"P:.(."'-71$4."($7:"59.%,&'5-(",(",11I&5I,11"D%5,47,(&/" ,11I&5I5-."%.4$7./",11I&5I5-."2,&:.%/",-4"(5"5-*"_5&:"&:."95'-&I&5I95'-&",-4"7511.7&'?." 59.%,&'5-(",%."&=9'7,11="'E91.E.-&.4"$('-2","%.1,&'?.1="(E,11"(.&"58"95'-&I&5I95'-&"

"

K"

75EE$-'7,&'5-"9%'E'&'?.("L:'7:",%."(9.7'8'7"&5","9,%&'7$1,%"-.&L5%A'-2"&.7:-5152=*" 6A.1.&5-",991'7,&'5-(",-4"B;N"&%,7."8'1.("&=9'7,11="9%5?'4."'-85%E,&'5-",D5$&"5-1="B;N" 7,11(",-4"&:.'%",((57',&.4",%2$E.-&"1'(&(*"P:'("E.,-("&:,&"-5"'-85%E,&'5-"'(",?,'1,D1."&5"&:." ('E$1,&5%",D5$&"&:."15LI1.?.1"95'-&I&5I95'-&"E.((,2.("&:,&","9,%&'7$1,%"B;N"1'D%,%="$(.("&5" 'E91.E.-&",-"59.%,&'5-*"P:."&'E'-2("4$."&5"&:."15LI1.?.1"59.%,&'5-("E$(&"D."E54.1.4"D=" &:."('E$1,&5%/",-4"&:'("9%.(.-&("$("L'&:"&:."5995%&$-'&="&5"'E91.E.-&","?,%'.&="58"E54.1(/" ,&"?,%='-2"1.?.1("58"8'4.1'&=/"&5"%.9%.(.-&"&:."B;N"59.%,&'5-(*"3&"&:."15LI8'4.1'&=/"15LI75(&" .-4/"B;N"7511.7&'?.("7,-"D."&%.,&.4"L'&:5$&"75-('4.%,&'5-"58"&:."15LI1.?.1"B;N" 'E91.E.-&,&'5-*"3-",-,1=&'7"5%".E9'%'7,1"9.%85%E,-7."E54.1"75$14"D."$(.4"&5"4.&.%E'-." L:.-".,7:"9%57.(("L'11"75E91.&."&:."59.%,&'5-/",-4","('-21."('E$1,&5%".?.-&"&5"75-&'-$." .T.7$&'5-"58",11"9%57.((.(",&"&:.",99%59%',&."?'%&$,1"&'E."L5$14"D."'-(.%&.4"'-&5"&:.".?.-&" U$.$.*"3":'2:.%I8'4.1'&=",99%5,7:/"L:'7:"'("'E91.E.-&.4"'-"66PXE,7%5/"'("&5":,?."&:." ('E$1,&5%"(7:.4$1.".?.-&("-..4.4"85%",11"58"&:."15LI1.?.1"4,&,"&%,-(8.%("'-"&:."(,E."L,=",-" B;N"'E91.E.-&,&'5-"L5$14*"N8"&:'("'("45-."L:'1. ",1(5"$('-2","-.&L5%A"E54.1"&:,&"'-71$4.(" 75-2.(&'5-".88.7&(/"&:.-"&:.".88.7&"58"75-2.(&'5-"5-"&:."7511.7&'?."59.%,&'5-"&'E."'(".(&'E,&.4" D="&:."('E$1,&5%*"N-"&:'("L,=/"&:.".88.7&("58"7:,-2.("'-"&:."B;N"'E91.E.-&,&'5-"7,-"D." (&$4'.4"$('-2"&:."('E$1,&5%*" )'2:&L.'2:&",991'7,&'5-"&:%.,4("9.%85%E"B;N"59.%,&'5-("&:%5$2:"7,11("&5"&:."'-&.%8,7." 1,=.%/"%.($1&'-2"'-"4.&.%E'-,&'5-"58"75E91.&'5-"&'E.("85%"&:."%.U$'%.4".?.-&("D="&:." -.&L5%A"E54.1",-4"&:."(7:.4$1'-2"58"&:.(.".?.-&("L'&:"&:."4'(7%.&.".?.-&"('E$1,&5%*"3" &'E.1'-."4.&,'1'-2"&:."7:%5-5152="58".?.-&("(7:.4$1.4"D="&L5"1'2:&L.'2:&",991'7,&'5-" &:%.,4("9.%85%E'-2"&=9'7,1"59.%,&'5-("'("(:5L-"'-"\'2$%."a*"V:.-",-"B;N"(.-4"5%"%.7.'?." 59.%,&'5-"'("9.%85%E.4/"&:."&:%.,4"='.14("$-&'1"&:.",99%59%',&.".?.-&"'(".T.7$&.4"D="&:." ('E$1,&5%""'-4'7,&'-2"&:,&".-5$2:"('E$1,&'5-"&'E.":,(".1,9(.4"85%"&:."4,&,"&5":,?."D..-"(.-&" 5%"%.7.'?.4*")'A.L'(."L'&:"75E9$&,&'5-/"&:.",991'7,&'5-"&%,7."5%"#;]"E54.1"4.&.%E'-.(" L:.-","75E9$&,&'5-"59.%,&'5-"75E91.&.(",-4"(7:.4$1.(","75E91.&'5-".?.-&"L'&:"&:." ('E$1,&5%*"P:.",991'7,&'5-"&:%.,4"9.%85%E'-2"&:."75E9$&,&'5-"='.14("$-&'1"&:'("75E91.&'5-" .?.-&"'("&%'22.%.4*" "

" " \'2$%."aM"3"&'E.1'-."85%"&:."'-&.%,7&'5-"58"&L5"1'2:&L.'2:&",991'7,&'5-"&:%.,4("L'&:" &:."4'(7%.&.".?.-&"('E$1,&5%"85%"B;N"(.-4X%.7.'?."59.%,&'5-(",-4"75E9$&,&'5-*"" " 3"('E91'8'.4"71,(("7511,D5%,&'5-"4',2%,E"85%"&:."66PXE,7%5"B;N"75E95-.-&("'("(:5L-" "

S"

'-"\'2$%."G*"3991'7,&'5-"&:%.,4("&:,&"$&'1'^."B;N",%."'-(&,-7.("58"71,((.("'-:.%'&'-2"8%5E"&:. " mpiapp"71,((/"L:'7:"'-"&$%-"'-:.%'&("8%5E"&:."('E$1,&5%d("2.-.%'7"71,(("85%"&:%.,4(/" thread*"P:%.."($7:"B;N",991'7,&'5-(",%."(:5L-"'-"&:."8'2$%.M"mpipingpong"W,"('E91." 9'-2I95-2"(A.1.&5-",991'7,&'5-Y/"minimd"W,"(A.1.&5-"E51.7$1,%"4=-,E'7(",991'7,&'5-" L:'7:"'("4'(7$((.4"'-"6.7&'5-"RY/",-4"mpitrace"W,"&%,7."8'1."%.,4.%"L:'7:"'("4'(7$((.4"'-" 6.7&'5-"RY*"@,7:"B;N",991'7,&'5-"5D`.7&"%.8.%.-7.(",-"mpiapi"5D`.7&/"L:'7:"9%5?'4.("&:." B;N",991'7,&'5-"9%52%,EE'-2"'-&.%8,7.*"P:."mpiapi"5D`.7&"$(.(",-"mpistrategy" 5D`.7&"&5"('E$1,&."B;N"75EE$-'7,&'5-"D="D$'14'-2"&:.",99%59%',&."kernel"5D`.7&("W(:5L-" '-"\'2$%."RY*"P:."mpistrategy"5D`.7&":,(","7511.7&'5-"58"(&%,&.2'.("(9.7',1'^.4"85%" 9,%&'7$1,%"59.%,&'5-(*"\5%".T,E91./"'E91.E.-&,&'5-("58"&:. "MPI_Barrier"8$-7&'5-",%." (9.7',1'^,&'5-("58"&:."mpibarrierstrategy",D(&%,7&"D,(."&=9.*"69.7',1'^.4" 'E91.E.-&,&'5-("58"D,%%'.%"(&%,&.2'.("7,-"D."9%5?'4.4/"5%"&:."9%5?'4.4" mpicorebarrier"(9.7',1'^,&'5-"7,-"D."$(.4*"P:'("(9.7',1'^,&'5-"7,-"9%5?'4.",":'2:I 8'4.1'&="D,%%'.%"'E91.E.-&,&'5-"&=9'7,1"58"E,-=",7&$,1"B;N"'E91.E.-&,&'5-("5%"'&"7,-"

9.%85%E","15LI8'4.1'&="D,%%'.%"&:,&"%.U$'%.("E'-'E,1"9%57.((5%"&'E."&5"('E$1,&.*"P:.(."15LI 8'4.1'&="7511.7&'?."59.%,&'5-(",%."7$%%.-&1="5-1="$(.4"&5"(=-7:%5-'^."&:."-54.(",8&.%" MPI_Init"'("7,11.4*"[&:.%L'(./"&:.":'2:I8'4.1'&="B;N"75%."59.%,&'5-(",%."$(.4"'-"&:." %.($1&("9%.(.-&.4":.%.'-*" "

" " " \'2$%."GM"#511,D5%,&'5-"4',2%,E"85%"B;N"75E95-.-&(*"651'4"1'-.("'-4'7,&." '-:.%'&,-7."W'(I,"%.1,&'5-(:'9(Y",-4"4,(:.4"1'-.("'-4'7,&."75-&,'-E.-&"W:,(I," %.1,&'5-(:'9(Y*"" "

=6/"?/)@*+A">*;/'"

3("&:."-.T&"2.-.%,&'5-"$1&%,"(7,1."(=(&.E("'-7%.,('-21="%.1="5-":'2:.%" 75-7$%%.-7'.(/"&:.".88.7&"58"&:."'-&.%75--.7&'5-"-.&L5%A"5-"&:."5?.%,11"(=(&.E" 9.%85%E,-7."D.75E.(".?.-"E5%."'E95%&,-&/".(9.7',11="85%",991'7,&'5-("L'&:"'-&.-(." 75EE$-'7,&'5-"15,4(*"#5-(.U$.-&1=/"&:.%.":,("D..-"%.-.L.4"'-&.%.(&"'-" '-&.%75--.7&"4.('2-"'-"&:."75E9$&.%",%7:'&.7&$%."75EE$-'&="L'&:"E,-="-.L"'4.,(" "

f"

,-4"9%5E'('-2"%.($1&("D.'-2"%.95%&.4*"N&"'("'E95%&,-&"&5"9%.4'7&"&:."9.%85%E,-7."58" &:.(."9%595(.4"'-&.%75--.7&"'4.,("5-"E54.%-":'2:I9.%85%E,-7."75E9$&'-2" ,991'7,&'5-(*"V."D.1'.?."5$%"('E$1,&5%"L'11"D."'-(&%$E.-&,1"'-"&:'("%.(9.7&/",("&:." (58&L,%."8%,E.L5%A",115L(".,(="'-&.2%,&'5-"58"-.L"E.&:54("&5".-,D1.".T9.%'E.-&(" L'&:"9%595(.4"&.7:-'U$.("5-"1,%2."(7,1./"%.,1"L5%14",991'7,&'5-(*"" N-"A..9'-2"L'&:"&:."857$("5-"E54$1,%'&="'-"&:."('E$1,&5%"4.('2-/"&:."-.&L5%A" (=(&.E"'("4.('2-.4",(","(.9,%,&."E54$1."'-"5%4.%"&5"9%5?'4."&:."81.T'D'1'&="%.U$'%.4" &5"($995%&","%'7:"(.&"58"&.7:-'U$.(*"B5%.5?.%/"&:."-.&L5%A"7,-"D."('E$1,&.4"'-" ,%D'&%,%="4.&,'1/"L:'7:",115L("&%,4'-2"588"D.&L..-"8'4.1'&=",-4"%$-&'E."58" ('E$1,&'5-(*"\5%".T,E91./"&:."-.&L5%A"75$14"('E91="D.","1,&.-7=ID,(.4"E54.1/" L:'7:",(('2-(","9%.I(9.7'8'.4"4.1,="&5".,7:"E.((,2./"5%","7=71.I1.?.1"E54.1"&:,&" 7,9&$%.("&:."8'-.%"4.&,'1("58","%5$&.%*"P:."2.-.%,1"8%,E.L5%A"7,-"($995%&",-=" &595152=/"%5$&'-2",125%'&:E/".&7*/",-4"7,-"D.".,('1="&$-.4"85%"-.&L5%A"9,%,E.&.%(" ($7:",("D,-4L'4&:",-4"1,&.-7=*"_.15L/"L."4'(7$(("&:."D,('7"75E95-.-&("58"&:." 7$%%.-&1=",?,'1,D1."-.&L5%A"(=(&.E/"L:'7:"L."$(.4"'-"&:.".T9.%'E.-&("4.(7%'D.4"'-" 6.7&'5-"a*"

=*5*'*.B"(:;"C*&)$:."

V'&:'-"66PXE,7%5/",-"'-(&,-7."58"&:."-.&L5%A"5D`.7&"'("4.8'-.4"D="'&(" &595152'7,1"4.(7%'9&'5-"W'*.*/"&:."75--.7&'5-("D.&L..-"%5$&.%(X9%57.((5%(Y",-4"," %5$&'-2"E.&:54"&5"75E9$&.","9,&:"85%","E.((,2."D.&L..-"&L5"9%57.((5%(*"3(" '11$(&%,&.4"'-"\'2$%."H/"L."7,-"7$%%.-&1="($995%&"&5%$(/"8,&I&%../":=9.%7$D./"#15(/",-4" 2,EE,"&595152'.(/"4.&,'1.4"4.(7%'9&'5-("58"L:'7:"7,-"D."85$-4"'-"W>,11="c"P5L1.(/" RJJGY*"P:."product"5D`.7&"'-"&:'("8'2$%.".-,D1.("9%54$7'-2"&5%'"58"4'88.%.-&" 4'E.-('5-(*"P5"4.8'-.","-.L"'-&.%75--.7&/"&:."$(.%"-..4("&5"9%5?'4.","E.&:54"&5" D$'14"&:."&595152="58"&:."'-&.%75--.7&",-4","%5$&'-2"E.&:54"&5"75E9$&.","9,&:"85%"," E.((,2."D.&L..-"&L5"9%57.((5%(*"P:."(=(&.E"L'11"&,A."7,%."58"&:."4.&,'1("58" 75-2.(&'5-",("L."L'11".T91,'-"'-"&:."-.T&"(.7&'5-*" "

" \'2$%."HM"N-:.%'&,-7."4',2%,E"85%"-.&L5%A"5D`.7&(*"

"

" P:."7$%%.-&"-.&L5%A"E54$1."'("4.('2-.4"85%"E,T'E$E"%$-&'E.".88'7'.-7=*"P:." %5$&'-2",125%'&:E(",%."(&,&'7"W'*.*/"E.((,2.("D.&L..-"&L5"9%57.((5%(",1L,=("85115L" &:."(,E."9,&:/"%.2,%41.(("58"-.&L5%A"(&,&$(Y",-4"85115L"&:."(:5%&.(&"9,&:"5-"&:." -.&L5%A*"_,-4L'4&:"'(",1157,&.4"5-",11"1'-A("'-"&:."E.((,2."9,&:"85%"&:.".-&'%."&'E." %.U$'%.4"&5"&%,-(E'&",11"58"&:."4,&,*"

4*:./1)$*:">*;/'$:."

b.7.-&"(&$4'.("W<,E'1/"[1'A.%/";'-,%/"c"6:,18/"RJJFZ"6:,18/"<,E'1/"[1'A.%/"c" 6A'--.%/"RJJHY"(:5L"&:,&"E,-="&,%2.&",991'7,&'5-("&:,&"7,-"%.,7:".T&%.E."(7,1.(" "

F"

4'(91,="157,1"D$&"'%%.2$1,%"75EE$-'7,&'5-"9,&&.%-(*"6$7:",991'7,&'5-("75EE5-1=" ($88.%"8%5E"-.&L5%A"75-2.(&'5-"4$."&5":5&"(95&("'-"&:."-.&L5%AZ"&:$(/"E54.1'-2" 75-2.(&'5-"'("7%$7',1"85%"&:.",77$%,7="58","-.&L5%A"('E$1,&5%*" \%5E","E54.1'-2"9.%(9.7&'?./"'%%.2$1,%"75EE$-'7,&'5-"9,&&.%-("95(."&:." D'22.(&"7:,11.-2./",("&:."-.&L5%A"75-2.(&'5-"7,--5&"D."9%.4'7&.4","9%'5%'*">'88.%.-&" 9,%&("58"&:."-.&L5%A"7,-"D."75-2.(&.4",&"4'88.%.-&"&'E.(/",-4"&:."75-2.(&'5-" 4.9.-4("-5&"5-1="5-"-.&L5%A"8.,&$%.(/"($7:",("&595152=/"D,-4L'4&:/",-4"%5$&'-2" ,125%'&:E/"D$&",1(5"5-"9%57.((5%"8.,&$%.(/",("&:.="4.&.%E'-."L:.-"&:."E.((,2.(",%." '-`.7&.4"'-&5"&:."(=(&.E*"P:$(/"85%"($7:"'%%.2$1,%",991'7,&'5-(/"4.&,'1.4"('E$1,&'5-" &:,&",775$-&("85%"&:."%5$&.("58"E.((,2.(",-4"75-2.(&'5-"5-"'-4'?'4$,1"-.&L5%A" 75E95-.-&("'(".((.-&',1*" #5-2.(&'5-"E54.1'-2"85%"%.2$1,%"75EE$-'7,&'5-"9,&&.%-("'("%.1,&'?.1=".,('.%/" ,("E.((,2."4.1,=(",%."9%.4'7&,D1.*"\5%"'-(&,-7./"85%"75E9$&,&'5-("5-","%.2$1,%"8'-'&." .1.E.-&"2%'4"L'&:"5-1="D5$-4,%="75EE$-'7,&'5-/"&:."75EE$-'7,&'5-"9,&&.%-"58"&:." ,991'7,&'5-"L'11"E,&7:"9.%8.7&1="L'&:","E.(:"'-&.%75--.7&*"P:$(/"&:.%."L'11"-5&"D." ,-="75-2.(&'5-/",-4"'&"'("($88'7'.-&"&5"A-5L"&:."1,&.-7="58","E.((,2."D.&L..-"&L5" -.'2:D5%'-2"95'-&(*"3&"&:."5&:.%".T&%.E./"L:.-",11I&5I,11"75EE$-'7,&'5-"'(" 9.%85%E.4/"&:."E.((,2."4.1,=("7,-"D."9%.4'7&.4",(","8$-7&'5-"58"-.&L5%A" 9,%,E.&.%(","9%'5%'*"P:.",D'1'&="&5"9%.4'7&"&:."E.((,2."4.1,="7,-"('2-'8'7,-&1=" ('E91'8="&:."-.&L5%A"('E$1,&'5-/"9%5?'4'-2":$2."(9..4$9("'-"('E$1,&'5-"%$-&'E.*" 3(","2.-.%,1"9$%95(."&551/"66PXE,7%5"7,-"($995%&"D5&:",99%5,7:.(*"P:."full" '-&.%75--.7&"5D`.7&"75%%.(95-4("&5"&:."8$11="75--.7&.4"'-&.%75--.7&/"L:'7:"9%5?'4.(" ,"75-2.(&'5-"8%.."-.&L5%A*"\5%"&:."9$%95(.("58"('E$1,&'5-/"'&"'("&:."(,E.",("," 1,&.-7=ID,(.4"-.&L5%A"E54.1*"P:."sharedcircuit"'-&.%75--.7&"5D`.7&/"5-"&:." 5&:.%":,-4/"'("4.('2-.4"&5"E54.1"75-2.(&'5-"5-","1'-AID=I1'-A"D,('("D="E54.1'-2":." 75EE$-'7,&'5-"D.&L..-".,7:"9,'%"58"-54.(",(","75-&'-$5$("815L"58"4,&,*"@,7:"815L" :,("D,-4L'4&:",1157,&.4"&5"'&"'-"($7:","L,="&:,&"&:."($E"58"&:."D,-4L'4&:"58",11" 815L("9,(('-2"&:%5$2:","2'?.-"-.&L5%A"1'-A"45.("-5&"($%9,(("&:."D,-4L'4&:"58"&:." 1'-A*"N-"5$%"7$%%.-&"'E91.E.-&,&'5-/"&:."514.(&",7&'?."815L"%.7.'?.(",11"&:." D,-4L'4&:"'&"7,-"$(.*"P:."-.T&"514.(&"815L"'(",1157,&.4",-="%.E,'-'-2"D,-4L'4&:"'&" 7,-"$(./",-4"(5"5-*"N-"&:'("L,="E54.1"-.&L5%A"75-2.(&'5-"7,-"D."E54.1.4".88'7'.-&1=" L:'1."(&'11"5D&,'-'-2"%.,(5-,D1.",77$%,7=",("L'11"D."(:5L-"'-"6.7&'5-"a*"

=+(2/"D$'/"E+$F/:"#$%&'()$*:"

66PXE,7%5"'(",D1."&5"2.-.%,&."-.&L5%A"&%,88'7",-4"9%57.((5%"L5%A15,4("$('-2" &%,7."8'1.("&:,&"%.75%4"B;N"7,11(",-4"&:."&'E."(9.-&"9.%85%E'-2"75E9$&,&'5-" D.&L..-"B;N"7,11(*"#$%%.-&1=/"&L5"&%,7."85%E,&("7,-"D."9%57.((.4M"[9.-"P%,7." \5%E,&"W[P\Y"W<-$98.%/"_%.-4.1/"_%$-(&/"B'T/"c"C,2.1/"RJJKY",-4">]B;N*"P:." mpitrace"71,(("W(.."\'2$%."GY"%.,4("&:."&%,7."8'1."$('-2"&:."parser ,D(&%,7&"D,(." 71,(("L:'7:":,("(9.7',1'^,&'5-("85%"D5&:"8'1."85%E,&(*"344'&'5-,1"85%E,&("7,-"D." ,44.4".,('1="D="9%5?'4'-2",44'&'5-,1"parser"(9.7',1'^,&'5-(*">'88.%.-&"&%,7." 85%E,&("9%5?'4."4'88.%'-2"1.?.1("58"4.&,'1",D5$&"&:."B;N"7,11"('2-,&$%./",-4"&:'(" 'E9,7&("&:.",77$%,7="58"&:."('E$1,&5%*" [9.-"P%,7."\5%E,&"&%,7.(",%."7511.7&.4"D="1'-A'-2"&:."&,%2.&",991'7,&'5-"L'&:" &:."g,E9'%P%,7."1'D%,%="Wg,E9'%P%,7.Y*"g,E9'%P%,7."$(.("&:.";B;N"'-&.%8,7."&5" '-&.%7.9&"B;N"7,11(/",-4"'&"%.75%4("&%,7."'-85%E,&'5-"'-"[P\"85%E,&&.4"&%,7."8'1.(*" "

!J"

g,E9'%P%,7."L%'&.(","D'-,%="8'1."85%".,7:"9%57.((*"P:."[P\"(&,-4,%4"9%5?'4.(",-" '-&.%8,7."(9.7'8'7,&'5-"85%"%.,4'-2",-4"L%'&'-2"[P\"&%,7."8'1.(*"P:."D'-,%="8'1.("7,-"D." %.,4"D="&:."otfdump"$&'1'&="9%5?'4.4"L'&:"&:."g,E9'%P%,7."1'D%,%=*"P:'("$&'1'&=" 9%54$7.("36#NN".-754.4"8'1.("L:'7:"&:."('E$1,&5%"$(.(",("'-9$&*" P:.">]B;N"85%E,&"'(","7$(&5E"B;N"&%,7."8'1."85%E,&/"%.75%4.4"'-"D'-,%=/"L:'7:" :,("D..-"4.?.159.4",("9,%&"58"&:."66PXE,7%5"('E$1,&5%*")'A."[P\/">]B;N"8'1.(",%." 5D&,'-.4"D="1'-A'-2"&:.",991'7,&'5-"L'&:","1'D%,%="&:,&"$(.("&:.";B;N"'-&.%8,7."&5" '-&.%7.9&"B;N"7,11(*"P:.">]B;N"85%E,&"%.75%4("E5%."'-85%E,&'5-"&:,-"[P\/" '-71$4'-2"&:."8$11"('2-,&$%."58",11"B;NI!",-4"B;NIR*"V'&:"&:'(",44'&'5-,1"4.&,'1"L.",%." ,D1."&5"E5%.",77$%,&.1="('E$1,&.",-",991'7,&'5-*"P:.">]B;N"85%E,&",1(5"%.75%4(" %.&$%-"?,1$.(",-4"B;N"%.U$.(&"'-85%E,&'5-*"P:'(",115L(".%%5%"7:.7A'-2",-4"9.%E'&(" $("&5"E,&7:"'EE.4',&."E54."B;N"59.%,&'5-("L'&:"&:."B;N"59.%,&'5-("&:,&"75E91.&." &:.E*"N-",44'&'5-/">]B;N",115L("'-4'?'4$,1"8$-7&'5-("&5"D."9%58'1.4"'-(&.,4"58"&:." .-&'%."9%52%,E*";%57.((5%":,%4L,%."9.%85%E,-7."75$-&.%"'-85%E,&'5-"7,-",1(5"D." (&5%.4"'-">]B;N"8'1.("$('-2"&:.";.%85%E,-7."3991'7,&'5-";%52%,EE'-2"N-&.%8,7." W;3;NY*"P:'(",115L("'-85%E,&'5-"($7:",("7,7:."E'((.(",-4"815,&'-2"95'-&"59.%,&'5-(" &5"D."1522.4*"6$7:"4,&,"'("%.75%4.4"D5&:"L'&:'-",-4"D.&L..-"B;N"7,11(*"P:'(" '-85%E,&'5-"L'11"D."$(.4"D="&:."('E$1,&5%"'-"E5%."4.&,'1.4"9%57.((5%"E54.1(/",(" &:.=",%."E,4.",?,'1,D1.*" "

#A/'/)*:"!55'$2()$*:1""

P%,7."8'1.(",%."2.-.%,&.4"L'&:"(9.7'8'7",991'7,&'5-"'-9$&",-4"9,%,11.1"&,(A" 75-8'2$%,&'5-/"='.14'-2","4.&,'1.4"9%58'1."58"5-."9,%&'7$1,%"%$-*"P:%5$2:"&:." E,-'9$1,&'5-"58"9,%,E.&.%("$(.4"&5"E54.1"&:.":,%4L,%.",-4"(L,99'-2"'-"4'88.%.-&" E.((,2'-2"E54.1(",-4"(&%,&.2'.(/"&%,7.I4%'?.-"('E$1,&'5-"7,-"75-&%'D$&." ('2-'8'7,-&1="&5"9.%85%E,-7."59&'E'^,&'5-",-4":,%4L,%."4.('2-",&"9,%,11.1'(E"(7,1.(" 5-"&:."(,E."5%4.%",("&:,&"$(.4"&5"2.-.%,&."&:."&%,7.*"05L.?.%/"&:."7:,11.-2."58" 59&'E'^'-2"754.("5%"4.('2-'-2":,%4L,%."85%".T&%.E."(7,1.("%.U$'%.("('E$1,&'5-" 7,9,D'1'&'.("15-2"D.85%.":,%4L,%."'(",7&$,11=",?,'1,D1."85%"&%,7."8'1."2.-.%,&'5-*" 344'&'5-,11=/"E,-="4'(&%'D$&.4IE.E5%="754.(":,?."D%,-7:"(&,&.E.-&("&:,&",%." 4.9.-4.-&"5-"L:'7:"58","(.&"58"%.U$.(&("L,("E,&7:.4",&","2'?.-"(&,2.*"P:.(." .T.7$&'5-"4.&,'1("7,--5&"D.",4.U$,&.1="7,9&$%.4"'-"&%,7.I4%'?.-".T.7$&'5-/"('-7."&:." &%,7."8'1."%.,4.%"7,--5&"%.&%5,7&'?.1="%.4'%.7&"75-&%51"815L"'-"&:.",991'7,&'5-*" >'%.7&".T.7$&'5-"'(",-".1.2,-&"(&%,&.2="85%"2.-.%,&'-2"&%,7.(",&"$1&%,"(7,1."5-" E5%."%.,4'1=",?,'1,D1.":,%4L,%./"D$&"&:."%.U$'%.E.-&"58"%$--'-2"&:."8$11",991'7,&'5-" :,E9.%("9,%,E.&.%"(&$4'.(",-4"1'E'&("&:."(7,1."&:,&"'("$1&'E,&.1=",7:'.?,D1.*" P:5$2:"7%.,&'-2"(A.1.&5-",991'7,&'5-("%.U$'%.(","2%.,&.%"9%52%,EE.%".885%&"&:,-" &%,7.I4%'?.-"('E$1,&'5-"5%"4'%.7&".T.7$&'5-/"4%'?'-2"&:."('E$1,&5%"8%5E","(A.1.&5-" ,991'7,&'5-"9%5?'4.(",-"'EE.-(.1="95L.%8$1",99%5,7:"&5".?,1$,&.".88'7'.-7=",-4" (7,1,D'1'&=",&".T&%.E."(7,1.(",-4"&5".T9.%'E.-&"L'&:"754."%.5%2,-'^,&'5-"5%":'2:I 1.?.1"%.8,7&5%'-2"L'&:5$&":,?'-2"&5"%.L%'&."&:."-$E.%'7,1"9,%&"58",-",991'7,&'5-*"P:'(" '("8$%&:.%"8,7'1'&,&.4"D="&:."%.4$7&'5-"'-"754."('^."&:,&":,99.-("L:.-"&:."D$1A"58" 75E9$&,&'5-"'("%.E5?.4*" 3(","D,('7"9,%,11.1",991'7,&'5-/"75-('4.%","('E91."9'-2I95-2"D.&L..-"9,'%L'(."%,-A(" '-","9,%,11.1"(=(&.E"W%,-A"J".T7:,-2.("4,&,"L'&:"%,-A"!/"%,-A"R"L'&:"%,-A"a/".&7*Y*" "

!!"

P:."'E91.E.-&,&'5-"58"&:'("9%52%,E"5-"&:."('E$1,&5%/"2'?.-"'-"\'2$%."K/"155A(" ,1E5(&"'4.-&'7,1"&5"&:."-,&'?."B;N"'E91.E.-&,&'5-/".T7.9&"85%"4'88.%.-7.("'-"&:." (=-&,T"58"B;N"7,11(*"_$'14'-2"5-"&:'("D,('7"(A.1.&5-",991'7,&'5-/"'&"'(".,(="&5"&.(&"&:." .88.7&("58"?,%='-2"-.&L5%A"&595152=/":,%4L,%."1,=5$&"W.*2*"9%57.((5%("9.%"-54.Y/" '-4.T'-2"(&%,&.2'.("85%"-54.",1157,&'5-/".&7*"]('-2","75-&.-&'5-I8%.."-.&L5%A"E54.1/" mpipingpong":,("D..-"%$-"L'&:"$9"&5"!KB"-54.("5-","('-21."L5%A(&,&'5-" 9%57.((5%"L'&:","E.E5%="855&9%'-&"58"%5$2:1="G<'_"85%".,7:"B;N"9..%*" "

void mpipingpong::run() { this->mpi_->init(); mpicomm world = this->mpi_->comm_world(); mpitype type = mpitype::mpi_double; int rank = world.rank().id; int size = world.size().id; if(! ((size % 2) && (rank+1 >= size))) { // With an odd number of nodes, rank (size-1) mpiid peer(rank ^ 1); // partner nodes 0<=>1, mpiapi::const_mpistatus_t stat; for(int half_cycle = 0; half_cycle < 2*niter; if((half_cycle + rank) & 1) mpi_->send(count_, type, peer, mpitag(0), else mpi_->recv(count_, type, peer, mpitag(0), } } mpi_->finalize(); }

sits out 2<=>3, etc. ++half_cycle) { world); world, stat);

" \'2$%."KM"B,'-"%$-"1559"85%","9,'%L'(.I.T7:,-2."B;N"9'-2I95-2"(A.1.&5-" ,991'7,&'5-*" " " 3"E5%."('2-'8'7,-&",991'7,&'5-"'("&:."(A.1.&5-'^,&'5-"58"E'-'B>/","E51.7$1,%" 4=-,E'7("E'7%5I,991'7,&'5-"8%5E"&:."B,-&.?5"9%5`.7&"WB,-&.?5Y*"P:."8$11"E'-'B>" ,991'7,&'5-"'("%.,(5-,D1="(E,11/",&"!faJ"(5$%7."1'-.("58"754./",-4"&:."(A.1.&5-" ,991'7,&'5-"'("5-.IU$,%&.%"&:."('^.",&"GHK"1'-.(*"B5(&"58"&:."A.="75E9$&,&'5-("'-" E'-'B>"2.&"7511,9(.4"45L-"&5"('E91."compute(...)"7,11(/"L:'1.",11"B;N"7,11(",-4" 75-&%51"152'7"%.1.?,-&"&5".T.7$&'5-"9,&&.%-(",%."%.&,'-.4*"P:."(A.1.&5-"?.%('5-"58"&:." &'E."'-&.2%,&5%"'-"E'-'B>"W\'2$%."SY"9%5?'4.(",-".T,E91."58":5L"&:'("E'T&$%."58" 9%.I.?,1$,&.4"&'E'-2"'-85%E,&'5-",-4"5%'2'-,1"9%52%,E"152'7"7,-"D."$(.4"&5"4%'?." &:."('E$1,&5%*""

"

!R"

" " void minimd::integrate::run(shared_ptr atm, shared_ptr frc, shared_ptr nbr, shared_ptr cmm, shared_ptr thm, shared_ptr tmr) { mpiid rank = mpi_->comm_world().rank(); for(int n = 0; n < this->ntimes; ++n) { env_->compute(interpolator->get("integrate::run", 0)); if((n+1) % nbr->every) { cmm->communicate(atm); } else { cmm->exchange(atm); cmm->borders(atm); nbr->build(atm); } frc->compute(atm, nbr); env_->compute(interpolator->get("integrate::run", 1)); if(thm->nstat) thm->compute(n+1, atm, nbr, frc); } } \'2$%."SM"P'E."'-&.2%,&5%"8%5E"&:."(A.1.&5-'^.4"E'-'B>",991'7,&'5-*" " P:."&L5"7,11("&5"env->compute(...)"('E$1,&."&:.",7&$,1"&'E."'-&.2%,&'5-"'-" E'-'B>*"P:."'-&.%951,&.4"&'E."?,1$.("85%"&:.(."7,11("75E."8%5E","9,%,E.&%'7" .?,1$,&'5-"58"E'-'B>"9.%85%E,-7./"D$&"&:.="75$14"`$(&",("L.11"D."5D&,'-.4"8%5E" 4.&,'1.4"E'7%59%57.((5%"('E$1,&'5-(/"%$-("5-".E$1,&5%"(=(&.E("($7:",("j@B]/"5%" 75-(&'&$&'?."9.%85%E,-7."E54.1(*"P:.(."&'E."?,1$.("7,-",1(5"D."(7,1.4"5%":,?."-5'(." ,44.4"&5"&:.E"&5"(&$4="&:.".88.7&("58"15,4"'ED,1,-7."5%"%52$."[6"-5'(.*"P:'(" (A.1.&5-'^,&'5-".885%&"'("D.'-2"$(.4",(","4.?.159E.-&"91,&85%E"85%",-,1=^'-2",-4" '-(&%$E.-&'-2"E5%."('2-'8'7,-&",991'7,&'5-"754.(*"

G"C/1&')1"

N-"&:'("(.7&'5-"L."9%.(.-&"9.%85%E,-7."%.($1&("85%"5$%"('E$1,&5%/"D5&:"'-"&.%E("58" &:.",D'1'&="58"&:."('E$1,&5%"&5"%.9%54$7."E.,($%.4"E,7:'-."9.%85%E,-7.",-4"'-" &.%E("58"&:."75E9$&,&'5-,1".T9.-(."58"%$--'-2"&:."('E$1,&5%*"V.",1(5"$(."&:." ('E$1,&5%"&5"4.&.%E'-."&:."(.-('&'?'&="58",991'7,&'5-"%$-&'E.("&5"7:,-2.("'-"E,7:'-." 7:,%,7&.%'(&'7("'-"5%4.%"&5"4.E5-(&%,&."&:."95L.%"58"('E$1,&'5-"'-"$-4.%(&,-4'-2" ,991'7,&'5-"9.%85%E,-7.*"

HI5/+$%/:)('"#/)&5"

;.%85%E,-7."(&$4'.("L.%."7,%%'.4"5$&"5-"&L5"(.9,%,&."91,&85%E(*";,%,11.1"(&$4'.("58" 3Bk"L.%."9.%85%E.4"5-"6,-4',l("b.46&5%E"j$,1'8'7,&'5-"Wb6jY"E,7:'-./"L:'7:" "

!a"

75-('(&("58"aR"4$,1"9%57.((5%"75E9$&."-54.(",-4"Gf"U$,4"9%57.((5%"75E9$&." -54.(*"P:.(.",%."%.(9.7&'?.1="D,(.4"5-"R*G"k0^"4$,1I75%."3B>"[9&.%5-",-4"R*R"k0^" U$,4I75%."3B>"[9&.%5-"9%57.((5%(*"b6j"75-('(&("58","('-21."7,D'-.&/"'-"L:'7:"7,(." &:."'-&.%75--.7&"'("%.4$7.4"&5","R>"E.(:"58"4'E.-('5-"GTRG*"P:."E.(:"'("L%,99.4" '-"&:."1,%2.%"4'E.-('5-*"P:."1'-A"D'4'%.7&'5-,1"D,-4L'4&:"58"&:."E.(:"'("F*K"k_X(" ,-4"&:."D,-4L'4&:"58"&:."0=9.%P%,-(95%&"W0PY"&:,&"75--.7&("&:."%5$&.%"7:'9"&5"&:." 9%57.((5%"'("a*R"k_X("'-".,7:"4'%.7&'5-*";,%,E.&.%("85%"$(."'-"&:."('E$1,&'5-"58"3Bk" 5-"b6j"L.%."4.&.%E'-.4"D="%$--'-2"B;N"D.-7:E,%A("5-"&:."(=(&.E*"P:."('E$1,&5%" E54.1("&:."D'4'%.7&'5-,1"1'-A("'-"b6j",(","9,'%"58"$-'4'%.7&'5-,1"1'-A(/"&:$("5-1="4,&," 85%"$-'4'%.7&'5-,1"D,-4L'4&:("L.%."7511.7&.4*"P:."75EE$-'7,&'5-"D,-4L'4&:" D.&L..-"-54.("5-",-"5&:.%L'(."'41."-.&L5%A"'("1'E'&.4"D="&:."0P"1'-A"D.&L..-"&:." 9%57.((5%",-4"&:."%5$&.%"7:'9/",-4"&:."E.,($%.4"$-'4'%.7&'5-,1"D,-4L'4&:"L,("'-" &:'("7,(."!fRa"B_X(*"V:.-"&L5"9,'%("58"-54.("75EE$-'7,&.",-4"&:."-.&L5%A"&%,88'7" 85%".,7:"58"&:.(."9,'%("'("%5$&.4"5?.%","('-21."%5$&.%I%5$&.%"-.&L5%A"1'-A/"&:." E.,($%.4",22%.2,&."$-'4'%.7&'5-,1"D,-4L'4&:"5?.%"&:."(:,%.4"%5$&.%I%5$&.%"1'-A" L,("aRGH"B_X(*"P:."-.,%.(&"-.'2:D5%"1,&.-7="L,("E.,($%.4",&"G*GG"m(*"V.",1(5" E.,($%.4"&:."D,-4L'4&:",-4"1,&.-7="85%"B;N"75EE$-'7,&'5-"D.&L..-","9,'%"58" 9%57.((.("5-"&:."(,E."-54."&5"D."K!!H"B_X(",-4"R*f"m(*"P:.(."%.($1&("L.%." 5D&,'-.4"$('-2"5-1="&:."U$,4I75%."-54.("L:.-"&:."E,7:'-."L,("5&:.%L'(."'41.*" \5%",991'7,&'5-(/"L."$(.4"&:."mpipingpong"(A.1.&5-",991'7,&'5-"4.(7%'D.4"'-" 6.7&'5-"R",-4"&:."3BkRJJK"D.-7:E,%A"W0.-(5-"c"n,-2/"RJJRY*"3BkRJJK"'("," 9,%,11.1"'E91.E.-&,&'5-"58"&:."312.D%,'7"B$1&'k%'4"E.&:54*"N&"L,("4.?.159.4",&" ),L%.-7.")'?.%E5%."C,&'5-,1"),D5%,&5%=/",-4"'("9,%&"58"&:."6.U$5',"D.-7:E,%A" ($'&."W36#"6.U$5',"_.-7:E,%A"#54.(Y*"P:."754."'("L%'&&.-"'-"N6["(&,-4,%4"#"$('-2" B;N"85%"9,%,11.1'^,&'5-*"P:.",12.D%,'7"E$1&'2%'4"E.&:54"'("75EE5-1="$(.4"&5"(51?." (9,%(."(=(&.E("58"1'-.,%".U$,&'5-(/".(9.7',11="&:5(."&:,&",%'(."'-",991'7,&'5-("58"" 8'-'&.".1.E.-&"E.&:54(*"P:."45E'-,-&"75E9$&,&'5-,1"A.%-.1"'("(9,%(."E,&%'T"?.7&5%" E$1&'91'7,&'5-Z"&:$(/"&:."E.E5%="D,-4L'4&:"'("&:."E,'-"8,7&5%"&:,&"4.&.%E'-.(" 9.%85%E,-7.*"\5%"9,%,11.1'^,&'5-/".,7:"9%57.((5%"'(",(('2-.4","95%&'5-"58"&:."8'-'&." .1.E.-&("W($D45E,'-Y",-4"&:.",((57',&.4"?,%',D1.(X.U$,&'5-("'-"&:."(9,%(."E,&%'T*" #5EE$-'7,&'5-"'("%.U$'%.4"&5".T7:,-2."D5$-4,%="'-85%E,&'5-"D.&L..-" ($D45E,'-(*"P:.",?.%,2."B;N"E.((,2."('^."85%"&:.(."-5-7511.7&'?."7,11("'(",%5$-4"RI !J"<_*"#511.7&'?."7,11("45E'-,&."&:."&5&,1"75EE$-'7,&'5-"&'E./",("&:.="&,A.",%5$-4" FJo"58"&:."&5&,1"B;N"&'E.*"B5%."4.&,'1.4"'-85%E,&'5-",D5$&"3BkRJJK"7,-"D."85$-4" ,&"W3Bk"D.-7:E,%A"($EE,%=Y*"

J('$;()$*:"*,")6/"#$%&'()*+"

P:."('E$1,&5%"L,("?,1'4,&.4"5-"%.($1&("8%5E","%,-2."58"3Bk"75-8'2$%,&'5-("$('-2" &:."1,&.-7'.(",-4"D,-4L'4&:("E.,($%.4"85%"b6j",D5?.*"P:."%,-A("L.%."1,'4"5$&" ,15-2"&:."-54.("58"&:."E.(:/"&%,?.%('-2"&:."(:5%&.%"4'E.-('5-"8'%(&*"V."$(.4" 9%57.((5%"75$-&("58"95L.%("58"R"8%5E"f"&5"!Rf*"P:.(."L.%."%$-"$('-2"!"9%57.((5%" 9.%"-54."W99-Y/"R99-/",-4"G99-*"PL5"152'7,1"2%'4"4.75E95('&'5-("L.%."$(.4/","!>" 4.75E95('&'5-",-4","a>"4.75E95('&'5-*"P%,7.("L.%."7511.7&.4"$('-2"&:."1'2:&L.'2:&" >]B;N"1'D%,%=*"\'2$%."f"(:5L("&:."E.,($%.4"('E$1,&.4"L,11&'E."?.%($("&:." E.,($%.4".1,9(.4"L,11&'E."L'&:"&:."('E$1,&'5-"4%'?.-"8%5E"&:.(.">]B;N"&%,7.(*" " "

!G"

" \'2$%."fM"#5E9,%'(5-"58"('E$1,&.4",-4"5D(.%?.4"%$-&'E.("85%"&:."3BkRJJK" 9%52%,E"85%","?,%'.&="58"-54."75$-&(",-4"4.75E95('&'5-(*" "

4(5(7$'$)$/1"*,")6/"#$%&'()*+"

V."D.2'-":'2:1'2:&'-2"&:."7,9,D'1'&'.("58"66PXE,7%5"D="4.(7%'D'-2"&L5"(.&("58" D.-7:E,%A"('E$1,&'5-("58"&:."mpipingpong"(A.1.&5-",991'7,&'5-*"P:."8'%(&"'("$(.4" &5"E.,($%.":5L"E$7:"9%57.((5%"&'E."&:."('E$1,&5%"'&(.18"%.U$'%.(/",-4"&:."(.75-4" '11$(&%,&.(":5L"&:."('E$1,&5%"7,-"D."$(.4"&5"(&$4="E,7:'-."9.%85%E,-7.*"]('-2"," 75-&.-&'5-I8%.."-.&L5%A"E54.1"&5"857$("5-"&:."9%57.(("1,=.%"9.%85%E,-7./" ('E$1,&'5-("L.%."9.%85%E.4"L'&:"$9"&5"RRJ"9..%(*"\'2$%."F"4.E5-(&%,&.("&:.":'2:" 9.%85%E,-7."75-&.T&"(L'&7:'-2"&:,&"5$%"1'2:&L.'2:&"&:%.,4ID,(.4"9%57.((" 'E91.E.-&,&'5-"7,-",7:'.?.*"3-"B;N"9'-2X95-2"(.-4X%.7.'?."9,'%"7,-"D."('E$1,&.4" '-",D5$&"H"m("58"&'E.*"C.,%1="!/JJJ"9%57.((5%("7,-"D."('E$1,&.4"D.85%."&:."&:'%4" 1.?.1"7,7:."-5"15-2.%":514("&:."('E$1,&5%d("4,&,/",&"L:'7:"95'-&"L,11&'E.("D.2'-"&5" '-7%.,(."('2-'8'7,-&1=*"38&.%"&:."&:'%4"1.?.1"7,7:."('^."'(".T7..4.4/"&:."75(&"58" ('E$1,&'-2","(.-4X%.7.'?."9,'%"1.?.1("588"&5",%5$-4"!J*H"m(*"\'2$%."!J"'11$(&%,&.("&:." %.($1&("58"('E$1,&'5-("$('-2","8,&I&%.."-.&L5%A"L'&:"G"1.?.1(",-4","%,4'T"58"RG*"P:." .88.7&("58"&%,88'7"75-2.(&'5-"5-"&:."9.%85%E,-7."58"&:."mpipingpong",991'7,&'5-" ,%."?.%="71.,%1="5D(.%?.4",("&:."-$ED.%"58"-54.("($%9,((.("!R/"L:'7:"'("&:."-$ED.%" 58"-54.("75--.7&.4"&5","('-21."%,4'T"RG"7%5((D,%"'-"&:."8,&I&%..*" "

"

!H"

" \'2$%."FM";.%85%E,-7."58"mpipingpong"('E$1,&'5-("$('-2","75-&.-&'5-I8%.." -.&L5%A"E54.1"L'&:"$9"&5"RRJ"9..%("(.-4'-2","&5&,1"58"GB"E.((,2.(*"P:."(&.9"'-"&:." 9.%85%E,-7."7$%?."75%%.(95-4("&5"&:."95'-&",&"L:'7:"&:."9%52%,E",-4"'&("4,&,"-5" 15-2.%"8'&"'-&5"&:'%4"1.?.1"7,7:.*" "

" \'2$%."!JM"P%,88'7"75-2.(&'5-"'-"mpipingpong"('E$1,&'5-("L'&:"%,-45E"B;N"%,-A" ,(('2-E.-&"5-","8,&I&%.."-.&L5%A"WG"1.?.1(/"%,4'T"RGY*"@,7:"-54."(.-4("KHHaKX!"#$%" E.((,2.(*" " "

!K"

P:."E54$1,%",-4":'2:"9.%85%E,-7."'-8%,(&%$7&$%./",-4"2%5L'-2"7511.7&'5-"58" :,%4L,%.",-4"(58&L,%."E54.1'-2"7,9,D'1'&'.("9%5?'4.4"D="66PXE,7%5"7%.,&."," 95L.%8$1"91,&85%E"85%".T915%'-2":,%4L,%.",-4"(58&L,%."4.('2-*"V."9%.(.-&":.%."&:." %.($1&("58"(.?.%,1"9,%,E.&%'7"(&$4'.("L:'7:"4.E5-(&%,&."&:'(",D'1'&="&5"4.?.159" '-('2:&("D="%,9'41="9.%85%E'-2"('E$1,&'5-("(9,--'-2"4.('2-"(9,7.(*"P:."85115L'-2" 9,%,E.&.%"(&$4'.("L.%."9.%85%E.4"$('-2"3Bk"&%,7.(",-4"('E$1,&5%"9,%,E.&.%(",(" 4.(7%'D.4",D5?.*"\'2$%."!!",-4"!R"%.(9.7&'?.1="'11$(&%,&."&:."(.-('&'?'&="58"('E$1,&.4" 3Bk".T.7$&'5-"&'E.("&5"1,&.-7=",-4"D,-4L'4&:"?,%',&'5-(*"P:."3Bk"('E$1,&'5-"L,(" 45-."$('-2">]B;N"&%,7.("7511.7&.4"$('-2"!Rf"9%57.((5%("58"b6j*"g,%='-2"5-1=" 1,&.-7=",-4":514'-2",11"5&:.%"9,%,E.&.%("75-(&,-&/"L."(.."&:,&"85%"1,&.-7'.("5-"&:." 5%4.%"58"!J"m("&:."9%.4'7&.4"%$-&'E.(",%."8,'%1="'-(.-('&'?."&5"7:,-2.("'-"&:."1,&.-7=*" b.4$7'-2"1,&.-7'.(".?.-"8$%&:.%"9%54$7.("?.%="1'&&1."D.-.8'&"'-"%$-&'E./"L:'1.",&" 1,&.-7'.("58"!JJ"m("9.%85%E,-7."&:."%$-&'E.("D.2'-"&5"'-7%.,(."(:,%91=*"g,%='-2" -.&L5%A"D,-4L'4&:"L:'1.":514'-2"&:."1,&.-7="75-(&,-&/"L."8'-4"&:,&",&"!"k_X("5%" 2%.,&.%"D,-4L'4&:/"1'&&1."9.%85%E,-7."?,%',&'5-"'("(..-"'-"&:."3Bk"%$-&'E.(/",-4",11" 58"&:."-.&L5%A"&595152'.("9.%85%E"('E'1,%1=*"V:.-"&:."D,-4L'4&:"8,11("('2-'8'7,-&1=" 15L.%"&:,-"!"k_X(/"%$-&'E.("('2-'8'7,-&1="'-7%.,(./",-4"?,%',&'5-"'("5D(.%?.4",E5-2" &:."-.&L5%A"&595152'.(/"L'&:"&:."&5%$("&595152="2'?'-2"(1'2:&"15-2.%".T.7$&'5-"&'E.(" &:,-"8,&I&%.."5%"7%5((D,%"&595152'.(*" "

" \'2$%."!!M"6&$4'.("58"&:."(.-('&'?'&="&5"-.&L5%A"1,&.-7="58"&%,7.I4%'?.-"3Bk" ('E$1,&'5-("$('-2"!Rf"-54.("L'&:","('-21."9%57.((5%"9.%"-54.*"P'E."'("E.,($%.4",(" 1,&.-7="'("?,%'.4":514'-2"&:."D,-4L'4&:"75-(&,-&",&"!"k_X(*" "

"

!S"

" \'2$%."!RM"6&$4'.("58"&:."(.-('&'?'&="&5"-.&L5%A"D,-4L'4&:"58"&%,7.I4%'?.-"3Bk" ('E$1,&'5-("$('-2"!Rf"-54.("L'&:","('-21."9%57.((5%"9.%"-54.*"P'E."'("E.,($%.4",(" D,-4L'4&:"'("?,%'.4":514'-2"&:."1,&.-7="75-(&,-&",&"a"m(*" " V:'1."&:.(."'-'&',1"9,%,E.&.%"(&$4'.("857$("5-"-.&L5%A"7:,%,7&.%'(&'7(/",("E5%." 9%57.((5%",-4"E.((,2'-2"E54.1(",%."E,4.",?,'1,D1."L'&:'-"66PXE,7%5/"&:'("&=9."58" (.-('&'?'&="(&$4="L'11"D."95(('D1."85%","L'4."%,-2."58":,%4L,%.",-4"(58&L,%." 9,%,E.&.%(*"

K"4*:2'&1$*:1"

V.":,?."4.(7%'D.4"66PXE,7%5/","E,7%5(7,1."('E$1,&5%"85%"&:."75,%(.I2%,'-.4" ('E$1,&'5-"58",991'7,&'5-("%$--'-2"1,%2.I(7,1."9,%,11.1"75E9$&.%(*""P:."('E$1,&5%"'(" 4.('2-.4"&5",(('(&"'-"&:."4.?.159E.-&"58"75E9$&'-2",%7:'&.7&$%.(",-4",991'7,&'5-(*" P:."('E$1,&5%":,(","81.T'D1.",%7:'&.7&$%.",115L'-2"&%.,&E.-&"58"4'88.%.-&":,%4L,%." ,-4"(58&L,%."75E95-.-&(",&"?,%'5$("8'4.1'&'.(*"[$%"'E91.E.-&,&'5-"'(".T&%.E.1=" 1'2:&L.'2:&/".-,D1'-2"1,%2.I(7,1."(=(&.E("&5"D."('E$1,&.4"5-","('-21."9%57.((5%*""V." ,1(5"9%5?'4.","81.T'D1.",99%5,7:"&5"E54.1'-2"B;N"&:,&"7,-"D."$(.4"&5".,('1=" '-?.(&'2,&."&:.".88.7&"5-"9.%85%E,-7."58"7:,-2.("&5"&:."B;N"1'D%,%=",-4"45"-5&" 9%.71$4."&:."'-?.(&'2,&'5-"58",1&.%-,&'?."9%52%,EE'-2"E54.1(*"P:."('E$1,&5%"7,-"D." 4%'?.-"&:%5$2:"&%,7."8'1.("7511.7&.4"D="%$--'-2",991'7,&'5-("5-",-".T'(&'-2"E,7:'-." 5%"D="(A.1.&5-",991'7,&'5-("L:'7:"9%5?'4.".-5$2:"'-85%E,&'5-"85%"&:."('E$1,&5%"&5" 9%.4'7&"&:."75%%.(95-4'-2",991'7,&'5-(l".T.7$&'5-"&'E.(*"V.":,?."85$-4"&:,&"&:." ('E$1,&5%"%.9%54$7.(",7&$,1"%$-&'E.("L'&:",-".%%5%"&:,&"'("&=9'7,11="1.(("&:,-"!Jo*"

L"!2A:*@'/;./%/:)1"

P:.",$&:5%("L5$14"1'A."&5"&:,-A"N4,"B*"_*"C'.1(.-"85%":.198$1"75EE.-&(*" P:'("L5%A"L,("($995%&.4"D="&:."]6">.9,%&E.-&"58"@-.%2=l("C,&'5-,1"C$71.,%" 6.7$%'&="34E'-'(&%,&'5-"WCC63Y"34?,-7.4"6'E$1,&'5-",-4"#5E9$&'-2"W36#Y" 9%52%,E*""6,-4',"C,&'5-,1"),D5%,&5%'.("'(","E$1&'9%52%,E"1,D5%,&5%="59.%,&.4"D=" 6,-4',"#5%95%,&'5-/",")57A:..4"B,%&'-"#5E9,-=/"85%"&:."]-'&.4"6&,&.(">.9,%&E.-&" 58"@-.%2="$-4.%"75-&%,7&">@I3#JGIFGI3)fHJJJ*" "

!f"

M$7'$*.+(56B""

" 34?./"g*"6*/"_,2%54',/"b*/">..1E,-/"@*/"c"6,A.11,%'5$/"b*"WRJJRY*"#5E9'1.%I[9&'E'^.4" 6'E$1,&'5-"58"),%2.I67,1."3991'7,&'5-("5-"0'2:";.%85%E,-7."3%7:'&.7&$%.(*" &$'#!()*$+*,(#())-)*(!.*/012#03'2-.*4$5"'20!67*89WaY/"aFa"I"GRK*" 3Bk"D.-7:E,%A"($EE,%=*"8%5E" :&&9(MXX,(7*11-1*25?X(.U$5',XD.-7:E,%A(X3Bkpq($EE,%=pq?!*J*948" 36#"6.U$5',"_.-7:E,%A"#54.(*"8%5E":&&9(MXX,(7*11-1*25?X(.U$5',XD.-7:E,%A(X" _.-?.-'(&./"#*/"c"0.'4.1D.%2.%/";*"W!FFHY*",(#())-)*105')(20$!*$+*2:-*;<=*>,9* 0!2-#%$!!-%20$!*!-2?$#@A";,9.%"9%.(.-&.4",&"&:."!FFH"V'-&.%"6'E$1,&'5-" #5-8.%.-7./"aGH"@"GS&:"6&*/"C.L"n5%A/"Cn"!JJ!S*" _'-A.%&/"C*")*/">%.(1'-(A'/"b*"k*/"0($/")*"b*/")'E/"<*"P*/"6,'4'/"3*"k*/"c"b.'-:,%4&/"6*"<*" WRJJKY*"P:."BH"6'E$1,&5%M"B54.1'-2"C.&L5%A.4"6=(&.E(*";BBB*=0%#$7*98WGY/" HRIKJ*" >,11=/"V*/"c"P5L1.(/"_*"WRJJGY*",#0!%0")-1*(!.*,#(%20%-1*$+*;!2-#%$!!-%20$!*C-2?$#@1M" B5%2,-"<,$8E,--*" 0.-(5-/"g*"@*/"c"n,-2/"]*"B*"WRJJRY*"_55E.%3BkM"3";,%,11.1"312.D%,'7"B$1&'2%'4" 651?.%",-4";%.75-4'&'5-.%*"D"")0-.*C'5-#0%()*=(2:-5(20%17*EF*" +,75D/"_*">b3B('EM"3">.&,'1.4"B.E5%=I6=(&.E"6'E$1,&'5-"\%,E.L5%A*"8%5E" :&&9MXXLLL*.7.*$E4*.4$X4%,E('EX" <,E'1/"6*/"[1'A.%/")*/";'-,%/"3*/"c"6:,18/"+*"WRJJFY*"#5EE$-'7,&'5-"b.U$'%.E.-&(",-4" N-&.%75--.7&"[9&'E'^,&'5-"85%"0'2:I@-4"67'.-&'8'7"3991'7,&'5-(*";BBB* G#(!1(%20$!1*$!*,(#())-)*(!.*/012#03'2-.*>H12-517*IIW!Y*" <-$98.%/"3*/"_%.-4.1/"b*/"_%$-(&/"0*/"B'T/"0*/"c"C,2.1/"V*"@*"WRJJKY*"N-&%54$7'-2"&:." 59.-"&%,7."85%E,&"W[P\Y*"N-"g*"C*"31.T,-4%5?/"k*">*"?,-"31D,4,/";*"B*"3*"6155&" c"+*">5-2,%%,"W@4(*Y/"#5E9$&,&'5-,1"67'.-7.IN##6"RJJK*"K&:"N-&.%-,&'5-,1" #5-8.%.-7.*";%57..4'-2(/";,%&"NN"W).7&$%."C5&.("'-"#5E9$&.%"67'.-7." g51*aFFRY" BH6'E*"P:."BH"6'E$1,&5%"6=(&.EM"3"E54$1,%"91,&85%E"85%"75E9$&.%"(=(&.E" ,%7:'&.7&$%."%.(.,%7:*"8%5E":&&9MXXLLL*EH('E*5%2" B,-&.?5*"8%5E":&&9(MXX(58&L,%.*(,-4',*25?XE,-&.?5X" B.((,2.";,(('-2"N-&.%8,7."\5%$E*"WRJJfY*"B;NM"3"B.((,2.I;,(('-2"N-&.%8,7." 6&,-4,%4M"g.%('5-"R*!*"8%5E":&&9MXXLLL*E9'I85%$E*5%2" -(Ia*"P:."-(Ia"-.&L5%A"('E$1,&5%*"8%5E":&&9MXXLLL*-(-,E*5%2X" ;3;N*"8%5E":&&9MXX'71*7(*$&A*.4$X9,9'X" ;.&%'-'/"\*/"c"g,--.(7:/"B*"W!FFSY*"6B3bPM"3"('E$1,&5%"58"E,(('?.",%7:'&.7&$%.(",-4" &595152'.(*"B'#$J,/>/"!fHI!F!*" ;%,A,(:/"6*/">..1E,-/"@*/"c"_,2%54',/"b*"WRJJJY*"3(=-7:%5-5$("9,%,11.1"('E$1,&'5-"58" 9,%,11.1"9%52%,E(*";BBB*G#(!1(%20$!1*$!*>$+2?(#-*B!60!--#0!67*98WHY/"afHI GJJ*" b'.(.-/"b*"WRJJKY*"3"0=D%'4"B;N"6'E$1,&5%/";BBB*;!2-#!(20$!()*4$!+-#-!%-*$!*4)'12-#* 4$5"'20!6*K4LM>GBNOP8Q*" b54%'2$.(/"3*/"B$%9:=/"b*/"<522./";*/"_%57AE,-/"+*/"_%'2:&L.11/"b*/"c"]-4.%L554/"<*" WRJJaY*";5")0%(20$!1*$+*(*,;=*(#%:02-%2'#()*5$.-)*+$#*=,;A";,9.%"9%.(.-&.4",&" "

!F"

&:."N@@@"N-&.%-,&'5-,1"#5-8.%.-7."5-"#1$(&.%"#5E9$&'-2/")5("3),E'&5(/"#3/" ]63*" 6:,18/"+*/"<,E'1/"6*/"[1'A.%/")*/"c"6A'--.%/">*"W3%&'(&Y*"WRJJHY*"D!()HR0!6*M)2#(J>%()-* D"")0%(20$!*4$55'!0%(20$!*N-S'0#-5-!21*+$#*(*N-%$!+06'#(3)-*TH3#0.* ;!2-#%$!!-%2*" 6$($A'&,/"b*/"3-45/"0*/"35=,2'/"B*/"05-4,/"0*/"N-,45E'/"n*/"N-5$./"<*/".&",1*"WRJJfY*" ,-#+$#5(!%-*"#-.0%20$!*$+*)(#6-J1%()-*"(#())-)*1H12-5*(!.*("")0%(20$!*'10!6* 5(%#$J)-U-)*105')(20$!A";,9.%"9%.(.-&.4",&"&:."6#"lJfM";%57..4'-2("58"&:." RJJf"3#BXN@@@"75-8.%.-7."5-"6$9.%75E9$&'-2/";'(7,&,L,=/"C+/"]63*" ]-4.%L554/"<*/").?.-:,2.-/"B*/"c"b54%'2$.(/"3*"WRJJSY*">05')(20!6*N-.*>2$#5V* %:())-!6-1*(!.*1'%%-11-1*0!*3'0).0!6*(*1H12-5*105')(20$!A";,9.%"9%.(.-&.4",&" &:."RJJS"N@@@"N-&.%-,&'5-,1";,%,11.1",-4">'(&%'D$&.4";%57.(('-2"6=E95('$E" WN@@@"#,&*"C5*JSP0fFafY/";'(7,&,L,=/"C+/"]63*" g,E9'%P%,7.*"8%5E":&&9MXXLLL*&$I4%.(4.-*4.X^':X?,E9'%&%,7." V,-2/">*/"k,-.(:/"_*/"P$,=7:,%5.-/"C*/"_,=-.(/"<*/"+,1..1/"3*/"c"+,75D/"_*"WRJJHY*" >b3B('EM","E.E5%="(=(&.E"('E$1,&5%*">;WDN4T*4$5"'2A*D#%:02A*C-?17*XXWGY/" !JJI!JS*" e:.-2/"k*/"V'1E,%&:/"P*/"+,2,4'(:9%,(,4/";*/"c"<,1./")*"WRJJHY*"6'E$1,&'5-ID,(.4" 9.%85%E,-7."9%.4'7&'5-"85%"1,%2."9,%,11.1"E,7:'-.(**;!2-#!(20$!()*&$'#!()*$+* ,(#())-)*,#$6#(550!67*XXWRIaY/"!faIRJS*" " " """""""""""""""""""""""""""""""""""""""""""""""""""""""" '"#5%%.(95-4'-2"3$&:5%*""@E,'1M71`,-((r(,-4',*25?" "

"

RJ"

A Simulator for Large-scale Parallel Computer ...

processor models. We describe the design of the simulator, provide performance ... The use of simulation, however, can aid both in their efforts to obtain high utilization from ...... A Hybrid MPI Simulator, IEEE International Conference on Cluster.

374KB Sizes 2 Downloads 238 Views

Recommend Documents

Xcelium Parallel Simulator - Cadence
views. Shown here: Context-aware activity for finite state machine analysis. .... are big misses that can escape IP and subsystem .... External Data ... Plan. Figure 6: The vManager platform's advanced verification methodology control cycle ...

book Advanced Computer Architecture for Parallel Processing ...
Parallel Processing (McGraw-Hill Computer. Science Series) page full ... Data Communications and Networking · Computer System Architecture, 3Rd Edn ...

[Ebook] p.d.f Advanced Computer Architecture for Parallel Processing ...
for Parallel Processing (McGraw-Hill Computer. Science Series) Full ... Advanced Concepts in Operating Systmes ... Data Communications and Networking.

parallel computer architecture a hardware software approach pdf ...
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. parallel ...

a simulator for differential msk direct sequence spread ...
Spectrum) system which operates in a multipath AWGN (Additive White Gaus- sian Noise) ... 1. System Model. A simplified diagram of the system model is shown in Fig. 1. There are two general operation modes of the simulator: (a) end-to-end simulation

PDF Books Advanced Computer Architecture for Parallel Processing ...
PDF Books Advanced Computer Architecture for. Parallel Processing (McGraw-Hill Computer. Science ... Data Communications and Networking · Computer ...

Implementation of a Symbolic Circuit Simulator for ... - Semantic Scholar
as a simulator for large network analysis due to their complexity and ..... pairs have different topologies, they lead to two identical sub-GRDDs. We call such ...

DEVSIM, A New Simulator for Better Understanding of ...
of active impurities generated hy the process simulator or given analytically in ... circuitry of signal processing or amplifier. A'bct- ..... Potential V. dr, qbn, dip I/L.

HexSim: A Life History Simulator for Terrestrial ... -
Specifies which spatial data time series will be used to govern group and range ..... writes the current vector set to a file, and Import reads a vector set from a file ...

A Site-Specific MIMO Channel Simulator for Hilly and Mountainous ...
A Site-Specific MIMO Channel Simulator for Hilly and Mountainous Environments.pdf. A Site-Specific MIMO Channel Simulator for Hilly and Mountainous ...

Development of a Microscopic Traffic Simulator for Inter-Vehicle ...
Sep 20, 2006 - Inter-vehicle communication (IVC) has been a major component of research .... the log is read during subsequent simulation runs. A vehicle.

SPIM S20: A MIPS R2000 Simulator 1 SPIM - UW-Madison Computer ...
arguments -sdata 2000000 starts the user data segment at 2,000,000 bytes. .... directive enables the assembler to store the datum in a portion of the data ...

Goat simulator 2
The punisher:warzone.This day and age.15407900600 ... Photoshop cc 64 bit 2015.Beginning android app pdf. ... Pdf dwg converter.Neon joe 720p.Crossing ...

Cheap Home Security Led Tv Simulator Anti Thief Tv Simulator ...
Cheap Home Security Led Tv Simulator Anti Thief Tv S ... Security Device Free Shipping & Wholesale Price.pdf. Cheap Home Security Led Tv Simulator Anti ...

retromezcla: a dynamic stirred tank reactor simulator
Dr. Jorge A. Velásquez. Dept. of Chemical Engineering. Universidad Pontificia Bolivariana. Circular 1ª #70 - 01. Medellín, Antioquia. Colombia [email protected]. Tel. (574)-4159020 Ext. 9598. Retromezcla, page 1. Page 2. ABSTRACT. Retromezc