%!PS-Adobe-2.0 %%Creator: dvips 5.526 Copyright 1986, 1994 Radical Eye Software %%Title: paper.dvi %%CreationDate: Tue Feb 15 12:29:01 1994 %%Pages: 16 %%PageOrder: Ascend %%BoundingBox: 0 0 612 792 %%EndComments %DVIPSCommandLine: dvips paper -o paper.ps %DVIPSParameters: dpi=300, comments removed %DVIPSSource: TeX output 1994.02.15:1228 %%BeginProcSet: tex.pro /TeXDict 250 dict def TeXDict begin /N{def}def /B{bind def}N /S{exch}N /X{S N}B /TR{translate}N /isls false N /vsize 11 72 mul N /hsize 8.5 72 mul N /landplus90{false}def /@rigin{isls{[0 landplus90{1 -1}{-1 1} ifelse 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR matrix currentmatrix dup dup 4 get round 4 exch put dup dup 5 get round 5 exch put setmatrix}N /@landscape{/isls true N}B /@manualfeed{ statusdict /manualfeed true put}B /@copies{/#copies X}B /FMat[1 0 0 -1 0 0]N /FBB[0 0 0 0]N /nn 0 N /IE 0 N /ctr 0 N /df-tail{/nn 8 dict N nn begin /FontType 3 N /FontMatrix fntrx N /FontBBox FBB N string /base X array /BitMaps X /BuildChar{CharBuilder}N /Encoding IE N end dup{/foo setfont}2 array copy cvx N load 0 nn put /ctr 0 N[}B /df{/sf 1 N /fntrx FMat N df-tail}B /dfs{div /sf X /fntrx[sf 0 0 sf neg 0 0]N df-tail}B /E{ pop nn dup definefont setfont}B /ch-width{ch-data dup length 5 sub get} B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{128 ch-data dup length 3 sub get sub}B /ch-yoff{ch-data dup length 2 sub get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B /ch-image{ch-data dup type /stringtype ne{ctr get /ctr ctr 1 add N}if}B /id 0 N /rw 0 N /rc 0 N /gp 0 N /cp 0 N /G 0 N /sf 0 N /CharBuilder{save 3 1 roll S dup /base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx 0 ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff setcachedevice ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff .1 add]{ ch-image}imagemask restore}B /D{/cc X dup type /stringtype ne{]}if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup length 1 sub dup 2 index S get sf div put}if put /ctr ctr 1 add N}B /I{cc 1 add D }B /bop{userdict /bop-hook known{bop-hook}if /SI save N @rigin 0 0 moveto /V matrix currentmatrix dup 1 get dup mul exch 0 get dup mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N /eop{SI restore showpage userdict /eop-hook known{eop-hook}if}N /@start{userdict /start-hook known{start-hook}if pop /VResolution X /Resolution X 1000 div /DVImag X /IE 256 array N 0 1 255{IE S 1 string dup 0 3 index put cvn put}for 65781.76 div /vsize X 65781.76 div /hsize X}N /p{show}N /RMat[1 0 0 -1 0 0]N /BDot 260 string N /rulex 0 N /ruley 0 N /v{/ruley X /rulex X V}B /V {}B /RV statusdict begin /product where{pop product dup length 7 ge{0 7 getinterval dup(Display)eq exch 0 4 getinterval(NeXT)eq or}{pop false} ifelse}{false}ifelse end{{gsave TR -.1 -.1 TR 1 1 scale rulex ruley false RMat{BDot}imagemask grestore}}{{gsave TR -.1 -.1 TR rulex ruley scale 1 1 false RMat{BDot}imagemask grestore}}ifelse B /QV{gsave transform round exch round exch itransform moveto rulex 0 rlineto 0 ruley neg rlineto rulex neg 0 rlineto fill grestore}B /a{moveto}B /delta 0 N /tail{dup /delta X 0 rmoveto}B /M{S p delta add tail}B /b{S p tail} B /c{-4 M}B /d{-3 M}B /e{-2 M}B /f{-1 M}B /g{0 M}B /h{1 M}B /i{2 M}B /j{ 3 M}B /k{4 M}B /w{0 rmoveto}B /l{p -4 w}B /m{p -3 w}B /n{p -2 w}B /o{p -1 w}B /q{p 1 w}B /r{p 2 w}B /s{p 3 w}B /t{p 4 w}B /x{0 S rmoveto}B /y{ 3 2 roll p a}B /bos{/SS save N}B /eos{SS restore}B end %%EndProcSet %%BeginProcSet: special.pro TeXDict begin /SDict 200 dict N SDict begin /@SpecialDefaults{/hs 612 N /vs 792 N /ho 0 N /vo 0 N /hsc 1 N /vsc 1 N /ang 0 N /CLIP 0 N /rwiSeen false N /rhiSeen false N /letter{}N /note{}N /a4{}N /legal{}N}B /@scaleunit 100 N /@hscale{@scaleunit div /hsc X}B /@vscale{@scaleunit div /vsc X}B /@hsize{/hs X /CLIP 1 N}B /@vsize{/vs X /CLIP 1 N}B /@clip{ /CLIP 2 N}B /@hoffset{/ho X}B /@voffset{/vo X}B /@angle{/ang X}B /@rwi{ 10 div /rwi X /rwiSeen true N}B /@rhi{10 div /rhi X /rhiSeen true N}B /@llx{/llx X}B /@lly{/lly X}B /@urx{/urx X}B /@ury{/ury X}B /magscale true def end /@MacSetUp{userdict /md known{userdict /md get type /dicttype eq{userdict begin md length 10 add md maxlength ge{/md md dup length 20 add dict copy def}if end md begin /letter{}N /note{}N /legal{} N /od{txpose 1 0 mtx defaultmatrix dtransform S atan/pa X newpath clippath mark{transform{itransform moveto}}{transform{itransform lineto} }{6 -2 roll transform 6 -2 roll transform 6 -2 roll transform{ itransform 6 2 roll itransform 6 2 roll itransform 6 2 roll curveto}}{{ closepath}}pathforall newpath counttomark array astore /gc xdf pop ct 39 0 put 10 fz 0 fs 2 F/|______Courier fnt invertflag{PaintBlack}if}N /txpose{pxs pys scale ppr aload pop por{noflips{pop S neg S TR pop 1 -1 scale}if xflip yflip and{pop S neg S TR 180 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip yflip not and{pop S neg S TR pop 180 rotate ppr 3 get ppr 1 get neg sub neg 0 TR}if yflip xflip not and{ppr 1 get neg ppr 0 get neg TR}if}{noflips{TR pop pop 270 rotate 1 -1 scale}if xflip yflip and{TR pop pop 90 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip yflip not and{TR pop pop 90 rotate ppr 3 get ppr 1 get neg sub neg 0 TR}if yflip xflip not and{TR pop pop 270 rotate ppr 2 get ppr 0 get neg sub neg 0 S TR}if}ifelse scaleby96{ppr aload pop 4 -1 roll add 2 div 3 1 roll add 2 div 2 copy TR .96 dup scale neg S neg S TR}if}N /cp {pop pop showpage pm restore}N end}if}if}N /normalscale{Resolution 72 div VResolution 72 div neg scale magscale{DVImag dup scale}if 0 setgray} N /psfts{S 65781.76 div N}N /startTexFig{/psf$SavedState save N userdict maxlength dict begin /magscale false def normalscale currentpoint TR /psf$ury psfts /psf$urx psfts /psf$lly psfts /psf$llx psfts /psf$y psfts /psf$x psfts currentpoint /psf$cy X /psf$cx X /psf$sx psf$x psf$urx psf$llx sub div N /psf$sy psf$y psf$ury psf$lly sub div N psf$sx psf$sy scale psf$cx psf$sx div psf$llx sub psf$cy psf$sy div psf$ury sub TR /showpage{}N /erasepage{}N /copypage{}N /p 3 def @MacSetUp}N /doclip{ psf$llx psf$lly psf$urx psf$ury currentpoint 6 2 roll newpath 4 copy 4 2 roll moveto 6 -1 roll S lineto S lineto S lineto closepath clip newpath moveto}N /endTexFig{end psf$SavedState restore}N /@beginspecial{SDict begin /SpecialSave save N gsave normalscale currentpoint TR @SpecialDefaults count /ocount X /dcount countdictstack N}N /@setspecial {CLIP 1 eq{newpath 0 0 moveto hs 0 rlineto 0 vs rlineto hs neg 0 rlineto closepath clip}if ho vo TR hsc vsc scale ang rotate rwiSeen{rwi urx llx sub div rhiSeen{rhi ury lly sub div}{dup}ifelse scale llx neg lly neg TR }{rhiSeen{rhi ury lly sub div dup scale llx neg lly neg TR}if}ifelse CLIP 2 eq{newpath llx lly moveto urx lly lineto urx ury lineto llx ury lineto closepath clip}if /showpage{}N /erasepage{}N /copypage{}N newpath }N /@endspecial{count ocount sub{pop}repeat countdictstack dcount sub{ end}repeat grestore SpecialSave restore end}N /@defspecial{SDict begin} N /@fedspecial{end}B /li{lineto}B /rl{rlineto}B /rc{rcurveto}B /np{ /SaveX currentpoint /SaveY X N 1 setlinecap newpath}N /st{stroke SaveX SaveY moveto}N /fil{fill SaveX SaveY moveto}N /ellipse{/endangle X /startangle X /yrad X /xrad X /savematrix matrix currentmatrix N TR xrad yrad scale 0 0 1 startangle endangle arc savematrix setmatrix}N end %%EndProcSet TeXDict begin 40258431 52099146 1000 300 300 (/white/homes/dongarra/PAPERS/TEX/SUNDERAM-PC/FOO/paper.dvi) @start /Fa 3 53 df<03FC001FFF80381FC07C07E0FE03F0FE03F0FE03F8FE01F87C01 F83801F80003F80003F00003F00007E0000FC0000F00001E00003C0000700000E00001C0 180380180600180C00381FFFF03FFFF07FFFF0FFFFF0FFFFF0151D7E9C1A>50 D<03FC000FFF801C0FC03C07E07E03F07E03F07E03F07E07F03C07E00007E0000FC0003F 8003FE0003FC00000F800007C00003E00003F00003F83803F87C03F8FE03F8FE03F8FE03 F0FC03F07807E03C0FC01FFF8003FC00151D7E9C1A>I<0001C00003C00007C00007C000 0FC0001FC0003BC00073C00063C000C3C00183C00383C00703C00E03C00C03C01803C038 03C07003C0E003C0FFFFFEFFFFFE0007C00007C00007C00007C00007C00007C000FFFE00 FFFE171D7F9C1A>I E /Fb 4 56 df<0FE030306018701C701C001C00180038006007E0 00300018000C000E000EE00EE00EC00C401830300FE00F157F9412>51 D<00300030007000F001F001700270047008701870107020704070C070FFFE0070007000 700070007003FE0F157F9412>I<01F00608080C181C301C70006000E000E3E0EC30F018 F00CE00EE00EE00E600E600E300C3018183007C00F157F9412>54 D<40007FFE7FFC7FF8C008801080200040008000800100030003000200060006000E000E 000E000E000E0004000F167E9512>I E /Fc 3 116 df<60F0F06004047D830A>58 D<30F049184E384C309C001800180018003000300030003000600060000D0E7F8D10> 114 D<07C00C201870187038001E000FC003E000606060E060C0C0C1803F000C0E7E8D10 >I E /Fd 12 123 df<001E0000630000C38001C1800381800301C00701C00F01C00E01 C01E03C01C03C03C03C03C03C03C03C07807807FFF807FFF80780780F00F00F00F00F00F 00F00E00F01E00E01C00E03C00E03800E0300060700060E00070C0003180001E00001220 7E9F15>18 D<70F0F8F878080808101010202040050E7C840D>59 D<0000400000C0000180000180000180000300000300000300000600000600000C00000C 00000C0000180000180000180000300000300000600000600000600000C00000C00000C0 000180000180000180000300000300000600000600000600000C00000C00000C00001800 00180000300000300000300000600000600000600000C00000C00000122D7EA117>61 D<001F000060C000806001003002001803801C03C01C07801C03001C00001E00001E0000 1E003E1E00C11E03809C07007C0E007C1C007C3C007C3800787800787800787800F0F000 F0F000E0F000E0F001C0F001C0F00380700300700600380C001C380007E00017227EA018 >64 D<01FFFFFF001E001E001E0006001E0006001E0002003C0002003C0002003C000200 3C00020078000400780200007802000078020000F0040000F00C0000FFFC0000F00C0001 E0080001E0080001E0080001E0080003C0000003C0000003C0000003C000000780000007 80000007800000078000000F800000FFFC0000201F7E9E1D>70 D<01FFF00FF8001F0003 E0001E000380001E000200001E000400003C001000003C002000003C004000003C018000 007802000000780400000078080000007838000000F078000000F0F8000000F13C000000 F43C000001E81E000001F01E000001E01F000001E00F000003C00F000003C007800003C0 07800003C007C000078003C000078003C000078001E000078001E0000F8001F000FFF80F FE00251F7E9E27>75 D<0000780003F80000700000700000700000700000E00000E00000 E00000E00001C00001C000F1C00389C00707800E03801C03803C03803807007807007807 00780700F00E00F00E00F00E00F00E10F01C20F01C20703C20705C40308C400F07801520 7E9F18>100 D<01E0000FE00001C00001C00001C00001C0000380000380000380000380 00070000070000071F000761800E80C00F00C00E00E00E00E01C01C01C01C01C01C01C01 C0380380380380380380380704700708700E08700E10700610E006206003C016207E9F1A >104 D<03C1E004621804741C08781C08701E08701E10E01E00E01E00E01E00E01E01C0 3C01C03C01C03C01C0380380780380700380E003C1C0072380071E000700000700000E00 000E00000E00000E00001C00001C0000FFC000171D819317>112 D<00F0400388C00705800E03801C03803C0380380700780700780700780700F00E00F00E 00F00E00F00E00F01C00F01C00703C00705C0030B8000F38000038000038000070000070 0000700000700000E00000E0000FFC00121D7E9314>I<018001C0038003800380038007 000700FFF807000E000E000E000E001C001C001C001C0038003800380038107020702070 40708031001E000D1C7F9B10>116 D<01C02003F04007F8C00C1F800801000002000004 0000080000100000600000C0000100000200000400800801001003003F060063FE0040FC 0080700013147E9315>122 D E /Fe 50 124 df<1C3E7E7E3A02040408081020408007 0E769F0E>39 D<1C3C3C3C3C040408081020204080060E7D840E>44 D<7FF0FFE07FE00C037D8A10>I<70F8F8F0E005057B840E>I<001F000061C00080E00100 E00200700240700440700420700840F00840F00840F00880E00901E00601C00003800007 00000C0000180000600000C0000300000400000800401000401000802001807E038047FF 0041FE0080FC00807800141F7C9D17>50 D<001F800060E0008070010030020038044038 04403804203804407004C0700380600000E00001C000030000FE00001C00000600000700 000780000780000780300780780780780780F00F00800F00401E00401C0040380030E000 0F8000151F7C9D17>I<0007C000182000302000E0E001C1E00181E00380C00700000F00 000E00001E00001E78001D84003E06003E07003C07007C0780780780780780780780700F 00700F00F00F00F00E00F01E00701C00601C0070380030700010C0000F8000131F7B9D17 >54 D<04E0100BF0100FF0201FF0401E19C0380E80300180600300400300800600000E00 000C00001C0000180000380000700000700000F00000E00001E00001E00003C00003C000 03C0000780000780000780000F80000F00000F0000060000141F799D17>I<070F1F1F0E 0000000000000000000070F8F8F0E008147B930E>58 D<00000200000006000000060000 000E0000001E0000001E0000003F0000002F0000004F000000CF0000008F0000010F0000 010F0000020F0000020F0000040F0000080F0000080F0000100F80001007800020078000 3FFF8000400780008007800080078001000780010007800200078006000780040007801E 0007C0FF807FF81D207E9F22>65 D<01FFFFC0001E00F0001E0078001E0038001E003C00 3C003C003C003C003C003C003C003C0078007800780078007800F0007801E000F0078000 FFFE0000F00F8000F003C001E001C001E001E001E001E001E001E003C001E003C001E003 C001E003C001C0078003C00780078007800F0007801E000F007C00FFFFE0001E1F7D9E20 >I<0000FE0200078186001C004C0038003C0060003C00C0001C01C00018038000180700 00180F0000181E0000101E0000103C0000003C0000007800000078000000780000007800 0000F0000000F0000000F0000000F0000000F00000807000008070000080700001003800 010038000200180004000C001800060020000381C00000FE00001F217A9F21>I<01FFFF FE001E001C001E000C001E0004001E0004003C0004003C0004003C0004003C0004007804 08007804000078040000780C0000F0180000FFF80000F0180000F0180001E0100001E010 0001E0100001E0001003C0002003C0002003C0004003C000400780008007800180078001 00078007000F001F00FFFFFE001F1F7D9E1F>69 D<01FFFFFC001E0038001E0018001E00 08001E0008003C0008003C0008003C0008003C0008007800100078080000780800007808 0000F0100000F0300000FFF00000F0300001E0200001E0200001E0200001E0200003C000 0003C0000003C0000003C00000078000000780000007800000078000000F800000FFF800 001E1F7D9E1E>I<0000FC040007030C001C00980030007800E0007801C0003803800030 03800030070000300E0000301E0000201E0000203C0000003C0000007800000078000000 7800000078000000F0000000F000FFF0F0000780F0000780F0000F0070000F0070000F00 70000F0070001E0038001E0018003E001C002E000E00CC000383040000FC00001E217A9F 23>I<00FFF1FFE0001F003E00001E003C00001E003C00001E003C00003C007800003C00 7800003C007800003C007800007800F000007800F000007800F000007800F00000F001E0 0000FFFFE00000F001E00000F001E00001E003C00001E003C00001E003C00001E003C000 03C007800003C007800003C007800003C007800007800F000007800F000007800F000007 800F00000F801F0000FFF1FFE000231F7D9E22>I<01FFF0001F00001E00001E00001E00 003C00003C00003C00003C0000780000780000780000780000F00000F00000F00000F000 01E00001E00001E00001E00003C00003C00003C00003C000078000078000078000078000 0F8000FFF000141F7D9E12>I<000FFF8000007C000000780000007800000078000000F0 000000F0000000F0000000F0000001E0000001E0000001E0000001E0000003C0000003C0 000003C0000003C00000078000000780000007800000078000000F0000000F0000300F00 00780F0000F81E0000F81E0000F03C0000803800004070000020E000001F80000019207D 9E18>I<01FE00007FC0001E0000FC00001E0000F8000017000178000017000178000027 0002F00000270004F00000270004F00000270008F00000470009E00000470011E0000047 0021E00000470021E00000870043C00000838043C00000838083C00000838083C0000103 810780000103820780000103820780000103840780000203840F00000203880F00000203 900F00000203900F00000401E01E00000401E01E00000401C01E00000C01801E00001C01 803E0000FF8103FFC0002A1F7D9E29>77 D<00FF003FE0001F000F00001F000400001780 0400001780040000278008000023C008000023C008000023C008000041E010000041E010 000041F010000040F010000080F0200000807820000080782000008078200001003C4000 01003C400001003C400001001E400002001E800002001E800002000F800002000F800004 000F0000040007000004000700000C000700001C00020000FF80020000231F7D9E22>I< 01FFFF80001E00E0001E0070001E0038001E003C003C003C003C003C003C003C003C003C 0078007800780078007800F0007800E000F003C000F00F0000FFFC0000F0000001E00000 01E0000001E0000001E0000003C0000003C0000003C0000003C000000780000007800000 07800000078000000F800000FFF000001E1F7D9E1F>80 D<0007E040001C18C000300580 0060038000C0038001C00180018001000380010003800100038001000380000003C00000 03C0000003F8000001FF800001FFE000007FF000001FF0000001F8000000780000007800 000038000000380020003800200038002000300060007000600060006000E0007000C000 E8038000C606000081F800001A217D9F1A>83 D<0FFFFFFC1E03C0381803C0181003C008 2003C00820078008600780084007800840078008800F0010000F0000000F0000000F0000 001E0000001E0000001E0000001E0000003C0000003C0000003C0000003C000000780000 00780000007800000078000000F0000000F0000000F0000000F0000001F000007FFF8000 1E1F799E21>I<3FFC0FF807C003C00780010007800100078001000F0002000F0002000F 0002000F0002001E0004001E0004001E0004001E0004003C0008003C0008003C0008003C 00080078001000780010007800100078001000F0002000F0002000F0002000F0004000F0 004000700080007001000030020000380400000C18000007E000001D20779E22>III<00F1800389C00707800E03801C03803C038038070078070078070078 0700F00E00F00E00F00E00F00E20F01C40F01C40703C40705C40308C800F070013147C93 17>97 D<07803F8007000700070007000E000E000E000E001C001C001CF01D0C3A0E3C0E 380F380F700F700F700F700FE01EE01EE01EE01CE03CE038607060E031C01F0010207B9F 15>I<007E0001C1000300800E07801E07801C07003C0200780000780000780000F00000 F00000F00000F00000F0000070010070020030040018380007C00011147C9315>I<0000 780003F80000700000700000700000700000E00000E00000E00000E00001C00001C000F1 C00389C00707800E03801C03803C0380380700780700780700780700F00E00F00E00F00E 00F00E20F01C40F01C40703C40705C40308C800F070015207C9F17>I<007C01C207010E 011C013C013802780C7BF07C00F000F000F000F0007000700170023804183807C010147C 9315>I<00007800019C00033C00033C000718000700000700000E00000E00000E00000E 00000E0000FFE0001C00001C00001C00001C000038000038000038000038000038000070 0000700000700000700000700000E00000E00000E00000E00000E00001C00001C00001C0 000180003180007B0000F300006600003C00001629829F0E>I<001E3000713800E0F001 C0700380700780700700E00F00E00F00E00F00E01E01C01E01C01E01C01E01C01E03801E 03800E07800E0B8006170001E700000700000700000E00000E00300E00781C00F0380060 70003FC000151D7F9315>I<01E0000FE00001C00001C00001C00001C000038000038000 038000038000070000070000071E000763000E81800F01C00E01C00E01C01C03801C0380 1C03801C0380380700380700380700380E10700E20700E20701C20700C40E00C80600700 14207D9F17>I<00C001E001E001C000000000000000000000000000000E001300230043 804700470087000E000E000E001C001C001C003840388038807080310032001C000B1F7C 9E0E>I<01E0000FE00001C00001C00001C00001C0000380000380000380000380000700 000700000703C00704200E08E00E11E00E21E00E40C01C80001D00001E00001FC00038E0 00387000387000383840707080707080707080703100E03100601E0013207D9F15>107 D<03C01FC0038003800380038007000700070007000E000E000E000E001C001C001C001C 0038003800380038007000700070007100E200E200E200E200640038000A207C9F0C>I< 1C0F80F0002630C318004740640C004780680E004700700E004700700E008E00E01C000E 00E01C000E00E01C000E00E01C001C01C038001C01C038001C01C038001C01C070803803 8071003803807100380380E10038038062007007006400300300380021147C9325>I<1C 0F802630C04740604780604700704700708E00E00E00E00E00E00E00E01C01C01C01C01C 01C01C03843803883803883807083803107003303001C016147C931A>I<007C0001C300 0301800E01C01E01C01C01E03C01E07801E07801E07801E0F003C0F003C0F003C0F00780 F00700700F00700E0030180018700007C00013147C9317>I<01C1E002621804741C0478 1C04701E04701E08E01E00E01E00E01E00E01E01C03C01C03C01C03C01C0380380780380 700380E003C1C0072380071E000700000700000E00000E00000E00000E00001C00001C00 00FF8000171D809317>I<1C1E002661002783804787804707804703008E00000E00000E 00000E00001C00001C00001C00001C000038000038000038000038000070000030000011 147C9313>114 D<00FC030206010C030C070C060C000F800FF007F803FC003E000E700E F00CF00CE008401020601F8010147D9313>I<018001C0038003800380038007000700FF F007000E000E000E000E001C001C001C001C003800380038003820704070407080708031 001E000C1C7C9B0F>I<0E00C01300E02301C04381C04701C04701C08703800E03800E03 800E03801C07001C07001C07001C07101C0E20180E20180E201C1E400C264007C3801414 7C9318>I<0E03801307802307C04383C04701C04700C08700800E00800E00800E00801C 01001C01001C01001C02001C02001C04001C04001C08000E300003C00012147C9315>I< 0E00C1C01300E3C02301C3E04381C1E04701C0E04701C060870380400E0380400E038040 0E0380401C0700801C0700801C0700801C0701001C0701001C0601001C0F02000C0F0400 0E13080003E1F0001B147C931E>I<0383800CC4401068E01071E02071E02070C040E000 00E00000E00000E00001C00001C00001C00001C040638080F38080F38100E5810084C600 78780013147D9315>I<0E00C01300E02301C04381C04701C04701C08703800E03800E03 800E03801C07001C07001C07001C07001C0E00180E00180E001C1E000C3C0007DC00001C 00001C00003800F03800F07000E06000C0C0004380003E0000131D7C9316>I123 D E /Ff 17 119 df<3078FCFC78300606778518>46 D<07F8001FFE003FFF007807807803C07801C03001C00001C0000380000380000F0003FF 0003FE0003FF000007800003C00001C00000E00000E00000E0F000E0F000E0F001C0F003 C07C07803FFF001FFE0003F800131C7E9B18>51 D<0FF0001FFC003FFE003C0F00180700 00038000038000FF8007FF801FFF807F0380780380E00380E00380E00380F00780780F80 3FFFF81FFDF807F0F815147E9318>97 D<7E0000FE00007E00000E00000E00000E00000E 00000E00000E3E000EFF800FFFC00FC1E00F80E00F00700E00700E00380E00380E00380E 00380E00380E00380F00700F00700F80E00FC1E00FFFC00EFF80063E00151C809B18>I< 01FE0007FF001FFF803E0780380300700000700000E00000E00000E00000E00000E00000 E000007000007001C03801C03E03C01FFF8007FF0001FC0012147D9318>I<001F80003F 80001F8000038000038000038000038000038003E3800FFB801FFF803C1F80380F807007 80700380E00380E00380E00380E00380E00380E00380700780700780380F803C1F801FFF F00FFBF803E3F0151C7E9B18>I<01F00007FC001FFE003E0F00380780700380700380E0 01C0E001C0FFFFC0FFFFC0FFFFC0E000007000007001C03801C03E07C01FFF8007FF0001 F80012147D9318>I<038007C007C007C0038000000000000000007FC0FFC07FC001C001 C001C001C001C001C001C001C001C001C001C001C001C001C0FFFFFFFFFFFF101D7C9C18 >105 D108 DI<7E3E00FEFF807FFFC00FC1C00F80E00F 00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E00E07F C7FCFFE7FE7FC7FC1714809318>I<01F0000FFE001FFF003E0F803803807001C07001C0 E000E0E000E0E000E0E000E0E000E0F001E07001C07803C03C07803E0F801FFF000FFE00 01F00013147E9318>I<7E3E00FEFF807FFFC00FC1E00F80E00F00700E00700E00380E00 380E00380E00380E00380E00380F00700F00700F80E00FC1E00FFFC00EFF800E3E000E00 000E00000E00000E00000E00000E00000E00007FC000FFE0007FC000151E809318>I114 D<07F7003FFF007FFF00780F00E00700E00700E007007C00007FE0001FFC0003FE00001F 00600780E00380E00380F00380F80F00FFFF00FFFC00E7F00011147D9318>I<01800003 80000380000380000380007FFFC0FFFFC0FFFFC003800003800003800003800003800003 80000380000380000380000380400380E00380E00380E001C1C001FFC000FF80003E0013 197F9818>I<7F8FF0FF8FF87F8FF01C01C00E03800E03800E0380070700070700070700 078F00038E00038E00038E0001DC0001DC0001DC0000F80000F80000700015147F9318> 118 D E /Fg 3 115 df<70F8F8F87005057C8D0D>1 D<03F0000FFC001FFE003FFF007F FF807FFF80FFFFC0FFFFC0FFFFC0FFFFC0FFFFC0FFFFC07FFF807FFF803FFF001FFE000F FC0003F00012127E9317>15 D 114 D E /Fh 46 122 df45 D<387CFEFEFE7C380707 7C8610>I<00180000780001F800FFF800FFF80001F80001F80001F80001F80001F80001 F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001 F80001F80001F80001F80001F80001F80001F80001F8007FFFE07FFFE013207C9F1C>49 D<03FC000FFF003C1FC07007E07C07F0FE03F0FE03F8FE03F8FE01F87C01F83803F80003 F80003F00003F00007E00007C0000F80001F00003E0000380000700000E01801C0180380 180700180E00380FFFF01FFFF03FFFF07FFFF0FFFFF0FFFFF015207D9F1C>I<00FE0007 FFC00F07E01E03F03F03F03F81F83F81F83F81F81F03F81F03F00003F00003E00007C000 1F8001FE0001FF000007C00001F00001F80000FC0000FC3C00FE7E00FEFF00FEFF00FEFF 00FEFF00FC7E01FC7801F81E07F00FFFC001FE0017207E9F1C>I<0000E00001E00003E0 0003E00007E0000FE0001FE0001FE00037E00077E000E7E001C7E00187E00307E00707E0 0E07E00C07E01807E03807E07007E0E007E0FFFFFFFFFFFF0007E00007E00007E00007E0 0007E00007E00007E000FFFF00FFFF18207E9F1C>I<3000203E01E03FFFC03FFF803FFF 003FFE003FF80033C00030000030000030000030000031FC0037FF003E0FC03807E03003 E00003F00003F00003F80003F83803F87C03F8FE03F8FE03F8FC03F0FC03F07007E03007 C03C1F800FFF0003F80015207D9F1C>I<000070000000007000000000F800000000F800 000000F800000001FC00000001FC00000003FE00000003FE00000003FE000000067F0000 00067F0000000C7F8000000C3F8000000C3F800000181FC00000181FC00000301FE00000 300FE00000700FF000006007F000006007F00000C007F80000FFFFF80001FFFFFC000180 01FC00018001FC00030001FE00030000FE00070000FF000600007F000600007F00FFE007 FFF8FFE007FFF825227EA12A>65 D<0003FE0080001FFF818000FF01E38001F8003F8003 E0001F8007C0000F800F800007801F800007803F000003803F000003807F000001807E00 0001807E00000180FE00000000FE00000000FE00000000FE00000000FE00000000FE0000 0000FE00000000FE000000007E000000007E000001807F000001803F000001803F000003 801F800003000F8000030007C000060003F0000C0001F800380000FF00F000001FFFC000 0003FE000021227DA128>67 D69 DI<0003FE0040001FFFC0C0007F00F1C001F8003FC003F0000F C007C00007C00FC00003C01F800003C03F000001C03F000001C07F000000C07E000000C0 7E000000C0FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE 00000000FE000FFFFC7E000FFFFC7F00001FC07F00001FC03F00001FC03F00001FC01F80 001FC00FC0001FC007E0001FC003F0001FC001FC003FC0007F80E7C0001FFFC3C00003FF 00C026227DA12C>III76 DII<00 07FC0000003FFF800000FC07E00003F001F80007E000FC000FC0007E001F80003F001F80 003F003F00001F803F00001F807F00001FC07E00000FC07E00000FC0FE00000FE0FE0000 0FE0FE00000FE0FE00000FE0FE00000FE0FE00000FE0FE00000FE0FE00000FE0FE00000F E07E00000FC07F00001FC07F00001FC03F00001F803F80003F801F80003F000FC0007E00 07E000FC0003F001F80000FC07E000003FFF80000007FC000023227DA12A>II82 D<7FFFFFFF807FFFFFFF807E03F80F807803F807807003F803806003F80180E003F801C0 E003F801C0C003F800C0C003F800C0C003F800C0C003F800C00003F800000003F8000000 03F800000003F800000003F800000003F800000003F800000003F800000003F800000003 F800000003F800000003F800000003F800000003F800000003F800000003F800000003F8 00000003F800000003F800000003F8000001FFFFF00001FFFFF00022227EA127>84 D86 DI<0FFC003FFF80 7E07C07E03E07E01E07E01F03C01F00001F00001F0003FF003FDF01FC1F03F01F07E01F0 FC01F0FC01F0FC01F0FC01F07E02F07E0CF81FF87F07E03F18167E951B>97 D<00FF8007FFE00F83F01F03F03E03F07E03F07C01E07C0000FC0000FC0000FC0000FC00 00FC0000FC00007C00007E00007E00003E00181F00300FC06007FFC000FF0015167E9519 >99 D<0001FE000001FE0000003E0000003E0000003E0000003E0000003E0000003E0000 003E0000003E0000003E0000003E0000003E0001FC3E0007FFBE000F81FE001F007E003E 003E007E003E007C003E00FC003E00FC003E00FC003E00FC003E00FC003E00FC003E00FC 003E00FC003E007C003E007C003E003E007E001F00FE000F83BE0007FF3FC001FC3FC01A 237EA21F>I<00FE0007FF800F87C01E01E03E01F07C00F07C00F8FC00F8FC00F8FFFFF8 FFFFF8FC0000FC0000FC00007C00007C00007E00003E00181F00300FC07003FFC000FF00 15167E951A>I<001FC0007FE000F1F001E3F003E3F007C3F007C1E007C00007C00007C0 0007C00007C00007C000FFFE00FFFE0007C00007C00007C00007C00007C00007C00007C0 0007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C0003FFC 003FFC00142380A211>I<01FE0F0007FFBF800F87C7801F03E7801E01E0003E01F0003E 01F0003E01F0003E01F0003E01F0001E01E0001F03E0000F87C0000FFF800009FE000018 000000180000001C0000001FFFE0000FFFF80007FFFE001FFFFF003C003F0078000F80F0 000780F0000780F0000780F000078078000F003C001E001F007C000FFFF80001FFC00019 217F951C>II<1C003E007F007F007F003E001C0000000000000000000000000000 00FF00FF001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F 001F001F00FFE0FFE00B247EA310>I<0038007C00FE00FE00FE007C0038000000000000 000000000000000003FE03FE003E003E003E003E003E003E003E003E003E003E003E003E 003E003E003E003E003E003E003E003E003E003E003E783EFC3EFC3CFC7C78F87FE01F80 0F2E83A311>IIIII<00FE00 07FFC00F83E01E00F03E00F87C007C7C007C7C007CFC007EFC007EFC007EFC007EFC007E FC007EFC007E7C007C7C007C3E00F81F01F00F83E007FFC000FE0017167E951C>II114 D<0FF3003FFF00781F00600700E00300E00300F00300FC00007FE0007FF8003FFE000FFF 0001FF00000F80C00780C00380E00380E00380F00700FC0E00EFFC00C7F00011167E9516 >I<0180000180000180000180000380000380000780000780000F80003F8000FFFF00FF FF000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F 81800F81800F81800F81800F81800F830007C30003FE0000F80011207F9F16>IIIIII E /Fi 31 118 df<0001FF0000001FFFC000007F80F00000FC00F80001F801F80003F803 FC0007F003FC0007F003FC0007F003FC0007F001F80007F000F00007F000000007F00000 0007F000000007F0000000FFFFFFFC00FFFFFFFC00FFFFFFFC0007F001FC0007F001FC00 07F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007 F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F0 01FC0007F001FC0007F001FC0007F001FC0007F001FC007FFF1FFFC07FFF1FFFC07FFF1F FFC0222A7FA926>12 D<000E00001E00007E0007FE00FFFE00FFFE00F8FE0000FE0000FE 0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE 0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE 0000FE0000FE0000FE007FFFFE7FFFFE7FFFFE17277BA622>49 D<00FF800003FFF0000F FFFC001F03FE003800FF007C007F80FE003FC0FF003FC0FF003FE0FF001FE0FF001FE07E 001FE03C003FE000003FE000003FC000003FC000007F8000007F000000FE000000FC0000 01F8000003F0000003E00000078000000F0000001E0000003C00E0007000E000E000E001 C001C0038001C0070001C00FFFFFC01FFFFFC03FFFFFC07FFFFFC0FFFFFF80FFFFFF80FF FFFF801B277DA622>I<007F800003FFF00007FFF8000F81FE001F00FE003F80FF003F80 7F803F807F803F807F801F807F800F007F800000FF000000FF000000FE000001FC000001 F8000007F00000FFC00000FFF0000001FC000000FE0000007F0000007F8000003FC00000 3FC000003FE000003FE03C003FE07E003FE0FF003FE0FF003FE0FF003FC0FF007FC07E00 7F807C007F003F01FE001FFFFC0007FFF00000FF80001B277DA622>I<00000E0000001E 0000003E0000007E000000FE000000FE000001FE000003FE0000077E00000E7E00000E7E 00001C7E0000387E0000707E0000E07E0000E07E0001C07E0003807E0007007E000E007E 000E007E001C007E0038007E0070007E00E0007E00FFFFFFF8FFFFFFF8FFFFFFF80000FE 000000FE000000FE000000FE000000FE000000FE000000FE000000FE00003FFFF8003FFF F8003FFFF81D277EA622>I<080003001F803F001FFFFE001FFFFC001FFFF8001FFFF000 1FFFE0001FFF80001FFE00001C0000001C0000001C0000001C0000001C0000001C000000 1C7FC0001DFFF8001F80FC001E003E0008003F0000003F8000001FC000001FC000001FE0 00001FE018001FE07C001FE0FE001FE0FE001FE0FE001FE0FE001FC0FC001FC078003F80 78003F803C007F001F01FE000FFFF80003FFF00000FF80001B277DA622>I<00003FF001 800003FFFE0380000FFFFF8780003FF007DF8000FF8001FF8001FE00007F8003FC00003F 8007F000001F800FF000000F801FE0000007801FE0000007803FC0000007803FC0000003 807FC0000003807F80000003807F8000000000FF8000000000FF8000000000FF80000000 00FF8000000000FF8000000000FF8000000000FF8000000000FF8000000000FF80000000 007F80000000007F80000000007FC0000003803FC0000003803FC0000003801FE0000003 801FE0000007000FF00000070007F000000E0003FC00001E0001FE00003C0000FF8000F8 00003FF007E000000FFFFFC0000003FFFF000000003FF8000029297CA832>67 DI70 D73 D77 D80 D82 D<007F806003FFF0E007FFF9E00F807FE01F001FE03E0007E07C0003E07C0001E0FC 0001E0FC0001E0FC0000E0FE0000E0FE0000E0FF000000FFC000007FFE00007FFFE0003F FFFC001FFFFE000FFFFF8007FFFFC003FFFFC0007FFFE00007FFF000007FF000000FF800 0007F8000003F8600001F8E00001F8E00001F8E00001F8F00001F0F00001F0F80003F0FC 0003E0FF0007C0FFE01F80F3FFFF00E1FFFE00C01FF0001D297CA826>I86 D<03FF80000FFFF0001F01F8003F807E003F807E003F803F001F003F800E003F8000003F 8000003F8000003F80000FFF8000FFFF8007FC3F800FE03F803F803F803F003F807F003F 80FE003F80FE003F80FE003F80FE003F807E007F807F00DF803F839FFC0FFF0FFC01FC03 FC1E1B7E9A21>97 D<003FF80000FFFE0003F01F0007E03F800FC03F801F803F803F801F 007F000E007F0000007F000000FF000000FF000000FF000000FF000000FF000000FF0000 00FF0000007F0000007F0000007F8000003F8001C01F8001C00FC0038007E0070003F01E 0000FFFC00003FE0001A1B7E9A1F>99 D<00003FF80000003FF80000003FF800000003F8 00000003F800000003F800000003F800000003F800000003F800000003F800000003F800 000003F800000003F800000003F800000003F800001FE3F80000FFFBF80003F83FF80007 E00FF8000FC007F8001F8003F8003F8003F8007F0003F8007F0003F8007F0003F800FF00 03F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003F8007F0003 F8007F0003F8007F0003F8003F8003F8001F8003F8000F8007F80007C00FF80003F03FFF 8000FFF3FF80003FC3FF80212A7EA926>I<003FE00001FFF80003F07E0007C01F000F80 1F801F800F803F800FC07F000FC07F0007C07F0007E0FF0007E0FF0007E0FFFFFFE0FFFF FFE0FF000000FF000000FF0000007F0000007F0000007F0000003F8000E01F8000E00FC0 01C007E0038003F81F0000FFFE00001FF0001B1B7E9A20>I<0007F0003FFC00FE3E01F8 7F03F87F03F07F07F07F07F03E07F00007F00007F00007F00007F00007F00007F000FFFF C0FFFFC0FFFFC007F00007F00007F00007F00007F00007F00007F00007F00007F00007F0 0007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F0007FFF 807FFF807FFF80182A7EA915>I<00FF81F003FFE7F80FC1FE7C1F80FC7C1F007C383F00 7E107F007F007F007F007F007F007F007F007F007F007F007F003F007E001F007C001F80 FC000FC1F8001FFFE00018FF800038000000380000003C0000003E0000003FFFF8001FFF FF001FFFFF800FFFFFC007FFFFE01FFFFFF03C0007F07C0001F8F80000F8F80000F8F800 00F8F80000F87C0001F03C0001E01F0007C00FC01F8003FFFE00007FF0001E287E9A22> I<07000F801FC03FE03FE03FE01FC00F8007000000000000000000000000000000FFE0FF E0FFE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00F E00FE00FE00FE00FE0FFFEFFFEFFFE0F2B7DAA14>105 D108 DII<003FE00001FFFC0003F07E000F C01F801F800FC03F800FE03F0007E07F0007F07F0007F07F0007F0FF0007F8FF0007F8FF 0007F8FF0007F8FF0007F8FF0007F8FF0007F8FF0007F87F0007F07F0007F03F800FE03F 800FE01F800FC00FC01F8007F07F0001FFFC00003FE0001D1B7E9A22>II114 D<03FE300FFFF01E03F03800F0700070F00070F00070F80070FE0000FFE0007FFE007FFF 803FFFE01FFFF007FFF800FFF80007FC6000FCE0007CE0003CF0003CF00038F80038FC00 70FF01E0F7FFC0C1FF00161B7E9A1B>I<00700000700000700000700000F00000F00000 F00001F00003F00003F00007F0001FFFF0FFFFF0FFFFF007F00007F00007F00007F00007 F00007F00007F00007F00007F00007F00007F00007F00007F00007F03807F03807F03807 F03807F03807F03803F03803F87001F86000FFC0001F8015267FA51B>II E /Fj 82 125 df<001F83E000F06E3001C078780380F8780300F0300700700007007000 0700700007007000070070000700700007007000FFFFFF80070070000700700007007000 070070000700700007007000070070000700700007007000070070000700700007007000 0700700007007000070070000700700007007000070070003FE3FF001D20809F1B>11 D<003F0000E0C001C0C00381E00701E00701E00700000700000700000700000700000700 00FFFFE00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700 E00700E00700E00700E00700E00700E00700E00700E03FC3FC1620809F19>I<003FE000 E0E001C1E00381E00700E00700E00700E00700E00700E00700E00700E00700E0FFFFE007 00E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E007 00E00700E00700E00700E00700E00700E03FE7FC1620809F19>I<001F81F80000F04F04 0001C07C06000380F80F000300F00F000700F00F00070070000007007000000700700000 070070000007007000000700700000FFFFFFFF0007007007000700700700070070070007 007007000700700700070070070007007007000700700700070070070007007007000700 700700070070070007007007000700700700070070070007007007000700700700070070 07003FE3FE3FE02320809F26>I<7038F87CFC7EFC7E743A040204020402080408041008 1008201040200F0E7F9F17>34 D<078000180018400018003020003000301800E0006017 0360006008FCC000E008018000E008018000E008030000E008060000E008060000E0080C 0000600818000060101800003010300000302060000018406000000780C0000000018078 000001818400000303020000030301000006070100000C060100000C0E008000180E0080 00300E008000300E008000600E008000C00E008000C00E00800180060100030007010003 0003010006000302000C00018400040000780021257EA126>37 D<70F8FCFC7404040408 0810102040060E7C9F0D>39 D<0040008001000300060004000C00180018003800300030 0070006000600060006000E000E000E000E000E000E000E000E000E000E000E000E00060 006000600060007000300030003800180018000C000400060003000100008000400A2E7B A112>I<8000400020003000180008000C00060006000700030003000380018001800180 018001C001C001C001C001C001C001C001C001C001C001C001C001800180018001800380 030003000700060006000C000800180030002000400080000A2E7EA112>I<0003000000 030000000300000003000000030000000300000003000000030000000300000003000000 03000000030000000300000003000000030000FFFFFFFCFFFFFFFC000300000003000000 030000000300000003000000030000000300000003000000030000000300000003000000 0300000003000000030000000300001E207E9A23>43 D<70F0F8F8780808081010102020 40050E7C840D>II<70F8F8F87005057C840D>I<0000400000C0 000180000180000180000300000300000300000600000600000C00000C00000C00001800 00180000180000300000300000600000600000600000C00000C00000C000018000018000 0180000300000300000600000600000600000C00000C00000C0000180000180000300000 300000300000600000600000600000C00000C00000122D7EA117>I<03F0000E1C001C0E 00180600380700700380700380700380700380F003C0F003C0F003C0F003C0F003C0F003 C0F003C0F003C0F003C0F003C0F003C0F003C0F003C07003807003807003807807803807 001806001C0E000E1C0003F000121F7E9D17>I<008003800F80F3800380038003800380 038003800380038003800380038003800380038003800380038003800380038003800380 0380038007C0FFFE0F1E7C9D17>I<03F0000C1C00100E00200700400780800780F007C0 F803C0F803C0F803C02007C00007C0000780000780000F00000E00001C00003800007000 00600000C0000180000300000600400C00401800401000803FFF807FFF80FFFF80121E7E 9D17>I<03F0000C1C00100E00200F00780F80780780780780380F80000F80000F00000F 00001E00001C0000700007F000003C00000E00000F000007800007800007C02007C0F807 C0F807C0F807C0F00780400780400F00200E00183C0007F000121F7E9D17>I<00060000 0600000E00000E00001E00002E00002E00004E00008E00008E00010E00020E00020E0004 0E00080E00080E00100E00200E00200E00400E00C00E00FFFFF0000E00000E00000E0000 0E00000E00000E00000E0000FFE0141E7F9D17>I<1803001FFE001FFC001FF8001FE000 10000010000010000010000010000010000011F000161C00180E00100700100780000380 0003800003C00003C00003C07003C0F003C0F003C0E00380400380400700200600100C00 08380007E000121F7E9D17>I<007C000182000701000E03800C07801807803803003800 00780000700000700000F1F000F21C00F40600F80700F80380F80380F003C0F003C0F003 C0F003C0F003C07003C07003C07003803803803807001807000C0E00061C0001F000121F 7E9D17>I<4000007FFFE07FFFC07FFFC040008080010080010080020000040000040000 080000100000100000200000200000600000600000E00000C00001C00001C00001C00001 C00003C00003C00003C00003C00003C00003C00003C000018000131F7E9D17>I<03F000 0C0C001006003003002001806001806001806001807001807803003E03003F06001FC800 0FF00003F80007FC000C7E00103F00300F806007806001C0C001C0C000C0C000C0C000C0 C000806001802001001002000C0C0003F000121F7E9D17>I<03F0000E18001C0C003806 00380700700700700380F00380F00380F003C0F003C0F003C0F003C0F003C07007C07007 C03807C0180BC00E13C003E3C0000380000380000380000700300700780600780E00700C 002018001070000FC000121F7E9D17>I<70F8F8F8700000000000000000000070F8F8F8 7005147C930D>I<70F8F8F8700000000000000000000070F0F8F8780808081010102020 40051D7C930D>I<7FFFFFF8FFFFFFFC0000000000000000000000000000000000000000 000000000000000000000000FFFFFFFC7FFFFFF81E0C7E9023>61 D<000100000003800000038000000380000007C0000007C0000007C0000009E0000009E0 000009E0000010F0000010F0000010F00000207800002078000020780000403C0000403C 0000C03E0000801E0000801E0001FFFF0001000F0001000F000200078002000780020007 80040003C0040003C00C0003C01E0003E0FF801FFE1F207F9F22>65 DI<000FE01000381C3000E00270 03C00170078000F00F0000701E0000701E0000303C0000303C0000107C00001078000010 F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000 780000007C0000103C0000103C0000101E0000201E0000200F0000200780004003C00080 00E0030000380C00000FF0001C217E9F21>IIII<000FE01000381C3000E0027003C00170078000F0 0F0000701E0000701E0000303C0000303C0000107C00001078000010F8000000F8000000 F8000000F8000000F8000000F8000000F8000000F8003FFEF80001F0780000F07C0000F0 3C0000F03C0000F01E0000F01E0000F00F0000F0078000F003C0017000E0023000380C10 000FF0001F217E9F24>III<07FFC0003E 00001E00001E00001E00001E00001E00001E00001E00001E00001E00001E00001E00001E 00001E00001E00001E00001E00001E00001E00001E00001E00001E00201E00F81E00F81E 00F81E00F01C00403C006038001070000FC00012207F9E17>IIIII<001FE0000070380001C00E0003800700070003800F0003C01E00 01E03C0000F03C0000F07C0000F87C0000F878000078F800007CF800007CF800007CF800 007CF800007CF800007CF800007CF800007CF800007C780000787C0000F87C0000F83C00 00F03E0001F01E0001E00F0003C0070003800380070001E01E0000703800001FE0001E21 7E9F23>II82 D<03F0400C0CC01803C03001C06000C060 00C0E000C0E00040E00040E00040F00000F800007C00007F80003FF8001FFF0007FF8000 FFC0001FE00003E00001E00000F0000070800070800070800070800070C00060C000E0E0 00C0F80180C6030081FC0014217E9F19>I<7FFFFFE0780F01E0600F0060400F0020400F 0020C00F0030800F0010800F0010800F0010800F0010000F0000000F0000000F0000000F 0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F 0000000F0000000F0000000F0000000F0000000F0000000F0000001F800003FFFC001C1F 7E9E21>IIII<7FF81FF80FE007C007C0030003C0020003E0060001F0040000F0080000F8 180000781000003C2000003E6000001E4000000F8000000F8000000780000003C0000007 E0000005E0000008F0000018F8000010780000207C0000603E0000401E0000801F000100 0F8001000780020007C0060003C01F0007E0FFC01FFE1F1F7F9E22>II91 D<080410082010201040204020804080408040B85CFC7EFC7E7C3E381C0F0E7A9F17>I< FFFF03030303030303030303030303030303030303030303030303030303030303030303 03030303030303FFFF082D80A10D>I<1FE000303000781800781C00300E00000E00000E 00000E0000FE00078E001E0E00380E00780E00F00E10F00E10F00E10F01E10781E103867 200F83C014147E9317>97 D<1C0000FC00001C00001C00001C00001C00001C00001C0000 1C00001C00001C00001C00001C7C001D87001E01801E00C01C00E01C00701C00701C0078 1C00781C00781C00781C00781C00781C00701C00F01C00E01E00C01A0180198700107C00 15207E9F19>I<01FC000706001C0F00380F00380600780000700000F00000F00000F000 00F00000F00000F000007000007800003800803800801C010007060001F80011147F9314 >I<0001C0000FC00001C00001C00001C00001C00001C00001C00001C00001C00001C000 01C001F1C0070DC00C03C01801C03801C07801C07001C0F001C0F001C0F001C0F001C0F0 01C0F001C07001C07001C03801C01803C00C03C0070DC001F1F815207F9F19>I<03F000 0E1C001C0E00380700380700700700700380F00380F00380FFFF80F00000F00000F00000 7000007000003800803800801C010007060001F80011147F9314>I<007C01C6030F070F 0E060E000E000E000E000E000E000E00FFF00E000E000E000E000E000E000E000E000E00 0E000E000E000E000E000E000E000E000E007FE01020809F0E>I<0000E003E3300E3C30 1C1C30380E00780F00780F00780F00780F00780F00380E001C1C001E380033E000200000 2000003000003000003FFE001FFF801FFFC03001E0600070C00030C00030C00030C00030 6000603000C01C038003FC00141F7F9417>I<1C0000FC00001C00001C00001C00001C00 001C00001C00001C00001C00001C00001C00001C7C001C86001D03001E03801E03801C03 801C03801C03801C03801C03801C03801C03801C03801C03801C03801C03801C03801C03 801C0380FF8FF014207E9F19>I<38007C007C007C003800000000000000000000000000 1C00FC001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C00 1C00FF80091F7F9E0C>I<00E001F001F001F000E0000000000000000000000000007007 F000F0007000700070007000700070007000700070007000700070007000700070007000 7000700070007000706070F060F0C061803F000C28829E0E>I<1C0000FC00001C00001C 00001C00001C00001C00001C00001C00001C00001C00001C00001C1FE01C07801C06001C 04001C08001C10001C20001C60001CE0001DF0001E70001C38001C3C001C1C001C0E001C 0F001C07001C07801C07C0FF9FF014207E9F18>I<1C00FC001C001C001C001C001C001C 001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C 001C001C001C001C001C00FF8009207F9F0C>I<1C3E03E000FCC30C30001D039038001E 01E01C001E01E01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01 C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C0 1C001C01C01C00FF8FF8FF8021147E9326>I<1C7C00FC86001D03001E03801E03801C03 801C03801C03801C03801C03801C03801C03801C03801C03801C03801C03801C03801C03 801C0380FF8FF014147E9319>I<01F800070E001C03803801C03801C07000E07000E0F0 00F0F000F0F000F0F000F0F000F0F000F07000E07000E03801C03801C01C0380070E0001 F80014147F9317>I<1C7C00FD87001E01801E01C01C00E01C00F01C00701C00781C0078 1C00781C00781C00781C00781C00701C00F01C00E01E01C01E03801D87001C7C001C0000 1C00001C00001C00001C00001C00001C00001C0000FF8000151D7E9319>I<01F040070C C00E02C01C03C03801C07801C07001C0F001C0F001C0F001C0F001C0F001C0F001C07001 C07801C03801C01C03C00C05C00709C001F1C00001C00001C00001C00001C00001C00001 C00001C00001C0000FF8151D7F9318>I<1CF0FD181E3C1E3C1E181C001C001C001C001C 001C001C001C001C001C001C001C001C001C00FFC00E147E9312>I<0FC830386018C008 C008C008E0007C003FE01FF007F8003C800E8006C006C006C004E00CD81887E00F147F93 12>I<020002000200060006000E000E003E00FFF80E000E000E000E000E000E000E000E 000E000E000E000E040E040E040E040E040708030801F00E1C7F9B12>I<1C0380FC1F80 1C03801C03801C03801C03801C03801C03801C03801C03801C03801C03801C03801C0380 1C03801C03801C07800C0780061B8003E3F014147E9319>IIIII<7FFF700E600E401C40384078407000E001E001C0 0380078007010E011E011C0338027006700EFFFE10147F9314>II< FFFFFFFFFFF02C01808C2D>I E /Fk 48 122 df<007E1F8001C170400703C060060380 E00E0380400E0380000E0380000E0380000E0380000E038000FFFFFFE00E0380E00E0380 E00E0380E00E0380E00E0380E00E0380E00E0380E00E0380E00E0380E00E0380E00E0380 E00E0380E00E0380E00E0380E07F8FE3FC1E1A809920>14 D<60F0F07010101020204040 040B7D830B>44 DI<60F0F06004047D830B>I<07E01C38381C30 0C700E60066006E007E007E007E007E007E007E007E007E007E00760066006700E300C38 1C1C3807E010187F9713>48 D<03000700FF000700070007000700070007000700070007 00070007000700070007000700070007000700070007007FF80D187D9713>I<0F801060 20304038803CC01CE01C401C003C003800380070006000C0018001000200040408041004 30083FF87FF8FFF80E187E9713>I<001800180038007800F800B8013802380238043808 381838103820384038C038FFFF00380038003800380038003803FF10187F9713>52 D<30183FF03FE03F80200020002000200020002FC03060203000380018001C001C401CE0 1CE01C80184038403030E00F800E187E9713>I<01F807040C06180E300E300070006000 E000E3E0E418E80CF00EE006E007E007E007600760077006300E180C0C3807E010187F97 13>I<40007FFF7FFE7FFE40048008801080100020004000400080018001000300030007 00060006000E000E000E000E000E00040010197E9813>I<07E01818300C200660066006 7006780C3E181F3007C003E00CF8307C601E600FC007C003C003C00360022004181807E0 10187F9713>I<07E01C303018700C600EE006E006E007E007E0076007700F3017182707 C700070006000E000C700C7018603030600F8010187F9713>I<60F0F060000000000000 000060F0F0701010102020404004177D8F0B>59 D<000C0000000C0000000C0000001E00 00001E0000002F000000270000002700000043800000438000004380000081C0000081C0 000181E0000100E0000100E00003FFF00002007000020070000400380004003800040038 0008001C0008001C003C001E00FF00FFC01A1A7F991D>65 DI<003F0201C0C603002E0E001E1C000E1C0006380006780002700002700002F00000F0 0000F00000F00000F00000F000007000027000027800023800041C00041C00080E000803 003001C0C0003F00171A7E991C>IIII<003F020001C0C60003002E000E001E001C000E001C00060038000600 780002007000020070000200F0000000F0000000F0000000F0000000F0000000F001FFC0 70000E0070000E0078000E0038000E001C000E001C000E000E000E000300160001C06600 003F82001A1A7E991E>I73 D77 DI<007F000001C1C000070070000E0038001C001C003C001E0038000E00 78000F0070000700F0000780F0000780F0000780F0000780F0000780F0000780F0000780 F000078078000F0078000F0038000E003C001E001C001C000E0038000700700001C1C000 007F0000191A7E991E>I82 D<0FC21836200E6006C006C002C002C002E00070007E 003FE01FF803FC007E000E00070003800380038003C002C006E004D81887E0101A7E9915 >I85 D<1FC000387000383800101C00001C00001C0003FC001E1C00381C00701C00 E01C00E01C80E01C80E03C80705F801F8F0011107F8F13>97 DI<07F81C1C381C70087000E000E000E000E000E000E0007000700438081C1807E00E 107F8F11>I<003F00000700000700000700000700000700000700000700000700000700 03E7000C1700180F00300700700700E00700E00700E00700E00700E00700E00700600700 700700380F001C370007C7E0131A7F9915>I<07C01C3030187018600CE00CFFFCE000E0 00E000E0006000700438081C1807E00E107F8F11>I<01F007180E381C101C001C001C00 1C001C001C00FFC01C001C001C001C001C001C001C001C001C001C001C001C001C001C00 FF800D1A80990C>I<0FCF00187180303000703800703800703800703800303000186000 2FC0006000006000007000003FF0003FFC001FFE00600F00C00300C00300C00300C00300 600600381C0007E00011187F8F13>II<183C3C18000000 000000FC1C1C1C1C1C1C1C1C1C1C1C1C1C1CFF081A80990A>I108 DII<07E01C 38300C700E6006E007E007E007E007E007E0076006700E381C1C3807E010107F8F13>I< FCFC001D07001E03801C01C01C01C01C00E01C00E01C00E01C00E01C00E01C00E01C01C0 1C01801E03001D06001CF8001C00001C00001C00001C00001C00001C0000FF8000131780 8F15>I114 D<1F2060E04020C020C020F0007F003FC01FE000F080708030C030C0 20F0408F800C107F8F0F>I<0800080008000800180018003800FFC03800380038003800 3800380038003800382038203820382018201C4007800B177F960F>II119 D121 D E /Fl 1 4 df<0C000C00CCC0EDC07F800C 007F80EDC0CCC00C000C000A0B7D8B10>3 D E /Fm 64 123 df<007E0001C180030180 0703C00E03C00E01800E00000E00000E00000E00000E0000FFFFC00E01C00E01C00E01C0 0E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C0 0E01C07F87F8151D809C17>12 D<007FC001C1C00303C00703C00E01C00E01C00E01C00E 01C00E01C00E01C00E01C0FFFFC00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E 01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C07FCFF8151D809C17>I< 60F0F0701010101020204080040C7C830C>44 DI<60F0F06004 047C830C>I<00010003000600060006000C000C000C0018001800180030003000300060 006000C000C000C0018001800180030003000300060006000C000C000C00180018001800 300030003000600060006000C000C00010297E9E15>I<03C00C301818300C300C700E60 066006E007E007E007E007E007E007E007E007E007E007E007E007E00760066006700E30 0C300C18180C3007E0101D7E9B15>I<010007003F00C700070007000700070007000700 07000700070007000700070007000700070007000700070007000700070007000700FFF8 0D1C7C9B15>I<07C01830201C400C400EF00FF80FF807F8077007000F000E000E001C00 1C00380070006000C00180030006010C01180110023FFE7FFEFFFE101C7E9B15>I<07E0 1830201C201C781E780E781E381E001C001C00180030006007C00030001C001C000E000F 000F700FF80FF80FF80FF00E401C201C183007C0101D7E9B15>I<000C00000C00001C00 003C00003C00005C0000DC00009C00011C00031C00021C00041C000C1C00081C00101C00 301C00201C00401C00C01C00FFFFC0001C00001C00001C00001C00001C00001C00001C00 01FFC0121C7F9B15>I<300C3FF83FF03FC020002000200020002000200023E02C303018 301C200E000E000F000F000F600FF00FF00FF00F800E401E401C2038187007C0101D7E9B 15>I<00F0030C04040C0E181E301E300C700070006000E3E0E430E818F00CF00EE006E0 07E007E007E007E007600760077006300E300C18180C3003E0101D7E9B15>I<03E00C30 1008200C200660066006700670067C0C3E183FB01FE007F007F818FC307E601E600FC007 C003C003C003C00360026004300C1C1007E0101D7E9B15>56 D<03C00C301818300C700C 600EE006E006E007E007E007E007E0076007700F300F18170C2707C700060006000E300C 780C78187018203010C00F80101D7E9B15>I<000600000006000000060000000F000000 0F0000000F000000178000001780000037C0000023C0000023C0000043E0000041E00000 41E0000080F0000080F0000080F000010078000100780001FFF80002003C0002003C0002 003C0004001E0004001E000C001F000C000F001E001F00FF00FFF01C1D7F9C1F>65 DI<001F808000E0618001801980070007800E0003801C000380 1C00018038000180780000807800008070000080F0000000F0000000F0000000F0000000 F0000000F0000000F0000000F0000000700000807800008078000080380000801C000100 1C0001000E000200070004000180080000E03000001FC000191E7E9C1E>IIII<001F808000E0618001801980070007800E0003801C0003801C000180 38000180780000807800008070000080F0000000F0000000F0000000F0000000F0000000 F0000000F000FFF0F0000F80700007807800078078000780380007801C0007801C000780 0E00078007000B800180118000E06080001F80001C1E7E9C21>III75 DIII<003F800000E0E0000380380007001C000E000E001C0007003C000780380003807800 03C0780003C0700001C0F00001E0F00001E0F00001E0F00001E0F00001E0F00001E0F000 01E0F00001E0700001C0780003C0780003C0380003803C0007801C0007000E000E000700 1C000380380000E0E000003F80001B1E7E9C20>II82 D<07E0801C1980300580300380600180E0 0180E00080E00080E00080F00000F800007C00007FC0003FF8001FFE0007FF0000FF8000 0F800007C00003C00001C08001C08001C08001C0C00180C00180E00300D00200CC0C0083 F800121E7E9C17>I<7FFFFFC0700F01C0600F00C0400F0040400F0040C00F0020800F00 20800F0020800F0020000F0000000F0000000F0000000F0000000F0000000F0000000F00 00000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F00 00000F0000001F800003FFFC001B1C7F9B1E>IIIIII<1FC000307000783800781C00301C00001C00001C0001FC000F1C0038 1C00701C00601C00E01C40E01C40E01C40603C40304E801F870012127E9115>97 DI<03F80C0C181E301E700C6000E0 00E000E000E000E000E00060007002300218040C1803E00F127F9112>I<001F80000380 00038000038000038000038000038000038000038000038000038003F3800E0B80180780 300380700380600380E00380E00380E00380E00380E00380E00380600380700380300380 1807800E1B8003E3F0141D7F9C17>I<07E00C301818300C700E6006E006FFFEE000E000 E000E00060007002300218040C1803E00F127F9112>I<00F8018C071E061E0E0C0E000E 000E000E000E000E00FFE00E000E000E000E000E000E000E000E000E000E000E000E000E 000E000E000E007FE00F1D809C0D>I<00038007C4C01C78C0383880301800701C00701C 00701C00701C003018003838001C700027C0002000002000003000003FF8001FFF001FFF 802003806001C0C000C0C000C0C000C06001803003001C0E0007F800121C7F9215>II<18003C003C00180000000000000000 00000000000000FC001C001C001C001C001C001C001C001C001C001C001C001C001C001C 001C001C00FF80091D7F9C0C>I<00C001E001E000C00000000000000000000000000000 07E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E0 00E000E000E060E0F0C0F1C061803E000B25839C0D>IIIII<03F0000E1C00180600300300700380600180E001 C0E001C0E001C0E001C0E001C0E001C06001807003803003001806000E1C0003F0001212 7F9115>II<03E0800E1980180580380780700380700380 E00380E00380E00380E00380E00380E003807003807003803807801807800E1B8003E380 000380000380000380000380000380000380000380001FF0141A7F9116>II<1F9020704030C010C010E010F8007F803FE00FF000F880388018C018C018E010D060 8FC00D127F9110>I<04000400040004000C000C001C003C00FFE01C001C001C001C001C 001C001C001C001C001C101C101C101C101C100C100E2003C00C1A7F9910>IIIIII<7FFC70386038407040F040E041C003C003 8007000F040E041C043C0C380870087038FFF80E127F9112>I E /Fn 7 117 df<00038000000380000007C0000007C0000007C000000FE000000FE00000 1FF000001BF000003BF8000031F8000031F8000060FC000060FC0000E0FE0000C07E0000 C07E0001803F0001FFFF0003FFFF8003001F8007001FC006000FC006000FC00C0007E00C 0007E0FF803FFEFF803FFE1F1C7E9B24>65 D<0FF8001C1E003E0F803E07803E07C01C07 C00007C0007FC007E7C01F07C03C07C07C07C0F807C0F807C0F807C0780BC03E13F80FE1 F815127F9117>97 DI<03FC000E0E 001C1F003C1F00781F00780E00F80000F80000F80000F80000F80000F800007800007801 803C01801C03000E0E0003F80011127E9115>I114 D<1FD830786018E018E018F000FF807FE07FF01FF807FC007CC0 1CC01CE01CE018F830CFC00E127E9113>I<0300030003000300070007000F000F003FFC FFFC1F001F001F001F001F001F001F001F001F001F0C1F0C1F0C1F0C0F08079803F00E1A 7F9913>I E /Fo 49 122 df<003C000000006200000000C20000000181000000018100 000003810000000381000000038100000003810000000382000000038200000003840000 00038800000001C800000001D000000001E001FF8001C0007C0000E000380001E0003000 0170002000027000400004780040000838008000181C008000301C010000700E02000070 0F020000F007040000F003880000F003C80000F001F00100F000E0010078007001007800 B802003C031C06000E0C070C0003F001F00021257EA326>38 D<70F8FCFC740404040408 0810102040060F7C840E>44 D<70F8F8F87005057C840E>46 D<01F000071C000C060018 03003803803803807001C07001C07001C07001C0F001E0F001E0F001E0F001E0F001E0F0 01E0F001E0F001E0F001E0F001E0F001E0F001E0F001E0F001E07001C07001C07001C078 03C03803803803801C07000C0600071C0001F00013227EA018>48 D<008003800F80F380038003800380038003800380038003800380038003800380038003 80038003800380038003800380038003800380038003800380038007C0FFFE0F217CA018 >I<03F0000C1C001007002007804003C04003C08003E0F003E0F801E0F801E0F801E020 03E00003E00003C00003C0000780000700000E00001C0000180000300000600000C00001 80000100000200200400200800201800603000403FFFC07FFFC0FFFFC013217EA018>I< 03F8000C1E00100F002007804007C07807C07803C07807C03807C0000780000780000700 000F00000C0000380003F000001C00000F000007800007800003C00003C00003E02003E0 7003E0F803E0F803E0F003C04003C0400780200780100F000C1C0003F00013227EA018> I<007E0001C1000300800601C00C03C01C03C01801803800003800007800007000007000 00F0F800F30C00F40600F40300F80380F801C0F001C0F001E0F001E0F001E0F001E0F001 E07001E07001E07001E03801C03801C01803801C03000C0600070C0001F00013227EA018 >54 D<4000006000007FFFE07FFFC07FFFC0400080C00100800100800200800200000400 00080000080000100000200000200000600000400000C00000C00001C00001C000018000 038000038000038000038000078000078000078000078000078000078000078000030000 13237DA118>I<01F800060E000803001001802001806000C06000C06000C07000C07000 C07801803E01003F02001FC4000FF80003F80001FC00067E00083F00100F803007C06003 C06000E0C000E0C00060C00060C00060C000606000406000C03000801803000E0E0003F0 0013227EA018>I<01F000060C000C0600180700380380700380700380F001C0F001C0F0 01C0F001E0F001E0F001E0F001E0F001E07001E07003E03803E01805E00C05E00619E003 E1E00001C00001C00001C0000380000380300380780700780600700C002018001030000F C00013227EA018>I<0001800000018000000180000003C0000003C0000003C0000005E0 000005E0000009F0000008F0000008F00000107800001078000010780000203C0000203C 0000203C0000401E0000401E0000C01F0000800F0000800F0001FFFF8001000780010007 80020003C0020003C0020003C0040001E0040001E0040001E0080000F01C0000F03E0001 F8FF800FFF20237EA225>65 D<0007E0100038183000E0063001C00170038000F0070000 F00E0000701E0000701C0000303C0000303C0000307C0000107800001078000010F80000 00F8000000F8000000F8000000F8000000F8000000F8000000F800000078000000780000 107C0000103C0000103C0000101C0000201E0000200E000040070000400380008001C001 0000E0020000381C000007E0001C247DA223>67 DII<0007F008003C0C1800E0021801C001B803 8000F8070000780F0000381E0000381E0000183C0000183C0000187C0000087800000878 000008F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8001FFF78 0000F8780000787C0000783C0000783C0000781E0000781E0000780F0000780700007803 8000B801C000B800E00318003C0C080007F00020247DA226>71 D<03FFE0001F00000F00 000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00 000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00700F00 F80F00F80F00F80E00F01E00401C0020380018700007C00013237EA119>74 DIIII<000FE00000 783C0000E00E0003C00780078003C00F0001E00E0000E01E0000F03C0000783C0000787C 00007C7C00007C7800003C7800003CF800003EF800003EF800003EF800003EF800003EF8 00003EF800003EF800003EF800003E7800003C7C00007C7C00007C3C0000783E0000F81E 0000F00F0001E00F0001E0078003C003C0078000E00E0000783C00000FE0001F247DA226 >I82 D<03F0200C0C601802603001E07000E0600060E00060E00060E00020E00020E0 0020F00000F000007800007F00003FF0001FFE000FFF0003FF80003FC00007E00001E000 00F00000F0000070800070800070800070800070C00060C00060E000C0F000C0C80180C6 070081FC0014247DA21B>I<7FFFFFF87807807860078018400780084007800840078008 C007800C8007800480078004800780048007800400078000000780000007800000078000 000780000007800000078000000780000007800000078000000780000007800000078000 0007800000078000000780000007800000078000000780000007800000078000000FC000 01FFFE001E227EA123>III<1FE000303800780C00780E003007000007000007 0000070000FF0007C7001E07003C0700780700700700F00708F00708F00708F00F087817 083C23900FC1E015157E9418>97 D<0E0000FE00001E00000E00000E00000E00000E0000 0E00000E00000E00000E00000E00000E00000E00000E1F000E61C00E80600F00300E0038 0E003C0E001C0E001E0E001E0E001E0E001E0E001E0E001E0E001E0E001C0E003C0E0038 0F00700C80600C41C0083F0017237FA21B>I<01FE000703000C07801C07803803007800 00700000F00000F00000F00000F00000F00000F00000F000007000007800403800401C00 800C010007060001F80012157E9416>I<0000E0000FE00001E00000E00000E00000E000 00E00000E00000E00000E00000E00000E00000E00000E001F8E00704E00C02E01C01E038 00E07800E07000E0F000E0F000E0F000E0F000E0F000E0F000E0F000E07000E07800E038 00E01801E00C02E0070CF001F0FE17237EA21B>I<01FC000707000C03801C01C03801C0 7801E07000E0F000E0FFFFE0F00000F00000F00000F00000F00000700000780020380020 1C00400E008007030000FC0013157F9416>I<003E0000E30001C7800387800307800700 00070000070000070000070000070000070000070000070000FFF8000700000700000700 000700000700000700000700000700000700000700000700000700000700000700000700 000700000700000700000780007FF000112380A20F>I<00007003F1980E1E181C0E1838 07003807007807807807807807807807803807003807001C0E001E1C0033F00020000020 00003000003800003FFE001FFFC00FFFE03000F0600030C00018C00018C00018C0001860 00306000303800E00E038003FE0015217F9518>I<0E0000FE00001E00000E00000E0000 0E00000E00000E00000E00000E00000E00000E00000E00000E00000E1F800E60C00E80E0 0F00700F00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E0070 0E00700E00700E00700E00700E0070FFE7FF18237FA21B>I<1C003E003E003E001C0000 0000000000000000000000000000000E007E001E000E000E000E000E000E000E000E000E 000E000E000E000E000E000E000E000E000E00FFC00A227FA10E>I<0E0000FE00001E00 000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E03 FC0E01F00E01C00E01800E02000E04000E08000E10000E38000EF8000F1C000E1E000E0E 000E07000E07800E03C00E01C00E01E00E00F00E00F8FFE3FE17237FA21A>107 D<0E00FE001E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E 000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFE00B 237FA20E>I<0E1FC07F00FE60E183801E807201C00F003C00E00F003C00E00E003800E0 0E003800E00E003800E00E003800E00E003800E00E003800E00E003800E00E003800E00E 003800E00E003800E00E003800E00E003800E00E003800E00E003800E00E003800E0FFE3 FF8FFE27157F942A>I<0E1F80FE60C01E80E00F00700F00700E00700E00700E00700E00 700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E0070FFE7 FF18157F941B>I<01FC000707000C01801800C03800E0700070700070F00078F00078F0 0078F00078F00078F00078F000787000707800F03800E01C01C00E038007070001FC0015 157F9418>I<0E1F00FE61C00E80600F00700E00380E003C0E003C0E001E0E001E0E001E 0E001E0E001E0E001E0E001E0E003C0E003C0E00380F00700E80E00E41C00E3F000E0000 0E00000E00000E00000E00000E00000E00000E00000E0000FFE000171F7F941B>I<0E3C FE461E8F0F0F0F060F000E000E000E000E000E000E000E000E000E000E000E000E000E00 0F00FFF010157F9413>114 D<0F8830786018C018C008C008E008F0007F003FE00FF001 F8003C801C800C800CC00CC008E018D0308FC00E157E9413>I<02000200020002000600 060006000E001E003E00FFFC0E000E000E000E000E000E000E000E000E000E000E000E04 0E040E040E040E040E040708030801F00E1F7F9E13>I<0E0070FE07F01E00F00E00700E 00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E 00F00E00F006017003827800FC7F18157F941B>II120 DI E /Fp 1 4 df<00C00000C00000C00000C00000C000E0C1C0F0 C3C038C7000EDC0003F00000C00003F0000EDC0038C700F0C3C0E0C1C000C00000C00000 C00000C00000C00012157D9619>3 D E /Fq 28 122 df<78FCFCFEFE7A020202020204 040408081020204007147A8512>44 D<78FCFCFCFC780000000000000000000000000000 000000000078FCFCFCFC78061F7A9E12>58 D<00003FE0010001FFF8030007F01E03001F 800307003E000087007800004F00F000002F01E000001F03C000000F078000000F0F8000 00070F000000071F000000031E000000033E000000033C000000017C000000017C000000 017C000000017800000000F800000000F800000000F800000000F800000000F800000000 F800000000F800000000F800000000F800000000F800000000F80000000078000000007C 000000007C000000017C000000013C000000013E000000011E000000011F000000020F00 0000020F80000006078000000403C000000801E000000800F00000100078000020003E00 00C0001F8003800007F00F000001FFFC0000003FE00028337CB130>67 D 69 D77 D 80 D<007F802001FFE02007C078600F001C601E0006E03C0003E0380001E0780000E070 0000E070000060F0000060F0000060F0000020F0000020F0000020F8000020F80000007C 0000007E0000003F0000003FC000001FF800000FFF800007FFF00003FFFC0000FFFF0000 0FFF800000FFC000001FE0000007E0000003F0000001F0000000F0000000F8000000F880 00007880000078800000788000007880000078C0000078C0000070E00000F0E00000E0F0 0000E0F80001C0EC000380C7000700C1F01E00807FFC00800FF0001D337CB125>83 D<7FFFFFFFFFE07FFFFFFFFFE07E000F8007E078000F8001E070000F8000E060000F8000 6040000F80002040000F800020C0000F800030C0000F80003080000F80001080000F8000 1080000F80001080000F80001080000F80001080000F80001000000F80000000000F8000 0000000F80000000000F80000000000F80000000000F80000000000F80000000000F8000 0000000F80000000000F80000000000F80000000000F80000000000F80000000000F8000 0000000F80000000000F80000000000F80000000000F80000000000F80000000000F8000 0000000F80000000000F80000000000F80000000000F80000000000F80000000000F8000 0000000F80000000000F80000000000F80000000000F80000000001FC00000000FFFFF80 00000FFFFF80002C317EB030>I86 D<00FE00000303C0000C00E00010007000100038003C003C003E001C003E001E003E001E 0008001E0000001E0000001E0000001E00000FFE0000FC1E0003E01E000F801E001F001E 003E001E003C001E007C001E00F8001E04F8001E04F8001E04F8003E04F8003E0478003E 047C005E043E008F080F0307F003FC03E01E1F7D9E21>97 D<001FC00000F0300001C00C 00078002000F0002000E000F001E001F003C001F003C001F007C00040078000000F80000 00F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000780000 007C0000003C0000003C0000801E0000800E0001000F0001000780020001C00C0000F030 00001FC000191F7E9E1D>99 D<000000F00000001FF00000001FF000000001F000000000 F000000000F000000000F000000000F000000000F000000000F000000000F000000000F0 00000000F000000000F000000000F000000000F000000000F000000000F000000000F000 000FC0F000007030F00001C00CF000038002F000070001F0000E0001F0001E0000F0003C 0000F0003C0000F0007C0000F000780000F000780000F000F80000F000F80000F000F800 00F000F80000F000F80000F000F80000F000F80000F000780000F000780000F0007C0000 F0003C0000F0003C0000F0001E0000F0000E0001F000070002F000038004F00001C008F8 0000F030FF80001FC0FF8021327EB125>I<003F800000E0E0000380380007003C000E00 1E001E001E001C000F003C000F007C000F0078000F8078000780F8000780F8000780FFFF FF80F8000000F8000000F8000000F8000000F8000000F8000000780000007C0000003C00 00003C0000801E0000800E0001000F0002000700020001C00C0000F03000001FC000191F 7E9E1D>I<000000F0007F030801C1C41C0380E81C070070080F0078001E003C001E003C 003E003E003E003E003E003E003E003E003E003E003E003E001E003C001E003C000F0078 00070070000780E00009C1C000087F000018000000180000001800000018000000180000 001C0000000E0000000FFFF80007FFFF0003FFFF800E000FC0180001E0300000F0700000 70E0000038E0000038E0000038E0000038E00000387000007070000070380000E01C0001 C00700070001C01C00003FE0001E2F7E9F21>103 D<0780000000FF80000000FF800000 000F80000000078000000007800000000780000000078000000007800000000780000000 078000000007800000000780000000078000000007800000000780000000078000000007 8000000007800000000780FE00000783078000078C03C000079001E00007A001E00007A0 00F00007C000F00007C000F000078000F000078000F000078000F000078000F000078000 F000078000F000078000F000078000F000078000F000078000F000078000F000078000F0 00078000F000078000F000078000F000078000F000078000F000078000F000078000F000 078000F0000FC001F800FFFC1FFF80FFFC1FFF8021327EB125>I<0F001F801F801F801F 800F000000000000000000000000000000000000000000000007807F807F800F80078007 800780078007800780078007800780078007800780078007800780078007800780078007 8007800780078007800FC0FFF8FFF80D307EAF12>I<0780FF80FF800F80078007800780 078007800780078007800780078007800780078007800780078007800780078007800780 078007800780078007800780078007800780078007800780078007800780078007800780 07800780078007800FC0FFFCFFFC0E327EB112>108 D<0780FE001FC000FF83078060F0 00FF8C03C18078000F9001E2003C0007A001E4003C0007A000F4001E0007C000F8001E00 07C000F8001E00078000F0001E00078000F0001E00078000F0001E00078000F0001E0007 8000F0001E00078000F0001E00078000F0001E00078000F0001E00078000F0001E000780 00F0001E00078000F0001E00078000F0001E00078000F0001E00078000F0001E00078000 F0001E00078000F0001E00078000F0001E00078000F0001E00078000F0001E00078000F0 001E000FC001F8003F00FFFC1FFF83FFF0FFFC1FFF83FFF0341F7E9E38>I<0780FE0000 FF83078000FF8C03C0000F9001E00007A001E00007A000F00007C000F00007C000F00007 8000F000078000F000078000F000078000F000078000F000078000F000078000F0000780 00F000078000F000078000F000078000F000078000F000078000F000078000F000078000 F000078000F000078000F000078000F000078000F000078000F0000FC001F800FFFC1FFF 80FFFC1FFF80211F7E9E25>I<001FC00000F0780001C01C00070007000F0007801E0003 C01C0001C03C0001E03C0001E0780000F0780000F0780000F0F80000F8F80000F8F80000 F8F80000F8F80000F8F80000F8F80000F8F80000F8780000F07C0001F03C0001E03C0001 E01E0003C01E0003C00F00078007800F0001C01C0000F07800001FC0001D1F7E9E21>I< 0781FC0000FF86078000FF8801C0000F9000E00007A000700007C00078000780003C0007 80003E000780001E000780001F000780001F000780000F000780000F800780000F800780 000F800780000F800780000F800780000F800780000F800780000F000780001F00078000 1F000780001E000780003E000780003C0007C000780007A000700007A000E000079803C0 0007860F00000781F8000007800000000780000000078000000007800000000780000000 0780000000078000000007800000000780000000078000000007800000000FC0000000FF FC000000FFFC000000212D7E9E25>I<0783E0FF8418FF887C0F907C07A07C07A03807C0 0007C00007C0000780000780000780000780000780000780000780000780000780000780 000780000780000780000780000780000780000780000780000780000FC000FFFE00FFFE 00161F7E9E19>114 D<01FC100E03301800F0300070600030E00030E00010E00010E000 10F00010F800007E00003FF0001FFF000FFFC003FFE0003FF00001F80000F880003C8000 3C80001CC0001CC0001CE0001CE00018F00038F00030CC0060C301C080FE00161F7E9E1A >I<00400000400000400000400000400000C00000C00000C00001C00001C00003C00007 C0000FC0001FFFE0FFFFE003C00003C00003C00003C00003C00003C00003C00003C00003 C00003C00003C00003C00003C00003C00003C00003C00003C01003C01003C01003C01003 C01003C01003C01003C01001C02001E02000E0400078C0001F00142C7FAB19>I<078000 F000FF801FF000FF801FF0000F8001F000078000F000078000F000078000F000078000F0 00078000F000078000F000078000F000078000F000078000F000078000F000078000F000 078000F000078000F000078000F000078000F000078000F000078000F000078000F00007 8000F000078001F000078001F000078001F000038002F00003C004F00001C008F8000070 30FF80001FC0FF80211F7E9E25>II120 DI E end %%EndProlog %%BeginSetup %%Feature: *Resolution 300dpi TeXDict begin %%EndSetup %%Page: 1 1 1 0 bop 214 378 a Fq(The)21 b(PVM)h(Concurren)n(t)g(Computing)e (System:)28 b(Ev)n(olution,)627 469 y(Exp)r(eriences,)21 b(and)g(T)-6 b(rends)1353 443 y Fp(\003)821 625 y Fo(V.)16 b(S.)g(Sunderam)441 683 y(Departmen)o(t)e(of)j(Mathematics)e(and)h (Computer)g(Science)521 741 y(Emory)f(Univ)o(ersit)o(y)l(,)f(A)o(tlan)o (ta,)h(GA)h(30322,)h(USA)867 857 y(G.)f(A.)f(Geist)663 915 y(Mathematical)f(Sciences)h(Section)649 973 y(Oak)i(Ridge)e (National)i(Lab)q(oratory)692 1031 y(Oak)f(Ridge,)f(TN)h(37831,)i(USA) 699 1148 y(J.)e(Dongarra)i(&)e(R.)g(Manc)o(hek)662 1206 y(Computer)f(Science)g(Departmen)o(t)439 1264 y(Univ)o(ersit)o(y)f(of)i (T)l(ennessee,)f(Kno)o(xville,)f(TN)i(37996,)i(USA)899 1511 y Fn(Abstract)266 1603 y Fm(The)g(PVM)g(system,)f(a)h(soft)o(w)o (are)f(framew)o(ork)f(for)h(heterogeneous)j(concurren)o(t)f(computing) 204 1653 y(in)13 b(net)o(w)o(ork)o(ed)i(en)o(vironmen)o(ts,)d(has)i(ev) o(olv)o(ed)g(in)g(the)g(past)g(sev)o(eral)h(y)o(ears)f(in)o(to)f(a)h (viable)f(tec)o(hnol-)204 1703 y(ogy)j(for)g(distributed)i(and)e (parallel)g(pro)q(cessing)i(in)e(a)h(v)n(ariet)o(y)f(of)g(disciplines.) 27 b(PVM)17 b(supp)q(orts)204 1753 y(a)e(straigh)o(tforw)o(ard)g(but)h (functionally)e(complete)h(message)h(passing)f(mo)q(del,)f(and)i(is)f (capable)h(of)204 1803 y(harnessing)10 b(the)g(com)o(bined)e(resources) k(of)d(t)o(ypically)f(heterogeneous)j(net)o(w)o(ork)o(ed)f(computing)e (plat-)204 1853 y(forms)i(to)j(deliv)o(er)f(high)f(lev)o(els)i(of)e(p)q (erformance)h(and)g(functionalit)o(y)m(.)k(In)c(this)g(pap)q(er,)h(w)o (e)g(describ)q(e)204 1902 y(the)k(arc)o(hitecture)h(of)e(PVM)i(system,) e(and)h(discuss)h(its)e(computing)f(mo)q(del,)h(the)h(programming)204 1952 y(in)o(terface)12 b(it)g(supp)q(orts,)h(auxiliary)d(facilities)h (for)g(pro)q(cess)j(groups)e(and)g(MPP)h(supp)q(ort,)f(and)g(some)204 2002 y(of)j(the)i(in)o(ternal)f(implem)o(en)o(tation)d(tec)o(hniques)18 b(emplo)o(y)o(ed.)23 b(P)o(erformance)16 b(issues,)h(dealing)f(pri-)204 2052 y(marily)h(with)j(comm)o(unication)d(o)o(v)o(erheads,)22 b(are)e(analyzed,)i(and)e(recen)o(t)h(\014ndings)g(as)f(w)o(ell)f(as) 204 2102 y(exp)q(erimen)o(tal)14 b(enhancemen)o(ts)i(to)f(are)h(presen) o(ted.)25 b(In)15 b(order)h(to)g(demonstrate)f(the)h(viabilit)o(y)d(of) 204 2151 y(PVM)j(for)g(large)g(scale)h(scien)o(ti\014c)g(sup)q (ercomputing,)f(the)h(pap)q(er)g(includes)f(represen)o(tativ)o(e)i (case)204 2201 y(studies)13 b(in)e(materials)g(science,)j(en)o (vironmen)o(tal)c(science,)k(and)e(climate)e(mo)q(deling.)16 b(W)m(e)c(conclude)204 2251 y(with)j(a)g(discussion)i(of)e(related)h (pro)r(jects)h(and)e(future)i(directions,)f(and)f(commen)o(t)f(on)h (near)h(and)204 2301 y(long-term)c(p)q(oten)o(tial)h(for)h(net)o(w)o (ork)g(computing)e(with)i(the)g(PVM)g(system.)p 90 2340 720 2 v 141 2367 a Fl(\003)159 2382 y Fk(Researc)o(h)j(supp)q(orted)g (b)o(y)f(the)g(Applied)i(Mathematical)g(Sciences)f(program,)f(O\016ce)g (of)f(Basic)i(Energy)g(Sciences,)90 2428 y(U.)e(S.)g(Departmen)o(t)h (of)f(Energy)m(,)h(under)g(Gran)o(t)g(No.)23 b(DE-F)o(G05-91ER25105,)18 b(and)e(con)o(tract)g(DE-A)o(C05-84OR21400)90 2474 y(with)c(Martin)h (Marietta)f(Energy)h(Systems,)f(Inc.;)f(and)h(the)f(National)j(Science) f(F)m(oundation,)g(under)g(Aw)o(ard)e(Nos.)16 b(CCR-)90 2519 y(9118787)e(and)g(CCR-8809615.)979 2850 y Fj(1)p eop %%Page: 2 2 2 1 bop 90 196 a Fi(1)69 b(In)n(tro)r(duction)90 326 y Fj(The)16 b(past)g(sev)o(eral)g(y)o(ears)f(has)h(witnessed)g(an)g(ev) o(er-increasing)i(acceptance)e(and)g(adoption)g(of)g(paral-)90 383 y(lel)h(pro)q(cessing,)g(b)q(oth)f(for)f(high-p)q(erformance)i (scien)o(ti\014c)g(computing)g(as)e(w)o(ell)i(as)e(for)g(more)h (\\general)90 439 y(purp)q(ose")22 b(applications.)42 b(F)l(urthermore,)23 b(the)f(message)f(passing)h(mo)q(del)h(app)q(ears) f(to)f(b)q(e)i(gaining)90 496 y(predominance)e(as)e(the)h(paradigm)f (of)g(c)o(hoice,)i(from)e(the)h(p)q(ersp)q(ectiv)o(e)h(of)e(n)o(um)o(b) q(er)h(and)g(v)m(ariet)o(y)f(of)90 552 y(m)o(ultipro)q(cessors)14 b(\(esp)q(ecially)h(massiv)o(ely)f(parallel)h(pro)q(cessors\),)e(and)h (also)f(in)h(terms)f(of)g(applications,)90 608 y(languages,)21 b(and)e(soft)o(w)o(are)f(systems)i(for)f(its)g(supp)q(ort.)34 b(This)20 b(pap)q(er)g(concerns)h(one)e(suc)o(h)h(message)90 665 y(passing)f(system)g({)f(PVM)h(\(P)o(arallel)g(Virtual)h(Mac)o (hine\),)g(that)e(is)h(a)g(soft)o(w)o(are)e(infrastructure)i(that)90 721 y(em)o(ulates)12 b(a)f(generalized)i(distributed)g(memory)e(m)o (ultipro)q(cessor)h(in)h(heterogeneous)e(net)o(w)o(ork)o(ed)g(en)o(vi-) 90 778 y(ronmen)o(ts.)18 b(Suc)o(h)13 b(an)e(approac)o(h,)h(whic)o(h)g (ob)o(viates)g(the)g(need)g(to)f(p)q(ossess)h(a)g(hardw)o(are)f(m)o (ultipro)q(cessor,)90 834 y(has)16 b(pro)o(v)o(en)g(to)g(b)q(e)h(a)f (viable)i(and)f(cost-e\013ectiv)o(e)f(tec)o(hnology)h(for)f(concurren)o (t)g(computing)h(in)g(man)o(y)90 891 y(application)i(domains.)26 b(Owing)18 b(to)e(its)h(ubiquitous)i(nature)e({)g(a)g(virtual)g (parallel)i(mac)o(hine)f(ma)o(y)e(b)q(e)90 947 y(constructed)i(using)g (PVM)g(with)g(an)o(y)g(set)f(of)h(mac)o(hines)g(one)g(has)g(access)g (to)f({)g(and)h(also)g(due)h(to)e(its)90 1004 y(simple)d(but)f (complete)g(programming)f(in)o(terface,)g(the)h(PVM)f(system)g(has)h (gained)g(widespread)g(accep-)90 1060 y(tance)k(in)i(the)e(high-p)q (erformance)i(scien)o(ti\014c)g(computing)f(comm)o(unit)o(y)l(.)27 b(In)18 b(this)g(pap)q(er,)g(w)o(e)f(presen)o(t)90 1117 y(the)g(rationale)f(and)h(motiv)m(ations)g(for)f(this)h(pro)s(ject,)f (the)g(mo)q(del)i(supp)q(orted,)f(imp)q(ortan)o(t)f(design)h(de-)90 1173 y(cisions)i(and)g(p)q(erformance)f(considerations,)h(and)f(case)g (studies)h(in)g(the)f(use)h(of)e(PVM)h(for)f(scien)o(ti\014c)90 1229 y(sup)q(ercomputing.)90 1378 y Fh(1.1)56 b(Heterogeneous)17 b(Net)n(w)n(ork)h(Computing)90 1493 y Fj(Heterogeneous,)d(net)o(w)o (ork-base,)g(concurren)o(t)g(computing)h(refers)f(to)g(an)h(ev)o (olving)g(metho)q(dology)g(for)90 1549 y(general)g(purp)q(ose)g (concurren)o(t)f(computing)h(where)158 1667 y Fg(\017)23 b Fj(The)18 b(hardw)o(are)f(platform)h(consists)g(of)f(a)h(collection)i (of)d(m)o(ultifaceted)i(computer)f(systems)f(of)204 1723 y(v)m(arying)h(arc)o(hitectures,)g(in)o(terconnected)h(b)o(y)f(one)f (or)h(more)f(net)o(w)o(ork)f(t)o(yp)q(es.)28 b(A)17 b(sp)q(ecial)j (case)204 1779 y(\(alb)q(eit)13 b(the)f(most)g(common)g(at)f(presen)o (t\))h(is)h(a)f(collection)i(of)e(similar)h(or)f(iden)o(tical)i(w)o (orkstations)204 1836 y(on)j(a)f(single)i(lo)q(cal)g(area)f(net)o(w)o (ork,)f(although)h(a)f(more)h(sp)q(eci\014c)i(term)d(for)g(suc)o(h)i (en)o(vironmen)o(ts)204 1892 y(is)d(\\cluster".)158 1981 y Fg(\017)23 b Fj(Applications)15 b(are)f(view)o(ed)g(as)f(comprising)i (sev)o(eral)f(sub-algorithms,)g(eac)o(h)g(of)f(whic)o(h)h(is)g(p)q (oten-)204 2037 y(tially)i(di\013eren)o(t)g(in)g(terms)e(of)h(its)h (most)e(appropriate)h(programming)g(mo)q(del,)h(implemen)o(tation)204 2094 y(language,)f(and)g(resource)g(requiremen)o(ts)161 2211 y(Heterogeneous)j(net)o(w)o(ork)f(computing)i(refers)f(to)g(mo)q (dels,)h(tec)o(hniques)h(and)e(to)q(olkits)h(to)f(matc)o(h)90 2268 y(heterogeneous)d(en)o(vironmen)o(ts)h(on)f(the)g(one)g(hand)h (with)f(complete)h(applications,)g(consisting)g(of)f(dif-)90 2324 y(feren)o(t)j(subtasks,)h(on)g(the)g(other.)29 b(While)20 b(explicit)h(atten)o(tion)d(to)g(the)h(heterogeneous)g(asp)q(ects)g (and)90 2381 y(\\functionalit)o(y)f(exploitation")h(in)f(suc)o(h)f (scenarios)h(has)f(only)h(recen)o(tly)g(receiv)o(ed)h(formalized)f (atten-)90 2437 y(tion,)13 b(the)g(concept,)g(in)g(some)f(form)g(has)g (b)q(een)i(explored)g(previously)l(,)g(e.g.)k([2],)12 b(although)h(usually)h(with)90 2494 y(a)f(narro)o(w)e(fo)q(cus)i(or)g (based)g(on)g(a)g(sp)q(ecialized)j(arc)o(hitecture.)j(The)13 b(PVM)g(system)f(w)o(as)g(designed)j(to)d(re-)90 2550 y(alize)j(a)e(more)g(general)h(and)f(encompassing)h(in)o(terpretation)g (of)f(heterogeneous)g(computing,)h(and)g(had)979 2850 y(2)p eop %%Page: 3 3 3 2 bop 90 196 a Fj(a)15 b(pragmatic)g(bias)g(aimed)h(at)e(pro)o (viding)j(a)d(w)o(orking)h(system)g(that)f(could)i(b)q(e)g(used)g(in)g (existing)g(en)o(vi-)90 252 y(ronmen)o(ts)e(|)g(PVM)g(supp)q(orts)g (heterogeneous)g(mac)o(hines,)h(applications,)h(and)e(net)o(w)o(orks.)k (Researc)o(h)90 309 y(is)d(con)o(tin)o(uing)h(to)o(w)o(ards)d(the)i(ev) o(en)o(tual)g(goals)f(of)h(the)f(pro)s(ject,)g(namely)i(to)e(prop)q (ose)g(a)h(heterogeneous)90 365 y(application)21 b(dev)o(elopmen)o(t)f (mo)q(del)g(and)f(asso)q(ciated)g(programming)g(framew)o(orks,)f(to)g (enable)j(opti-)90 421 y(mal)d(mapping)h(b)q(et)o(w)o(een)g (application)g(subtasks)f(and)h(the)f(b)q(est-suited)h(mac)o(hines,)h (and)e(to)f(pro)o(vide)90 478 y(adequate)f(infrastructure)h(for)f (heterogeneous)g(debugging,)i(visualization,)g(pro\014ling)g(and)e (monitor-)90 534 y(ing.)j(In)13 b(the)g(mean)o(time)f(ho)o(w)o(ev)o (er,)g(curren)o(t)g(realizations)h(of)f(PVM,)g(supp)q(orting)h(basic)g (heterogeneous)90 591 y(features)18 b(and)h(robust)e(em)o(ulations)i (of)f(heterogeneous)h(concurren)o(t)f(mac)o(hines,)i(ha)o(v)o(e)e(pro)o (v)o(en)g(to)f(b)q(e)90 647 y(v)m(aluable)g(and)e(e\013ectiv)o(e)h(for) e(more)h(traditional)h(applications,)g(esp)q(ecially)i(in)e(high-p)q (erformance)g(sci-)90 704 y(en)o(ti\014c)i(computing.)25 b(The)17 b(facilities)i(that)d(are)h(curren)o(tly)g(a)o(v)m(ailable,)i (as)d(w)o(ell)i(as)f(recen)o(t)g(results)g(and)90 760 y(ongoing)e(w)o(ork,)f(are)h(discussed)i(in)f(the)f(follo)o(wing)h (sections.)90 911 y Fh(1.2)56 b(The)18 b(Ev)n(olution)g(of)h(PVM)90 1026 y Fj(The)k(PVM)f(pro)s(ject)g(started)g(in)h(the)g(summer)g(of)f (1989,)h(and)g(has)f(ev)o(olv)o(ed)h(through)f(three)h(v)o(er-)90 1082 y(sions)d(of)e(the)i(soft)o(w)o(are,)e(the)h(latter)g(t)o(w)o(o)f (of)g(whic)o(h)i(ha)o(v)o(e)f(b)q(een)i(publicly)h(distributed.)33 b(The)19 b(origi-)90 1139 y(nal)g(v)o(ersion)g(of)f(the)h(system)f([3)o (])h(w)o(as)e(am)o(bitious,)j(in)f(that)f(it)h(attempted)f(to)g(b)q(e)h (heterogeneous)g(in)90 1195 y(terms)f(of)g(programming)f(mo)q(del)i(as) f(w)o(ell)h({)f(supp)q(ort)h(for)e(em)o(ulated)i(shared)f(memory)l(,)h (in)g(addition)90 1252 y(to)f(message)h(passing,)h(w)o(as)f(incorp)q (orated.)32 b(The)19 b(basic)h(computing)f(mo)q(del,)i(whic)o(h)f(has)f (remained)90 1308 y(seman)o(tically)d(unc)o(hanged,)f(views)h (applications)g(as)f(consisting)h(of)e Ff(components)p Fj(,)f(eac)o(h)i(represen)o(ting)90 1365 y(a)g(sub-algorithm;)g(eac)o (h)g(comp)q(onen)o(t)g(is)g(an)g(SPMD)f(program,)g(p)q(oten)o(tially)i (manifested)g(as)e(m)o(ultiple)90 1421 y Ff(instances)p Fj(,)h(co)q(op)q(erating)i(in)o(ternally)h(as)e(w)o(ell)h(as)f(with)h (other)f(comp)q(onen)o(t)h(instances)g(via)g(the)f(sup-)90 1477 y(p)q(orted)f(comm)o(unication)h(and)f(sync)o(hronization)h(mec)o (hanisms.)21 b(The)15 b(unit)h(of)e(concurrency)i(in)g(PVM)90 1534 y(is)d(a)g(pro)q(cess,)g(and)g(dep)q(endencie)q(s)i(in)f(the)f (pro)q(cess)g(\015o)o(w)g(graph)f(are)h(implemen)o(ted)i(b)o(y)d(em)o (b)q(edding)j(ap-)90 1590 y(propriate)f(PVM)f(primitiv)o(es)i(for)e (pro)q(cess)h(managemen)o(t)f(and)h(sync)o(hronization)h(within)g(con)o (trol)e(\015o)o(w)90 1647 y(constructs)i(of)f(the)h(host)g(programming) f(language.)20 b(The)15 b(implemen)o(tation)i(mo)q(del,)e(also)g(unc)o (hanged)90 1703 y(from)i(the)h(original)h(v)o(ersion,)f(uses)g(the)g (notion)g(of)g(a)f(\\host)g(p)q(o)q(ol",)i(a)f(collection)h(of)f(in)o (terconnected)90 1760 y(computer)d(systems)g(that)f(comprises)i(the)f (virtual)h(mac)o(hine,)g(on)f(whic)o(h)h Fe(daemon)g Fj(pro)q(cesses)f(execute)90 1816 y(and)e(co)q(op)q(erate)g(to)f(em)o (ulate)h(a)g(concurren)o(t)g(computing)g(system.)19 b(Applications)c (request)e(and)g(receiv)o(e)90 1873 y(services)21 b(from)f(the)h (daemons;)h(the)f(facilities)i(supp)q(orted)e(essen)o(tially)h(fall)f (in)o(to)g(the)f(categories)g(of)90 1929 y(pro)q(cess)c(managemen)o(t)e (and)i(virtual)g(mac)o(hine)g(con\014guration,)g(message)f(passing,)g (sync)o(hronization,)90 1986 y(and)g(miscellaneous)j(status)c(c)o(hec)o (king)i(and)g(housek)o(eeping)g(tasks.)161 2071 y(PVM)21 b(is)h(the)f(mainsta)o(y)g(of)g(the)h(Heterogeneous)f(Net)o(w)o(ork)f (Computing)i(researc)o(h)f(pro)s(ject,)h(a)90 2128 y(collab)q(orativ)o (e)17 b(v)o(en)o(ture)e(b)q(et)o(w)o(een)h(Emory)f(Univ)o(ersit)o(y)l (,)h(Oak)g(Ridge)h(National)f(Lab)q(oratory)l(,)f(and)h(the)90 2184 y(Univ)o(ersit)o(y)21 b(of)f(T)l(ennessee.)36 b(In)21 b(addition)h(to)d(the)i(authors,)f(Keith)i(Mo)q(ore,)e(and)h(W)l(eic)o (heng)g(Jiang)90 2240 y(of)c(UT,)g(and)g(Adam)h(Beguelin)h(of)e(CMU)g (are)g(co-in)o(v)o(estigators.)26 b(This)18 b(pro)s(ject)e(is)i(a)f (basic)h(researc)o(h)90 2297 y(e\013ort)12 b(aimed)h(at)f(adv)m(ancing) i(science,)h(and)e(is)g(wholly)h(funded)g(b)o(y)f(researc)o(h)g (appropriations)g(from)f(the)90 2353 y(U.S.)j(Departmen)o(t)g(of)h (Energy)l(,)f(the)h(National)h(Science)g(F)l(oundation,)f(and)g(the)g (State)g(of)f(T)l(ennessee.)90 2410 y(Ho)o(w)o(ev)o(er,)21 b(o)o(wing)g(to)f(its)i(exp)q(erimen)o(tal)g(nature,)g(the)f(PVM)g(pro) s(ject)f(pro)q(duces)i(soft)o(w)o(are)d(that)h(is)90 2466 y(of)e(utilit)o(y)i(to)f(researc)o(hers)f(in)i(the)f(scien)o (ti\014c)h(comm)o(unit)o(y)f(and)g(to)f(others.)30 b(This)20 b(soft)o(w)o(are)d(is,)j(and)90 2523 y(has)d(b)q(een)i(distributed)g (freely)f(in)g(the)g(in)o(terest)f(of)h(adv)m(ancemen)o(t)g(of)f (science)i(and)e(is)h(b)q(eing)h(used)f(in)979 2850 y(3)p eop %%Page: 4 4 4 3 bop 90 196 a Fj(computational)16 b(applications)g(around)f(the)h(w) o(orld.)90 346 y Fh(1.3)56 b(Related)17 b(W)-5 b(ork)90 461 y Fj(A)18 b(n)o(um)o(b)q(er)h(of)f(pro)s(jects)g(based)g(on)g(the)h (same)f(principle,)k(namely)c(utilizing)j(a)d(collection)j(of)d(in)o (ter-)90 518 y(connected)e(mac)o(hines)h(as)e(a)g(concurren)o(t)g (computing)i(platform,)d(ha)o(v)o(e)h(b)q(een)i(dev)o(elop)q(ed)g(and)f (sev)o(eral)90 574 y(enjo)o(y)j(widespread)i(adoption)e(and)h(follo)o (wing.)34 b(While)21 b(there)e(is)h(some)f(commonalit)o(y)h(with)g (PVM,)90 631 y(other)e(similar)h(systems)e(o\013er)g(\(sometimes)h (radically\))h(di\013eren)o(t)f(programming)g(and)g(implemen)o(ta-)90 687 y(tion)12 b(mo)q(dels,)i(and)e(presen)o(t)g(v)m(aried)h (functionalit)o(y)g(and)g(p)q(erformance.)19 b(The)12 b(more)g(widely)h(adopted)f(of)90 744 y(these)f(systems)g(are)f (describ)q(ed)j(in)f(detail)g(elsewhere)g(in)g(this)g(v)o(olume;)g(in)g (this)f(subsection,)i(w)o(e)e(men)o(tion)90 800 y(a)j(few)f(represen)o (tativ)o(e)h(systems)f(and)h(commen)o(t)g(on)f(di\013erences)i(in)g (functionalit)o(y)g(and)f(p)q(erformance.)161 886 y(Linda)g([5)o(])f (is)g(a)g(concurren)o(t)g(programming)f(mo)q(del)i(based)f(on)g(the)g (concept)g(of)g(a)f(\\tuple-space",)i(a)90 942 y(distributed)k(shared)e (memory)g(abstraction)g(via)h(whic)o(h)g(co)q(op)q(erating)g(pro)q (cesses)g(comm)o(unicate.)23 b(P4)90 998 y(and)10 b(\(its)g(deriv)m (ativ)o(e)i(P)o(armacs\))d([6)o(])h(are)f(libraries)j(of)e(macros)f (and)i(subroutines)g(dev)o(elop)q(ed)g(at)f(Argonne)90 1055 y(National)22 b(Lab)q(oratory)e(and)i(GMD,)e(for)g(programming)h (a)g(v)m(ariet)o(y)h(of)f(parallel)i(mac)o(hines.)39 b(They)90 1111 y(supp)q(ort)17 b(b)q(oth)g(the)g(shared-memory)f(mo)q (del)i(\(based)f(on)g(monitors\))f(and)h(the)g(distributed-memory)90 1168 y(mo)q(del)d(\(using)f(message-passing\).)19 b(Express)13 b(is)h(a)e(collection)j(of)e(to)q(ols,)g(including)i(a)e(message)g (passing)90 1224 y(in)o(terface,)h(for)f(programming)h(distributed)h (memory)e(m)o(ultipro)q(cessors,)i(including)i(net)o(w)o(ork)12 b(clusters)90 1281 y([7)o(].)41 b(V)l(arious)22 b(other)g(systems)g (with)g(similar)i(capabilities)g(are)e(also)g(in)h(existence;)k(a)22 b(reasonably)90 1337 y(comprehensiv)o(e)16 b(listing)h(ma)o(y)e(b)q(e)g (found)h(in)g([8)o(].)161 1423 y(With)h(the)g(exception)h(of)f(Linda,)h (whose)f(programming)g(mo)q(del)h(is)f(not)g(based)g(on)h(con)o(v)o(en) o(tional)90 1479 y(message)11 b(passing,)g(most)g(other)f(systems)h (supp)q(ort)g(v)o(ery)g(similar)h(facilities,)h(the)e(core)g(primitiv)o (es)i(b)q(eing)90 1536 y(system-sp)q(eci\014c)k(v)m(arian)o(ts)d(of)h Ff(send)f Fj(and)i Ff(receive)p Fj(.)i(PVM)d(supp)q(orts)g(dynamic)h (pro)q(cess)f(and)g(virtual)90 1592 y(mac)o(hine)f(managemen)o(t)e (unlik)o(e)j(other)d(systems)h(where)g(the)g(pro)q(cess)g(structure)g (is)g(statically)h(de\014ned.)90 1649 y(The)f(PVM)f(message)g(passing)h (primitiv)o(es)h(are)e(orien)o(ted)h(to)o(w)o(ards)e(heterogeneous)h (op)q(eration,)h(in)o(v)o(olv-)90 1705 y(ing)18 b(strongly)g(t)o(yp)q (ed)g(constructs)f(for)h(bu\013ering)g(and)g(transmission;)h(some)f (other)f(systems)g(pro)o(vide)90 1761 y(for)i(un)o(t)o(yp)q(ed)i(data)e (transfer.)34 b(Compared)19 b(to)g(other)h(systems,)g(the)g(suite)h(of) e(in)o(terface)i(primitiv)o(es)90 1818 y(supp)q(orted)f(b)o(y)f(PVM)g (is)h(small;)h(for)e(example)h(P4)f(and)h(Express)f(pro)o(vide)h (global)g(com)o(bining)g(rou-)90 1874 y(tines,)14 b(and)f(P)o(armacs)g (supp)q(orts)g(pro)q(cess)h(top)q(ologies.)19 b(These)14 b(omissions)g(are)f(delib)q(erate)i(to)e(a)g(certain)90 1931 y(exten)o(t;)h(the)g(PVM)g(philosoph)o(y)h(is)g(to)f(supp)q(ort)g (a)g(core)g(k)o(ernel)h(of)e(primitiv)o(es)j(ab)q(o)o(v)o(e)e(whic)o(h) h(auxiliary)90 1987 y(la)o(y)o(ers)f(ma)o(y)g(b)q(e)i(added)f(\(e.g.)k (a)14 b(PICL)i([9)o(])e(p)q(ort)h(to)f(PVM)g([10)o(]\),)g(while)i (ensuring)g(that)e(facilities)j(that)90 2044 y(can)e(only)h(b)q(e)g (pro)o(vided)g(at)f(the)g(system)g(lev)o(el)h(are)f(comprehensiv)o(e)h (and)g(functionally)h(complete.)161 2129 y(In)10 b(terms)g(of)g(p)q (erformance,)h(most)e(message)h(passing)g(systems)g(exhibit)i(only)f (marginal)f(di\013erences,)90 2186 y(although)j(systematic)g (comparativ)o(e)f(studies)i(ha)o(v)o(e)e(not)h(b)q(een)h(undertak)o (en.)19 b(In)14 b(the)f(con)o(text)f(of)g(PVM)90 2242 y(and)19 b(similar)g(systems,)g(p)q(erformance)f(is)h(usually)h (measured)f(b)o(y)f(\(1\))g(end-to-end)h(comm)o(unications)90 2299 y(sp)q(eeds)13 b(deliv)o(ered)i(b)o(y)d(the)h(soft)o(w)o(are)d (system;)j(and)g(\(2\))e(o)o(v)o(erall)i(execution)g(times)g(of)f(v)m (arious)h(complete)90 2355 y(applications)k(as)f(measured)g(b)o(y)f (elapsed)i(w)o(all)f(clo)q(c)o(k)h(times.)k(Neither)c(of)e(these)h (parametrizations)f(is)90 2411 y(v)o(ery)c(meaningful)i(ho)o(w)o(ev)o (er,)e(since)i(in)g(t)o(ypical)f(net)o(w)o(ork)o(ed)f(en)o(vironmen)o (ts,)h(a)f(n)o(um)o(b)q(er)h(of)f(dynamically)90 2468 y(v)m(arying)g(external)g(in\015uences)i(con)o(tin)o(ually)g(a\013ect)d (these)h(measures.)18 b(Giv)o(en)11 b(these)g(quali\014cations,)i(and) 90 2524 y(the)g(fact)f(that)g(net)o(w)o(ork-based)g(systems)g(for)g (the)h(most)e(part)h(utilize)j(the)e(same)f(underlying)j(transp)q(ort) 979 2850 y(4)p eop %%Page: 5 5 5 4 bop 90 196 a Fj(mec)o(hanisms,)20 b(p)q(erformance)f(v)m(ariations) h(tend)f(to)f(b)q(e)i(b)q(oth)f(insigni\014can)o(t)i(and)e(inconsisten) o(t.)32 b(In)19 b(a)90 252 y(later)d(section,)g(w)o(e)g(presen)o(t)g (exp)q(erimen)o(tal)h(measuremen)o(ts)e(of)h(p)q(erformance)g(for)f (the)h(PVM)g(system,)90 309 y(and)f(prop)q(ose)h(strategies)e(under)i (in)o(v)o(estigation)g(to)e(enhance)j(them.)90 481 y Fi(2)69 b(PVM)23 b(Mo)r(del)f(and)i(F)-6 b(eatures)90 613 y Fh(2.1)56 b(PVM)19 b(Computing)f(Mo)r(del)90 728 y Fj(Under)i(PVM,)g(a)f(user)h(de\014ned)i(collection)f(of)f(serial,)h (parallel,)i(and)d(v)o(ector)f(computers)h(em)o(ulates)90 784 y(a)f(large)g(distributed-memory)h(computer.)32 b(Throughout)19 b(this)g(rep)q(ort)g(the)g(term)g Fe(virtual)h(machine)90 841 y Fj(will)e(b)q(e)g(used)f(to)f(designate)h(this)h(logical)f (distributed-memory)h(computer,)f(and)g Fe(host)g Fj(will)h(b)q(e)f (used)90 897 y(to)g(designate)h(one)f(of)g(the)h(mem)o(b)q(er)f (computers.)26 b(Multiple)20 b(users)d(can)h(con\014gure)f(o)o(v)o (erlapping)h(vir-)90 954 y(tual)e(mac)o(hines,)h(and)f(eac)o(h)g(user)h (can)f(execute)h(sev)o(eral)f(PVM)g(applications)h(sim)o(ultaneously)l (.)24 b(PVM)90 1010 y(supplies)d(the)d(functions)i(to)e(automatically)h (start)f(up)h(tasks)f(on)g(the)h(virtual)g(mac)o(hine)h(and)f(allo)o (ws)90 1067 y(the)h(tasks)f(to)g(comm)o(unicate)h(and)g(sync)o(hronize) h(with)g(eac)o(h)f(other.)33 b(A)20 b Fe(task)g Fj(is)g(de\014ned)h(as) f(a)f(unit)90 1123 y(of)e(computation)g(in)h(PVM)f(analogous)g(to)g(a)g (Unix)h(pro)q(cess.)27 b(It)17 b(is)h(often)f(a)g(Unix)h(pro)q(cess,)g (but)f(not)90 1180 y(necessarily)i(so.)27 b(Applications,)20 b(whic)o(h)f(can)f(b)q(e)g(written)g(in)g(F)l(ortran77)e(or)i(C,)f(can) h(b)q(e)g(parallelized)90 1236 y(b)o(y)e(using)i(message-passing)e (constructs)h(common)f(to)g(most)f(distributed-memory)j(computers.)24 b(By)90 1292 y(sending)18 b(and)g(receiving)h(messages,)e(m)o(ultiple)i (tasks)d(of)h(an)g(application)i(can)f(co)q(op)q(erate)f(to)g(solv)o(e) g(a)90 1349 y(problem)d(in)g(parallel.)21 b(Figure)14 b(1)f(depicts)i(the)e(PVM)g(computing)h(mo)q(del)h(as)e(w)o(ell)h(as)f (an)g(arc)o(hitectural)90 1405 y(abstraction)i(of)g(the)g(system.)161 1491 y(The)f(mo)q(del)h(assumes)e(that)h(an)o(y)f(task)g(can)i(send)f (a)g(message)f(to)h(an)o(y)f(other)h(PVM)f(task,)h(and)g(that)90 1547 y(there)i(is)g(no)g(limit)h(to)e(the)g(size)i(or)e(n)o(um)o(b)q (er)h(of)g(suc)o(h)g(messages.)k(The)c(PVM)g(comm)o(unication)g(mo)q (del)90 1604 y(pro)o(vides)h(async)o(hronous)e(blo)q(c)o(king)j(send,)e (async)o(hronous)g(blo)q(c)o(king)i(receiv)o(e,)f(and)f(non-blo)q(c)o (king)i(re-)90 1660 y(ceiv)o(e)g(functions.)28 b(In)18 b(our)f(terminology)l(,)h(a)f(blo)q(c)o(king)i(send)f(returns)f(as)g (so)q(on)g(as)h(the)f(send)h(bu\013er)f(is)90 1717 y(free)i(for)e (reuse)i(regardless)g(of)f(the)g(state)g(of)g(the)h(receiv)o(er.)30 b(A)19 b(non-blo)q(c)o(king)h(receiv)o(e)f(immediately)90 1773 y(returns)13 b(with)h(either)g(the)f(data)g(or)g(a)g(\015ag)g (that)g(the)g(data)g(has)g(not)g(arriv)o(ed,)g(while)i(a)e(blo)q(c)o (king)i(receiv)o(e)90 1830 y(returns)20 b(only)h(when)g(the)f(data)g (is)h(in)g(the)g(receiv)o(e)g(bu\013er.)35 b(In)21 b(addition)h(to)e (these)g(p)q(oin)o(t-to-p)q(oin)o(t)90 1886 y(comm)o(unication)e (functions)f(the)g(mo)q(del)h(supp)q(orts)f(m)o(ulticast)g(to)f(a)g (set)h(of)f(tasks)g(and)i(broadcast)e(to)90 1943 y(a)e(user)h (de\014ned)h(group)f(of)f(tasks.)19 b(The)c(PVM)f(mo)q(del)i(guaran)o (tees)e(that)g(message)g(order)g(is)i(preserv)o(ed)90 1999 y(b)q(et)o(w)o(een)g(an)o(y)e(pair)i(of)f(comm)o(unicating)h(en)o (tities.)90 2150 y Fh(2.2)56 b(Core)18 b(F)-5 b(eatures)90 2265 y Fj(PVM)20 b(supplies)i(routines)e(that)f(enable)i(a)f(user)g (pro)q(cess)g(to)g(register/lea)o(v)o(e)g(a)f(collection)j(of)e(co)q (op-)90 2321 y(erating)g(pro)q(cesses,)g(routines)h(to)e(add)g(and)h (delete)h(hosts)e(from)g(the)h(virtual)g(mac)o(hine,)i(to)d(initiate)90 2378 y(and)d(terminate)g(PVM)g(tasks,)f(to)h(sync)o(hronize)h(with)g (and)f(send)h(signals)g(to)e(other)h(PVM)g(tasks,)f(and)90 2434 y(routines)20 b(to)f(obtain)g(information)h(ab)q(out)f(the)g (virtual)h(mac)o(hine)h(con\014guration)e(and)h(activ)o(e)f(PVM)90 2490 y(tasks.)32 b(Sync)o(hronization)21 b(ma)o(y)e(b)q(e)h(ac)o(hiev)o (ed)h(in)f(one)g(of)f(sev)o(eral)h(w)o(a)o(ys,)f(e.g.)32 b(b)o(y)20 b(sending)h(a)e(Unix)90 2547 y(signal)f(to)f(another)g (task,)g(or)g(b)o(y)g(using)h(barriers.)26 b(Another)18 b(metho)q(d)f(noti\014es)h(a)f(set)h(of)f(tasks)f(of)h(an)979 2850 y(5)p eop %%Page: 6 6 6 5 bop 53 1350 a @beginspecial 72 @llx 248 @lly 540 @urx 543 @ury 4500 @rwi 2880 @rhi @setspecial %%BeginDocument: fig1.ps /$F2psDict 200 dict def $F2psDict begin $F2psDict /mtrx matrix put /l {lineto} bind def /m {moveto} bind def /s {stroke} bind def /n {newpath} bind def /gs {gsave} bind def /gr {grestore} bind def /clp {closepath} bind def /graycol {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul 4 -2 roll mul setrgbcolor} bind def /col-1 {} def /col0 {0 0 0 setrgbcolor} bind def /col1 {0 0 1 setrgbcolor} bind def /col2 {0 1 0 setrgbcolor} bind def /col3 {0 1 1 setrgbcolor} bind def /col4 {1 0 0 setrgbcolor} bind def /col5 {1 0 1 setrgbcolor} bind def /col6 {1 1 0 setrgbcolor} bind def /col7 {1 1 1 setrgbcolor} bind def /DrawEllipse { /endangle exch def /startangle exch def /yrad exch def /xrad exch def /y exch def /x exch def /savematrix mtrx currentmatrix def x y translate xrad yrad scale 0 0 1 startangle endangle arc savematrix setmatrix } def end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def $F2psBegin 0 setlinecap 0 setlinejoin 11.0 590.5 translate 0.720 -0.720 scale 0.500 setlinewidth % Ellipse n 529 159 10 10 0 360 DrawEllipse gs 0.95 setgray fill gr gs col-1 s gr % Ellipse n 529 189 10 10 0 360 DrawEllipse gs 0.95 setgray fill gr gs col-1 s gr % Ellipse n 529 224 10 10 0 360 DrawEllipse gs 0.95 setgray fill gr gs col-1 s gr % Ellipse n 529 254 10 10 0 360 DrawEllipse gs 0.95 setgray fill gr gs col-1 s gr % Ellipse n 156 236 50 50 0 360 DrawEllipse gs col-1 s gr % Ellipse n 226 126 31 31 0 360 DrawEllipse gs col-1 s gr % Ellipse n 226 356 31 31 0 360 DrawEllipse gs col-1 s gr % Ellipse n 296 236 50 50 0 360 DrawEllipse gs col-1 s gr % Polyline n 734 439 m 734 64 l 459 64 l 459 439 l clp gs col-1 s gr 1.000 setlinewidth % Polyline n 494 129 m 649 129 l 649 129 l 644 129 l gs 0.90 setgray fill gr gs col-1 s gr 0.500 setlinewidth % Polyline n 504 129 m 504 109 l gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 529 129 m 529 109 l gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 554 129 m 554 109 l gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 579 129 m 579 109 l gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 604 129 m 604 109 l gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 624 129 m 624 109 l gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 514 109 m 514 94 l 499 94 l 499 109 l clp gs 0.95 setgray fill gr gs col-1 s gr % Polyline n 539 109 m 539 94 l 524 94 l 524 109 l clp gs 0.95 setgray fill gr gs col-1 s gr % Polyline n 564 109 m 564 94 l 549 94 l 549 109 l clp gs 0.95 setgray fill gr gs col-1 s gr % Polyline n 589 109 m 589 94 l 574 94 l 574 109 l clp gs 0.95 setgray fill gr gs col-1 s gr % Polyline n 614 109 m 614 94 l 599 94 l 599 109 l clp gs 0.95 setgray fill gr gs col-1 s gr % Polyline n 634 109 m 634 94 l 619 94 l 619 109 l clp gs 0.95 setgray fill gr gs col-1 s gr 1.000 setlinewidth % Polyline n 494 129 m 494 274 l gs 0.95 setgray fill gr gs col-1 s gr 0.500 setlinewidth % Polyline n 494 159 m 519 159 l gs 0.95 setgray fill gr gs col-1 s gr % Polyline n 494 189 m 519 189 l gs 0.95 setgray fill gr gs col-1 s gr % Polyline n 494 224 m 519 224 l gs 0.95 setgray fill gr gs col-1 s gr % Polyline n 494 254 m 519 254 l gs 0.95 setgray fill gr gs col-1 s gr % Polyline n 646 119 m 639 119 639 152 7 arcto 4 {pop} repeat 639 159 647 159 7 arcto 4 {pop} repeat 654 159 654 126 7 arcto 4 {pop} repeat 654 119 646 119 7 arcto 4 {pop} repeat clp gs 0.65 setgray fill gr gs col-1 s gr 1.000 setlinewidth 1 setlinecap [1 4.500000] 4.500000 setdash % Polyline n 639 154 m 609 209 l gs 0.65 setgray fill gr gs col-1 s gr [] 0 setdash 0 setlinecap [6.000000] 0 setdash % Polyline n 649 159 m 649 269 l 669 244 l 669 324 l gs col-1 s gr [] 0 setdash 0.500 setlinewidth % Polyline n 634 259 m 634 209 l 594 209 l 594 259 l clp gs col-1 s gr 1.000 setlinewidth % Polyline n 529 329 m 684 329 l 684 329 l 679 329 l gs 0.90 setgray fill gr gs col-1 s gr 0.500 setlinewidth % Polyline n 564 364 m 564 349 l 549 349 l 549 364 l clp gs 0.95 setgray fill gr gs col-1 s gr % Polyline n 554 349 m 554 329 l gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 594 349 m 594 329 l gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 624 349 m 624 329 l gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 604 364 m 604 349 l 589 349 l 589 364 l clp gs 0.95 setgray fill gr gs col-1 s gr % Polyline n 634 364 m 634 349 l 619 349 l 619 364 l clp gs 0.95 setgray fill gr gs col-1 s gr 1.000 setlinewidth 1 setlinecap [1 4.500000] 4.500000 setdash % Polyline n 682 328 m 652 383 l gs 0.65 setgray fill gr gs col-1 s gr [] 0 setdash 0 setlinecap 0.500 setlinewidth % Polyline n 709 414 m 709 384 l 644 384 l 644 414 l clp gs col-1 s gr % Polyline n 459 314 m 604 439 l 604 439 l 609 439 l gs col-1 s gr % Polyline n 459 309 m 609 439 l gs col-1 s gr % Polyline n 484 354 m 494 344 l gs col-1 s gr n 486.929 348.243 m 494.000 344.000 l 489.757 351.071 l gs 2 setlinejoin col-1 s gr % Polyline n 494 364 m 504 354 l gs col-1 s gr n 496.929 358.243 m 504.000 354.000 l 499.757 361.071 l gs 2 setlinejoin col-1 s gr % Polyline n 504 374 m 514 364 l gs col-1 s gr n 506.929 368.243 m 514.000 364.000 l 509.757 371.071 l gs 2 setlinejoin col-1 s gr % Polyline n 514 384 m 524 374 l gs col-1 s gr n 516.929 378.243 m 524.000 374.000 l 519.757 381.071 l gs 2 setlinejoin col-1 s gr % Polyline n 524 394 m 534 384 l gs col-1 s gr n 526.929 388.243 m 534.000 384.000 l 529.757 391.071 l gs 2 setlinejoin col-1 s gr % Polyline n 534 399 m 544 389 l gs col-1 s gr n 536.929 393.243 m 544.000 389.000 l 539.757 396.071 l gs 2 setlinejoin col-1 s gr % Polyline n 131 214 m 124 214 124 222 7 arcto 4 {pop} repeat 124 229 142 229 7 arcto 4 {pop} repeat 149 229 149 221 7 arcto 4 {pop} repeat 149 214 131 214 7 arcto 4 {pop} repeat clp gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 171 214 m 164 214 164 222 7 arcto 4 {pop} repeat 164 229 182 229 7 arcto 4 {pop} repeat 189 229 189 221 7 arcto 4 {pop} repeat 189 214 171 214 7 arcto 4 {pop} repeat clp gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 171 239 m 164 239 164 247 7 arcto 4 {pop} repeat 164 254 182 254 7 arcto 4 {pop} repeat 189 254 189 246 7 arcto 4 {pop} repeat 189 239 171 239 7 arcto 4 {pop} repeat clp gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 131 239 m 124 239 124 247 7 arcto 4 {pop} repeat 124 254 142 254 7 arcto 4 {pop} repeat 149 254 149 246 7 arcto 4 {pop} repeat 149 239 131 239 7 arcto 4 {pop} repeat clp gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 311 239 m 304 239 304 247 7 arcto 4 {pop} repeat 304 254 322 254 7 arcto 4 {pop} repeat 329 254 329 246 7 arcto 4 {pop} repeat 329 239 311 239 7 arcto 4 {pop} repeat clp gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 221 104 m 214 104 214 112 7 arcto 4 {pop} repeat 214 119 232 119 7 arcto 4 {pop} repeat 239 119 239 111 7 arcto 4 {pop} repeat 239 104 221 104 7 arcto 4 {pop} repeat clp gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 221 129 m 214 129 214 137 7 arcto 4 {pop} repeat 214 144 232 144 7 arcto 4 {pop} repeat 239 144 239 136 7 arcto 4 {pop} repeat 239 129 221 129 7 arcto 4 {pop} repeat clp gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 221 344 m 214 344 214 352 7 arcto 4 {pop} repeat 214 359 232 359 7 arcto 4 {pop} repeat 239 359 239 351 7 arcto 4 {pop} repeat 239 344 221 344 7 arcto 4 {pop} repeat clp gs 0.90 setgray fill gr gs col-1 s gr 1.000 setlinewidth % Polyline n 229 119 m 229 129 l gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 149 224 m 164 244 l gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 144 239 m 164 224 l gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 149 219 m 164 219 l gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 149 244 m 164 244 l gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 134 229 m 134 239 l gs 0.90 setgray fill gr gs col-1 s gr % Polyline n 174 229 m 174 239 l gs 0.90 setgray fill gr gs col-1 s gr [6.000000] 0 setdash % Polyline n 214 154 m 184 194 l gs 0.90 setgray fill gr gs col-1 s gr [] 0 setdash n 196.800 183.600 m 184.000 194.000 l 190.400 178.800 l gs 2 setlinejoin col-1 s gr [6.000000] 0 setdash % Polyline n 239 154 m 264 194 l gs 0.90 setgray fill gr gs col-1 s gr [] 0 setdash n 258.912 178.312 m 264.000 194.000 l 252.128 182.552 l gs 2 setlinejoin col-1 s gr [6.000000] 0 setdash % Polyline n 179 279 m 214 324 l gs 0.90 setgray fill gr gs col-1 s gr [] 0 setdash n 207.334 308.915 m 214.000 324.000 l 201.020 313.826 l gs 2 setlinejoin col-1 s gr [6.000000] 0 setdash % Polyline n 269 279 m 234 324 l gs 0.90 setgray fill gr gs col-1 s gr [] 0 setdash n 246.980 313.826 m 234.000 324.000 l 240.666 308.915 l gs 2 setlinejoin col-1 s gr [6.000000] 0 setdash % Polyline n 99 399 m 119 399 l gs 0.90 setgray fill gr gs col-1 s gr [] 0 setdash % Polyline n 99 414 m 119 414 l gs 0.90 setgray fill gr gs col-1 s gr 0.500 setlinewidth % Polyline n 359 439 m 359 64 l 84 64 l 84 439 l clp gs col-1 s gr % Polyline n 271 214 m 264 214 264 222 7 arcto 4 {pop} repeat 264 229 282 229 7 arcto 4 {pop} repeat 289 229 289 221 7 arcto 4 {pop} repeat 289 214 271 214 7 arcto 4 {pop} repeat clp gs 0.90 setgray fill gr gs col-1 s gr 1.000 setlinewidth % Polyline n 289 227 m 307 245 l gs col-1 s gr /Times-Roman findfont 12.00 scalefont setfont 499 89 m gs 1 -1 scale (Cluster 1) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 469 289 m gs 1 -1 scale (Cluster 2) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 599 239 m gs 1 -1 scale (MPP) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 659 144 m gs 1 -1 scale (Bridge/) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 659 159 m gs 1 -1 scale (Router) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 559 319 m gs 1 -1 scale (Cluster 3) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 649 404 m gs 1 -1 scale (Vector SC) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 464 369 m gs 1 -1 scale (PVM:) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 464 384 m gs 1 -1 scale (Uniform) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 464 399 m gs 1 -1 scale (View of) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 464 414 m gs 1 -1 scale (Multiprogrammed) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 464 429 m gs 1 -1 scale (Virtual Machine) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 264 114 m gs 1 -1 scale (Input &) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 264 134 m gs 1 -1 scale (Partitioning) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 279 179 m gs 1 -1 scale (Comp 2) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 124 184 m gs 1 -1 scale (Comp 1) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 264 359 m gs 1 -1 scale (Output &) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 264 374 m gs 1 -1 scale (Display) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 299 214 m gs 1 -1 scale (SPMD) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 129 399 m gs 1 -1 scale (Inter-component comm & sync) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 129 414 m gs 1 -1 scale (Inter-instance comm & sync) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 138 205 m gs 1 -1 scale (SPMD) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 119 469 m gs 1 -1 scale (\(a\) PVM Computation Model) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 489 474 m gs 1 -1 scale (\(b\) PVM Architectural Overview) col-1 show gr showpage $F2psEnd %%EndDocument @endspecial 658 1406 a Fj(Figure)15 b(1:)20 b(PVM)15 b(System)g(Ov)o(erview)90 1544 y(ev)o(en)o(t)g(o)q(ccurrence)h(b)o(y)g (sending)g(them)g(a)f(message)f(with)i(a)f(user-sp)q(eci\014ed)j(tag)c (that)h(the)g(application)90 1600 y(can)f(c)o(hec)o(k)h(for.)k(The)14 b(noti\014cation)h(ev)o(en)o(ts)f(include)i(the)e(exiting)h(of)f(a)g (task,)f(the)h(deletion)i(\(or)d(failure\))90 1657 y(of)i(a)g(host,)f (and)h(the)h(addition)g(of)f(a)g(host.)161 1742 y(PVM)21 b(pro)o(vides)i(routines)f(for)g(pac)o(king)g(and)g(sending)h(messages) f(b)q(et)o(w)o(een)g(tasks.)40 b(The)22 b(core)90 1799 y(comm)o(unication)f(routines)g(include)i(an)d(async)o(hronous)g(send)i (to)d(a)h(single)i(task,)f(and)g(a)f(m)o(ulticast)90 1855 y(to)c(a)h(list)h(of)e(tasks.)25 b(PVM)16 b(transmits)h(messages)f (o)o(v)o(er)g(the)h(underlying)i(net)o(w)o(ork)d(using)i(the)f(fastest) 90 1912 y(mec)o(hanism)h(a)o(v)m(ailable)i(e.g.)27 b(either)19 b(UDP)l(,)e(TCP)g(on)h(net)o(w)o(orks)f(based)h(on)g(the)f(In)o(ternet) h(proto)q(cols,)90 1968 y(or)h(other)g(high-sp)q(eed)j(in)o (terconnects)f(a)o(v)m(ailable)g(b)q(et)o(w)o(een)f(the)g(comm)o (unicating)g(pro)q(cessors.)33 b(One)90 2025 y(example)24 b(of)e(this)h(third)g(option)g(is)g(describ)q(ed)i(in)e(section)h(2.3.) 41 b(Messages)22 b(can)h(b)q(e)g(receiv)o(ed)h(b)o(y)90 2081 y(\014ltering)14 b(on)e(source)h(or)f(message)h(tag)f(\(b)q(oth)g (of)g(whic)o(h)i(ma)o(y)e(b)q(e)h(sp)q(eci\014ed)i(as)d(wildcards\),)i (with)f(either)90 2138 y(blo)q(c)o(king)20 b(or)e(non-blo)q(c)o(king)i (receiv)o(e)g(routines.)30 b(A)19 b(routine)g(can)g(b)q(e)g(called)h (to)e(return)h(information)90 2194 y(ab)q(out)d(receiv)o(ed)h(messages) e(suc)o(h)h(as)f(the)h(source,)g(tag,)f(and)h(size)g(of)g(the)f(data.) 21 b(Message)16 b(bu\013ers)f(are)90 2250 y(allo)q(cated)i(dynamically) l(,)g(thereb)o(y)f(p)q(ermitting)g(messages)f(limited)j(in)e(size)h (only)f(b)o(y)f(nativ)o(e)h(mac)o(hine)90 2307 y(parameters.)i(There)12 b(are)f(routines)h(for)g(creating)f(and)h(managing)g(m)o(ultiple)i (send)e(and)g(receiv)o(e)g(bu\013ers.)90 2363 y(This)j(feature)g(allo)o (ws)f(the)h(user)g(to)f(write)g(PVM)h(math)f(libraries)i(and)f (graphical)g(in)o(terfaces)g(that)f(can)90 2420 y(b)q(e)20 b(called)g(inside)h(other)d(PVM)h(applications)h(without)f(comm)o (unication)h(con\015icts.)32 b(The)19 b(user)g(can)90 2476 y(switc)o(h)c(con)o(text)f(from)h(one)g(set)f(of)h(bu\013ers)f (\(for)g(example)i(used)g(b)o(y)e(the)h(application\))h(to)f(another)f (set)90 2533 y(of)h(bu\013ers)g(\(for)f(example)i(used)g(inside)h(a)e (math)g(library)h(call\).)979 2850 y(6)p eop %%Page: 7 7 7 6 bop 90 196 a Fh(2.3)56 b(Auxiliary)17 b(F)-5 b(eatures)90 311 y Fj(Dynamic)18 b(pro)q(cess)f(groups)g(are)g(la)o(y)o(ered)h(ab)q (o)o(v)o(e)f(the)g(core)h(PVM)f(routines.)26 b(A)18 b(pro)q(cess)f(can) h(b)q(elong)90 367 y(to)c(m)o(ultiple)j(groups,)d(and)h(groups)f(can)h (c)o(hange)f(dynamically)j(at)d(an)o(y)g(time)h(during)h(a)e (computation.)90 423 y(Routines)22 b(are)e(pro)o(vided)i(for)e(tasks)g (to)g(join)i(and)f(lea)o(v)o(e)g(a)f(named)h(group.)37 b(Group)20 b(mem)o(b)q(ers)h(are)90 480 y(uniquely)d(n)o(um)o(b)q(ered) f(from)e(zero)g(to)h(the)g(n)o(um)o(b)q(er)g(of)f(group)h(mem)o(b)q (ers)g(min)o(us)g(one.)22 b(If)16 b(gaps)g(app)q(ear)90 536 y(in)k(this)f(n)o(um)o(b)q(ering)h(due)g(to)e(tasks)g(lea)o(ving)i (the)f(group,)g(PVM)g(attempts)f(to)g(\014ll)j(these)e(gaps)g(with)90 593 y(subsequen)o(tly)f(joining)f(tasks.)22 b(T)l(asks)16 b(can)g(also)g(query)h(for)f(information)g(ab)q(out)g(other)g(group)g (mem-)90 649 y(b)q(ers.)24 b(F)l(unctions)17 b(that)f(logically)i(deal) f(with)g(groups)f(of)g(tasks)g(suc)o(h)h(as)f(broadcast)f(and)i (barrier)g(use)90 706 y(the)e(user's)g(explicitly)j(de\014ned)f(group)e (names)g(as)g(argumen)o(ts.)161 791 y(PVM)f(v)o(ersion)h(3)g(is)h (designed)g(so)e(that)h(nativ)o(e)g(m)o(ultipro)q(cessor)g(calls)h(can) g(b)q(e)f(compiled)i(in)o(to)e(the)90 848 y(source.)28 b(This)19 b(allo)o(ws)f(the)g(fast)f(message-passing)h(of)f(a)h (particular)g(system)g(to)f(b)q(e)i(realized)g(b)o(y)f(the)90 904 y(PVM)c(application.)22 b(Messages)14 b(b)q(et)o(w)o(een)g(t)o(w)o (o)g(no)q(des)h(of)f(a)g(m)o(ultipro)q(cessor)i(use)f(its)f(nativ)o(e)h (message-)90 961 y(passing)21 b(routines,)h(while)g(messages)e (destined)i(for)e(an)g(external)h(host)f(are)g(routed)h(via)g(the)f (user's)90 1017 y(PVM)c(daemon)g(on)h(the)f(m)o(ultipro)q(cessor.)24 b(On)17 b(shared-memory)f(systems)f(the)i(data)f(mo)o(v)o(emen)o(t)f (can)90 1074 y(b)q(e)21 b(implemen)o(ted)g(with)g(a)e(shared)h (bu\013er)g(p)q(o)q(ol)h(and)f(lo)q(c)o(k)g(primitiv)o(es.)36 b(The)20 b(MPP)f(subsystem)h(of)90 1130 y(PVM)d(consists)h(of)f(a)h (daemon)f(that)g(manages)g(the)h(allo)q(cation)h(and)f(deallo)q(cation) h(of)e(no)q(des)h(on)g(the)90 1186 y(m)o(ultipro)q(cessor.)i(This)15 b(daemon)f(is)g(implemen)o(ted)i(in)f(terms)e(of)h(PVM)g(3)f(core)h (routines.)20 b(The)14 b(second)90 1243 y(part)g(of)h(the)f(MPP)h(p)q (ort)f(is)h(a)g(sp)q(ecialized)j(libp)o(vm)e(library)f(for)g(this)g (arc)o(hitecture)g(that)f(con)o(tains)h(the)90 1299 y(fast)f(routing)i (calls)g(b)q(et)o(w)o(een)f(no)q(des)h(of)f(this)h(host.)90 1450 y Fh(2.4)56 b(Implem)o(en)n(tation)90 1565 y Fj(The)13 b(PVM)f(system)g(is)h(comp)q(osed)f(of)g(t)o(w)o(o)g(parts.)18 b(The)12 b(\014rst)g(is)h(a)g(daemon,)f(called)i Fe(pvmd3)f Fj(\(sometimes)90 1621 y(simply)h Fe(pvmd)p Fj(\),)f(that)f(executes)h (on)g(all)g(the)g(computers)f(making)h(up)g(the)g(virtual)g(mac)o (hine.)20 b(Pvmd3)12 b(is)90 1678 y(designed)h(so)f(an)o(y)f(user)h (with)h(a)e(v)m(alid)j(login)e(can)g(install)i(this)e(daemon)g(on)g(a)f (mac)o(hine.)20 b(A)12 b(user)g(wishing)90 1734 y(to)k(use)h(PVM)g (\014rst)f(con\014gures)h(a)g(virtual)g(mac)o(hine)h(b)o(y)f(sp)q (ecifying)h(a)f(host-p)q(o)q(ol)g(list;)h(the)f(daemons)90 1791 y(are)c(started)f(on)h(eac)o(h,)g(and)g(co)q(op)q(erate)g(to)f(em) o(ulate)h(a)g(virtual)h(mac)o(hine.)19 b(The)14 b(PVM)e(application)j (can)90 1847 y(then)h(b)q(e)f(started)g(from)f(a)h(shell)i(command)e (line)i(prompt)e(on)g(an)o(y)g(of)f(these)i(computers.)161 1933 y(The)d(second)h(part)e(of)h(the)h(system)e(is)i(a)f(library)h(of) f(PVM)g(in)o(terface)g(routines)h(\()p Ff(libpvm3.a)p Fj(\).)j(This)90 1989 y(library)12 b(con)o(tains)g(user)g(callable)h (routines)f(for)f(message)h(passing,)g(spa)o(wning)g(pro)q(cesses,)g (co)q(ordinating)90 2046 y(tasks,)k(and)g(mo)q(difying)i(the)e(virtual) h(mac)o(hine.)24 b(Application)19 b(programs)c(m)o(ust)h(b)q(e)h(link)o (ed)h(with)f(this)90 2102 y(library)f(to)f(use)g(PVM.)161 2188 y(The)c(PVM)g(system)g(comp)q(onen)o(ts)g(ha)o(v)o(e)g(b)q(een)h (compiled)i(and)d(tested)g(on)g(the)h(arc)o(hitectures)f(sho)o(wn)90 2244 y(in)22 b(table)f(1.)36 b(This)22 b(table)f(includes)i(hosts)d (ranging)h(from)f(386)g(laptop)h(computers)g(to)f(Cra)o(y)g(C90s)90 2301 y(and)c(MPP)f(computers.)22 b(In)17 b(addition)g(sev)o(eral)f(v)o (endors)g(are)f(supplying)j(and)e(supp)q(orting)h(optimized)90 2357 y(v)o(ersions)e(of)f(PVM)h(for)f(their)h(m)o(ultipro)q(cessor)h (systems)e(including:)22 b(Cra)o(y)14 b(Researc)o(h,)h(IBM,)g(Con)o(v)o (ex,)90 2413 y(In)o(tel,)h(SGI,)f(and)g(DEC.)979 2850 y(7)p eop %%Page: 8 8 8 7 bop 461 201 1058 2 v 460 251 2 50 v 486 236 a Fm(AR)o(CH)p 719 251 V 137 w(Mac)o(hine)p 1219 251 V 348 w(Notes)p 1518 251 V 461 253 1058 2 v 460 303 2 50 v 486 288 a(AFX8)p 719 303 V 149 w(Allian)o(t)12 b(FX/8)p 1219 303 V 1518 303 V 460 353 V 486 338 a(ALPHA)p 719 353 V 112 w(DEC)i(Alpha)p 1219 353 V 286 w(DEC)f(OSF-1)p 1518 353 V 460 402 V 486 387 a(BAL)p 719 402 V 173 w(Sequen)o(t)i(Balance)p 1219 402 V 201 w(D)o(YNIX)p 1518 402 V 460 452 V 486 437 a(BFL)m(Y)p 719 452 V 149 w(BBN)g(Butter\015y)g(TC2000)p 1219 452 V 1518 452 V 460 502 V 486 487 a(BSD386)p 719 502 V 112 w(80386/486)c(Unix)j(b)q(o)o(x)p 1219 502 V 132 w(BSDI)p 1518 502 V 460 552 V 486 537 a(CM2)p 719 552 V 170 w(Thinking)f(Mac)o (hines)h(CM2)p 1219 552 V 50 w(Sun)g(fron)o(t-end)p 1518 552 V 460 602 V 486 587 a(CM5)p 719 602 V 170 w(Thinking)f(Mac)o(hines) h(CM5)p 1219 602 V 1518 602 V 460 651 V 486 637 a(CNVX)p 719 651 V 136 w(Con)o(v)o(ex)f(C-series)p 1219 651 V 1518 651 V 460 701 V 486 686 a(CNVXN)p 719 701 V 105 w(Con)o(v)o(ex)g(C-series)p 1219 701 V 213 w(nativ)o(e)g(mo)q(de)p 1518 701 V 460 751 V 486 736 a(DGA)-5 b(V)p 719 751 V 137 w(Data)13 b(General)h(Aviion)p 1219 751 V 1518 751 V 460 801 V 486 786 a(CRA)m(Y)p 719 801 V 139 w(C-90,)e(YMP)m(,)i(Cra)o (y-2)p 1219 801 V 147 w(UNICOS)p 1518 801 V 460 851 V 486 836 a(CRA)m(YSMP)p 719 851 V 50 w(Cra)o(y)f(S-MP)p 1219 851 V 1518 851 V 460 901 V 486 886 a(HP300)p 719 901 V 137 w(HP-9000)g(mo)q(del)f(300)p 1219 901 V 144 w(HPUX)p 1518 901 V 460 950 V 486 935 a(HPP)m(A)p 719 950 V 144 w(HP-9000)h(P)m(A-RISC)p 1219 950 V 1518 950 V 460 1000 V 486 985 a(I860)p 719 1000 V 181 w(In)o(tel)h(iPSC/860)p 1219 1000 V 226 w(link)e(-lrp)q(c)p 1518 1000 V 460 1050 V 486 1035 a(IPSC2)p 719 1050 V 142 w(In)o(tel)i(iPSC/2)f(386)g(host)p 1219 1050 V 103 w(SysV)p 1518 1050 V 460 1100 V 486 1085 a(KSR1)p 719 1100 V 152 w(Kendall)g(Square)i(KSR-1)p 1219 1100 V 87 w(OSF-1)p 1518 1100 V 460 1150 V 486 1135 a(NEXT)p 719 1150 V 139 w(NeXT)p 1219 1150 V 1518 1150 V 460 1199 V 486 1184 a(PGON)p 719 1199 V 135 w(In)o(tel)f(P)o(aragon)p 1219 1199 V 253 w(link)e(-lrp)q(c)p 1518 1199 V 460 1249 V 486 1234 a(PMAX)p 719 1249 V 131 w(DECstation)h(3100,)g(5100)p 1219 1249 V 79 w(Ultrix)p 1518 1249 V 460 1299 V 486 1284 a(RS6K)p 719 1299 V 152 w(IBM/RS6000)p 1219 1299 V 259 w(AIX)p 1518 1299 V 460 1349 V 486 1334 a(R)m(T)p 719 1349 V 201 w(IBM)h(R)m(T)p 1219 1349 V 1518 1349 V 460 1399 V 486 1384 a(SGI)p 719 1399 V 188 w(Silicon)f(Graphics)g (IRIS)p 1219 1399 V 107 w(link)f(-lsun)p 1518 1399 V 460 1448 V 486 1434 a(SUN3)p 719 1448 V 153 w(Sun)i(3)p 1219 1448 V 396 w(SunOS)p 1518 1448 V 460 1498 V 486 1483 a(SUN4)p 719 1498 V 153 w(Sun)g(4,)f(SP)m(AR)o(Cstation)p 1219 1498 V 1518 1498 V 460 1548 V 486 1533 a(SYMM)p 719 1548 V 129 w(Sequen)o(t)i(Symmetry)p 1219 1548 V 1518 1548 V 460 1598 V 486 1583 a(TITN)p 719 1598 V 153 w(Starden)o(t)f(Titan)p 1219 1598 V 1518 1598 V 460 1648 V 486 1633 a(UV)-5 b(AX)p 719 1648 V 140 w(DEC)14 b(MicroV)-5 b(AX)p 1219 1648 V 1518 1648 V 461 1649 1058 2 v 562 1727 a Fj(T)l(able)16 b(1:)j(Arc)o(hitectures)d(tested)f(with)h(PVM)f (3.)90 1855 y Fi(3)69 b(P)n(erformance)23 b(Considerations)90 1986 y Fj(PVM)c(and)h(similar)h(systems)e(normally)h(op)q(erate)f(in)h (general)g(purp)q(ose)g(net)o(w)o(ork)o(ed)f(en)o(vironmen)o(ts,)90 2042 y(where)i(neither)h(the)g(CPU's)e(of)h(the)g(individual)j(mac)o (hines)e(nor)f(the)g(in)o(terconnection)h(net)o(w)o(ork)e(is)90 2099 y(dedicated.)43 b(As)23 b(a)f(result,)i(ra)o(w)e(p)q(erformance)h (or)f(sp)q(eedup)i(of)e(a)g(giv)o(en)h(application)h(is)f(hard)g(to)90 2155 y(measure.)j(Ev)o(en)18 b(in)g(a)f(dedicated)h(net)o(w)o(ork)o(ed) f(en)o(vironmen)o(t,)h(with)f(no)h(external)f(use,)h(the)g(ab)q(o)o(v)o (e)e(is)90 2212 y(true)g(since)h(op)q(erating)f(system)f(activit)o(y)l (,)h(windo)o(w)g(and)g(\014lesystem)g(o)o(v)o(erheads,)f(and)h (administrativ)o(e)90 2268 y(net)o(w)o(ork)22 b(tra\016c)g(can)g(con)o (tribute)h(to)f(deviated)i(measuremen)o(ts.)42 b(If)23 b(these)g(factors)e(are)i(ignored,)90 2325 y(net)o(w)o(ork)12 b(computing)i(systems)e(b)q(eha)o(v)o(e)h(in)h(a)f(manner)g(that)g(is)g (reasonably)g(predictable)i([11)o(].)k(In)14 b(suc)o(h)90 2381 y(a)k(scenario,)h(most)f(of)g(the)g(fo)q(cus)h(is)g(on)f(comm)o (unications)h(o)o(v)o(erhead;)g(CPU)f(optimizations)i(can)e(b)q(e)90 2437 y(approac)o(hed)c(indep)q(enden)o(tly)i(using)f(traditional)f (metho)q(ds,)g(since)h(parallelism)g(gran)o(ularit)o(y)f(is)g(at)f(the) 90 2494 y(pro)q(cess)i(lev)o(el.)979 2850 y(8)p eop %%Page: 9 9 9 8 bop 379 201 1222 2 v 378 258 2 57 v 408 241 a Fj(Net)o(w)o(ork)p 603 258 V 367 w(Message)15 b(Length)p 1600 258 V 379 260 1222 2 v 378 316 2 57 v 440 299 a(T)o(yp)q(e)p 603 316 V 104 w(0)p 711 316 V 68 w(128)p 829 316 V 49 w(512)p 947 316 V 49 w(1K)p 1055 316 V 50 w(4K)p 1163 316 V 49 w(16K)p 1293 316 V 50 w(64K)p 1424 316 V 81 w(1M)p 1600 316 V 379 318 1222 2 v 378 374 2 57 v 404 357 a(Ethernet)p 603 374 V 50 w(1.2)p 711 374 V 54 w(1.5)p 829 374 V 59 w(2.1)p 947 374 V 54 w(3.2)p 1055 374 V 49 w(7.2)p 1163 374 V 48 w(24.5)p 1293 374 V 49 w(82.3)p 1424 374 V 49 w(1211.2)p 1600 374 V 379 376 1222 2 v 378 432 2 57 v 434 415 a(FDDI)p 603 432 V 79 w(1.2)p 711 432 V 54 w(1.5)p 829 432 V 59 w(1.9)p 947 432 V 54 w(2.5)p 1055 432 V 49 w(5.9)p 1163 432 V 48 w(16.1)p 1293 432 V 49 w(60.3)p 1424 432 V 60 w(665.7)p 1600 432 V 379 434 1222 2 v 562 514 a(T)l(able)h(2:)j(Data)14 b(transfer)h(times)g(\(milliseconds\))p 528 676 925 2 v 527 733 2 57 v 563 716 a(Op)q(eration)p 798 733 V 237 w(No.)k(of)c(Pro)q(cs)p 1452 733 V 528 734 925 2 v 527 791 2 57 v 612 774 a(T)o(yp)q(e)p 798 791 V 128 w(2)p 906 791 V 96 w(4)p 1037 791 V 108 w(8)p 1168 791 V 96 w(16)p 1298 791 V 96 w(32)p 1452 791 V 528 792 925 2 v 527 849 2 57 v 593 832 a(Barrier)p 798 849 V 90 w(2.2)p 906 849 V 49 w(10.5)p 1037 849 V 49 w(28.1)p 1168 849 V 48 w(53.2)p 1298 849 V 49 w(107.2)p 1452 849 V 528 850 925 2 v 527 907 2 57 v 564 890 a(Broadcast)p 798 907 V 60 w(3.2)p 906 907 V 60 w(5.5)p 1037 907 V 61 w(15.9)p 1168 907 V 48 w(28.5)p 1298 907 V 60 w(65.9)p 1452 907 V 528 909 925 2 v 527 965 2 57 v 553 948 a(Opt.)20 b(Bcast)p 798 965 V 49 w(1.2)p 906 965 V 60 w(3.2)p 1037 965 V 61 w(11.5)p 1168 965 V 48 w(18.2)p 1298 965 V 60 w(35.1)p 1452 965 V 528 967 925 2 v 527 1046 a(T)l(able)c(3:)k(Global)c (op)q(eration)f(times)g(\(milliseconds\))90 1236 y Fh(3.1)56 b(Ra)n(w)19 b(Comm)n(unication)e(P)n(erformance)90 1351 y Fj(Giv)o(en)22 b(the)f(ab)q(o)o(v)o(e)f(factors,)h(p)q(erformance)h (ev)m(aluation)g(of)f(PVM)f(and)i(similar)g(systems)e(normally)90 1408 y(b)q(egins)c(with)f(an)f(analysis)i(of)e(data)g(transfer)g (costs.)19 b(The)c(time)g(required)h(for)e(pro)q(cesses)h(to)f(exc)o (hange)90 1464 y(messages)f(is)i(dep)q(enden)o(t)g(on)f(sev)o(eral)g (factors,)e(including)17 b(the)d(host)f(mac)o(hines,)h(net)o(w)o(ork)f (sp)q(eeds,)i(and)90 1521 y(most)e(predominan)o(tly)l(,)i(the)f (message)g(size.)21 b(In)14 b(T)l(able)h(2)f(b)q(elo)o(w,)g(w)o(e)g (sho)o(w)g(message)f(passing)i(times)f(in)90 1577 y(milliseconds)20 b(for)c(PVM,)g(for)g(v)m(arying)h(message)f(lengths)i(and)f(t)o(w)o(o)e (di\013eren)o(t)i(net)o(w)o(ork)f(t)o(yp)q(es;)h(these)90 1633 y(exp)q(erimen)o(ts)f(w)o(ere)f(conducted)h(on)f(unloaded)i(w)o (orkstations)d(rated)g(at)h(40-50)f(MIPS.)161 1719 y(Tw)o(o)e(imp)q (ortan)o(t)i(observ)m(ations)g(p)q(ertain)g(to)f(T)l(able)i(2.)k(The)14 b(\014rst)g(concerns)g(latency)l(,)g(or)g(the)f(mini-)90 1775 y(mal)g(time)g(required)h(to)e(send)h(a)f(zero-length)i(message.)k (Irresp)q(ectiv)o(e)c(of)e(net)o(w)o(ork)g(t)o(yp)q(e,)h(this)g (measure)90 1832 y(is)j(of)g(the)g(order)f(of)h(a)f(millisecond,)k(and) d(dep)q(ends)h(largely)g(on)e(the)h(sp)q(eed)h(of)f(the)g(host)f(mac)o (hines,)h(as)90 1888 y(a)h(signi\014can)o(t)i(fraction)f(of)f(this)h(o) o(v)o(erhead)f(is)i(incurred)g(in)f(within-host)h(proto)q(col)e(pro)q (cessing.)29 b(The)90 1945 y(second)20 b(factor)f(is)h(throughput.)33 b(As)20 b(the)g(table)g(sho)o(ws,)g(the)g(Ethernet)f(net)o(w)o(ork)g (could)i(b)q(e)f(driv)o(en)90 2001 y(at)e(near)h(theoretical)g(p)q(eak) g(capacit)o(y)g(for)f(large)g(messages;)i(similar)g(ratios)e(are)g (conjectured)h(to)f(b)q(e)90 2058 y(p)q(ossible)f(for)e(fast)f(net)o(w) o(orks)g(with)h(increases)i(in)f(host)e(sp)q(eeds)i(and)g(proto)q(col)f (optimizations.)161 2143 y(Apart)21 b(from)h(p)q(oin)o(t-to-p)q(oin)o (t)h(data)f(transfer,)g(group)g(comm)o(unication)h(facilities)i(are)d (also)g(an)90 2200 y(imp)q(ortan)o(t)c(measure)g(of)g(comm)o (unications)h(p)q(erformance.)30 b(T)l(able)19 b(3)f(sho)o(ws)f(times)i (in)g(milliseconds)90 2256 y(for)h(barrier)h(sync)o(hronization)h(and)f (broadcasting)g(\(1K)f(messages\))g(using)i(the)f(release)g(v)o(ersion) g(of)90 2313 y(PVM)e(that)g(uses)g(naiv)o(e)h(but)g(robust)f (algorithms,)h(as)f(y)o(et)g(un)o(tuned)h(for)e(optimalit)o(y)l(.)34 b(Also)19 b(sho)o(wn)90 2369 y(in)e(T)l(able)h(3)e(is)h(an)f(exp)q (erimen)o(tal)i(m)o(ulticast)f(\(1K)f(messages\))f(facilit)o(y)j(that)e (exploits)h(the)g(broadcast)90 2426 y(medium)f(of)f(net)o(w)o(orks)f (suc)o(h)i(as)e(Ethernet.)979 2850 y(9)p eop %%Page: 10 10 10 9 bop 90 196 a Fh(3.2)56 b(Impro)n(ving)17 b(Comm)n(unications)f(P)n (erformance)90 311 y Fj(As)f(sho)o(wn)f(in)i(the)e(previous)i(section,) f(comm)o(unication)g(throughput)g(approac)o(hing)f(the)h(medium)h(ca-) 90 367 y(pacit)o(y)d(can)f(b)q(e)h(ac)o(hiev)o(ed)h(in)f(PVM,)f(pro)o (vided)h(large)f(messages)g(are)h(transferred.)18 b(This)13 b(has)f(also)h(b)q(een)90 423 y(demonstrated)18 b(in)i(situations)g(in) o(v)o(olving)g(m)o(ultiple,)h(sim)o(ultaneous)f(message)e(passing;)j (i.e.)32 b(a)18 b(high)90 480 y(p)q(ercen)o(tage)13 b(of)g(the)g Fe(aggr)n(e)n(gate)g Fj(bandwidth)h(of)e(the)h(medium)h(is)g (utilizable)i(b)o(y)d(PVM)f(application)j(pro-)90 536 y(cesses.)21 b(The)16 b(factor)e(that)h(is)h(di\016cult)h(to)e (optimize)h(ho)o(w)o(ev)o(er,)f(is)h(latency)l(,)g(implying)h(p)q(o)q (or)e(e\016ciency)90 593 y(and)g(sp)q(eedup)i(when)f(message)f(exc)o (hanges)g(are)g(short)f(and)i(in)o(termitten)o(t.)161 678 y(One)d(approac)o(h)g(that)f(is)i(under)g(in)o(v)o(estigation)f(is) h(to)e(enable)j(PVM)d(op)q(eration)i(directly)g(ab)q(o)o(v)o(e)f(the)90 735 y(data)g(link)h(la)o(y)o(er)f(\(rather)g(than)g(the)g(transp)q(ort) f(la)o(y)o(er\);)h(a)g(feasible)i(option)f(when)f(op)q(erating)h(in)g (a)f(lo)q(cal)90 791 y(net)o(w)o(ork)j(en)o(vironmen)o(t.)27 b(An)18 b(exp)q(erimen)o(tal)h(v)o(ersion)e(of)g(PVM)g(that)g(op)q (erates)g(in)h(this)g(fashion)g(has)90 848 y(b)q(een)h(designed,)g(and) e(latency)h(impro)o(v)o(emen)o(ts)f(of)h(the)f(order)g(of)g(50\045)g (ha)o(v)o(e)g(b)q(een)i(observ)o(ed.)27 b(W)l(ork)90 904 y(is)18 b(in)g(progress)f(to)f(in)o(tegrate)h(this)h(in)o(to)g(the) f(release)h(v)o(ersion)g(of)e(PVM,)h(incorp)q(orating)h(in)o (telligence)90 961 y(to)g(determine)h(on)f(a)g Ff(send)p Fj(-b)o(y-)p Ff(send)f Fj(basis)i(when)g(it)f(is)h(appropriate)f(to)g (utilize)i(this)f(data)f(transfer)90 1017 y(mec)o(hanism.)90 1189 y Fi(4)69 b(Scien)n(ti\014c)20 b(Sup)r(ercomputing)90 1320 y Fj(PVM)15 b(is)h(b)q(eing)g(increasingly)h(adopted)e(at)g(n)o (umerous)g(institutions)i(w)o(orldwide)f(for)e(distributed)j(sci-)90 1376 y(en)o(ti\014c)f(computing.)k(Man)o(y)15 b(scien)o(ti\014c,)h (industrial,)h(and)e(medical)i(applications)g(are)e(b)q(eing)h(deplo)o (y)o(ed)90 1433 y(under)j(PVM)g(in)g(clustered)h(w)o(orkstation)d(net)o (w)o(orks.)30 b(An)19 b(imp)q(ortan)o(t)f(motiv)m(ation)h(\(for)f(the)g (use)h(of)90 1489 y(PVM)e(and)h(other)f(cluster)i(computing)f (systems\))f(is)h(price)h(p)q(erformance)e({)h(generally)l(,)h (clusters)f(are)90 1546 y(ab)q(out)f(10)f(times)h(as)f(cost-e\013ectiv) o(e)h(as)g(sup)q(ercomputers)g(for)f(a)h(giv)o(en)g(p)q(erformance)g (capabilit)o(y)l(,)i(for)90 1602 y(sev)o(eral)g(classes)g(of)g (applications.)33 b(Other)19 b(motiv)m(ations)g(for)f(the)h(increasing) h(use)g(of)e(PVM)h(include)90 1659 y(a)e(high)h(degree)g(of)f(p)q (ortabilit)o(y)h(and)g(a)f(straigh)o(tforw)o(ard,)f(robust)h(in)o (terface)g(that)g(is)h(w)o(ell)g(suited)h(for)90 1715 y(scien)o(ti\014c)e(application)g(dev)o(elopmen)o(t.)161 1801 y(Three)22 b(computational)h(grand)e(c)o(hallenges)j(b)q(eing)g (addressed)e(b)o(y)g(ORNL)i(as)e(w)o(ell)h(as)f(sev)o(eral)90 1857 y(other)c(applications)h(imp)q(ortan)o(t)f(to)f(DOE's)h(mission)h (ha)o(v)o(e)e(b)q(een)j(con)o(v)o(erted)d(to)h(PVM.)f(The)h(grand)90 1913 y(c)o(hallenges)k(are)f(in)g(groundw)o(ater)f(transp)q(ort)g(to)g (assist)h(in)h(w)o(aste)d(site)j(clean)f(up,)i(\014rst)d(principles)90 1970 y(materials)14 b(calculations)i(to)d(assist)h(in)h(the)f(design)h (of)e(new)h(allo)o(ys)h(and)f(ceramics,)g(and)g(global)h(climate)90 2026 y(mo)q(deling)j(to)f(predict)h(the)f(e\013ects)f(of)h(things)g (suc)o(h)h(as)e(ozone)h(depletion,)i(and)e(global)h(w)o(arming.)24 b(In)90 2083 y(the)d(next)h(sections)f(w)o(e)g(brie\015y)i(describ)q(e) g(these)e(three)g(applications)i(and)f(the)f(e\013ort)f(in)o(v)o(olv)o (ed)i(in)90 2139 y(con)o(v)o(erting)15 b(them)g(to)g(PVM.)90 2290 y Fh(4.1)56 b(Groundw)n(ater)90 2405 y Fj(ORNL)16 b(is)f(part)f(of)h(a)f(consortium)h(of)f(groundw)o(ater)g(researc)o (hers)g(whose)h(goal)f(is)i(to)e(dev)o(elop)h(state)f(of)90 2461 y(the)k(art)e(parallel)k(mo)q(dels)e(for)f(high)i(p)q(erformance)e (parallel)j(computers.)27 b(These)18 b(computer)f(mo)q(dels)90 2518 y(will)24 b(enable)f(researc)o(hers)e(to)h(mo)q(del)h(\015o)o(w)e (with)h(higher)h(resolution)g(and)f(greater)f(accuracy)h(than)967 2850 y(10)p eop %%Page: 11 11 11 10 bop 90 196 a Fj(previously)22 b(p)q(ossible.)37 b(As)20 b(a)g(\014rst)g(step)g(researc)o(hers)g(at)g(ORNL)i(ha)o(v)o(e) e(dev)o(elop)q(ed)i(a)e(parallel)h(3-D)90 252 y(\014nite)g(elemen)o(t)g (co)q(de)g(called)h(PFEM)d(that)h(mo)q(dels)h(w)o(ater)e(\015o)o(w)h (through)g(saturated-unsaturated)90 309 y(media.)h(PFEM)14 b(solv)o(es)h(the)g(system)g(of)g(equations)652 425 y Fd(F)693 394 y(@)s(h)p 693 415 53 2 v 698 456 a(@)s(t)763 425 y Fj(=)e Fg(r)d(\001)g Fj([)p Fd(K)934 432 y Fc(s)951 425 y Fd(K)990 432 y Fc(r)1009 425 y Fj(\()p Fg(r)p Fd(h)g Fj(+)g Fg(r)p Fd(z)r Fj(\)])g(+)g Fd(q)r(;)90 533 y Fj(where)17 b Fd(h)f Fj(is)h(the)f(pressure)h(head,)f Fd(t)h Fj(is)g(time,)g Fd(K)929 540 y Fc(s)963 533 y Fj(is)g(the)f(saturated)g(h)o(ydraulic)h (conductivit)o(y)h(tensor,)90 590 y Fd(K)129 597 y Fc(r)162 590 y Fj(is)d(the)g(relativ)o(e)g(h)o(ydraulic)h(conductivit)o(y)g(or)e (relativ)o(e)i(p)q(ermeabilit)o(y)l(,)g Fd(z)h Fj(is)e(the)g(p)q(oten)o (tial)g(head,)g Fd(q)90 646 y Fj(is)j(the)f(source/sink)h(and)f Fd(F)24 b Fj(is)18 b(the)f(w)o(ater)f(capacit)o(y)h(\()p Fd(F)23 b Fj(=)16 b Fd(d\022)q(=dh)p Fj(,)h(with)h Fd(\022)g Fj(the)g(moisture)f(con)o(ten)o(t\))90 703 y(after)d(neglecting)j(the)e (compressibilit)o(y)j(of)c(the)i(w)o(ater)e(and)h(of)g(the)g(media.)161 788 y(PFEM)f(w)o(as)f(parallelized)18 b(b)o(y)d(partitioning)h(the)e (ph)o(ysical)i(domain)g(in)o(to)e Fd(p)h Fj(pieces)h(and)f(statically) 90 845 y(assigning)21 b(one)g(sub)q(domain)h(to)d(eac)o(h)i(of)f Fd(p)g Fj(tasks.)35 b(The)21 b(presen)o(t)g(v)o(ersion)f(uses)h(only)g (static)g(load-)90 901 y(balancing)c(and)f(relies)i(on)e(the)g(user)g (to)f(de\014ne)i(the)f(partitioning,)h(but)f(other)g(consortium)g(mem)o (b)q(ers)90 958 y(are)21 b(w)o(orking)f(on)h(w)o(a)o(ys)f(to)g (automate)g(these)h(op)q(erations.)37 b(A)o(t)20 b(eac)o(h)h(timestep,) i(eac)o(h)e(task)f(solv)o(es)90 1014 y(the)i(ab)q(o)o(v)o(e)f(equation) h(for)f(its)g(sub)q(domain)i(and)f(then)g(exc)o(hanges)f(its)h(b)q (oundary)g(region)g(with)g(its)90 1070 y(neigh)o(b)q(oring)f(regions.) 34 b(Originally)22 b(dev)o(elop)q(ed)f(on)f(an)f(In)o(tel)i(iPSC/860)e (m)o(ultipro)q(cessor,)i(a)e(PVM)90 1127 y(v)o(ersion)11 b(of)g(PFEM)f(w)o(as)h(straigh)o(tforw)o(ard)d(to)j(create)g(requiring) h(an)f(undergraduate)g(studen)o(t)g(less)h(than)90 1183 y(3)i(w)o(eeks)h(to)e(complete.)21 b(Presen)o(tly)l(,)15 b(the)f(PVM)g(v)o(ersion)h(of)f(PFEM)g(has)g(b)q(een)i(deliv)o(ered)g (to)e(mem)o(b)q(ers)90 1240 y(of)i(the)g(groundw)o(ater)f(consortium)h (for)f(v)m(alidation)j(testing)e(using)h(net)o(w)o(orks)e(of)h(w)o (orkstations)e(while)90 1296 y(they)f(a)o(w)o(ait)g(the)g(a)o(v)m (ailabilit)o(y)j(of)d(parallel)h(sup)q(ercomputers.)20 b(No)13 b(p)q(erformance)h(tests)f(had)g(b)q(een)i(done)90 1353 y(at)g(the)g(time)g(of)g(this)h(writing.)90 1503 y Fh(4.2)56 b(Materials)90 1618 y Fj(ORNL)21 b(material)f(scien)o (tists)h(are)f(dev)o(eloping)h(algorithms)f(for)f(studying)i(the)f(ph)o (ysical)h(prop)q(erties)90 1674 y(of)f(complex)g(substitutionally)i (disordered)f(materials.)34 b(A)20 b(few)g(imp)q(ortan)o(t)f(examples)i (of)f(ph)o(ysical)90 1731 y(systems)f(and)g(situations)h(in)g(whic)o(h) g(substitutional)h(disorder)f(pla)o(ys)f(a)g(critical)i(role)f(in)g (determin-)90 1787 y(ing)h(material)f(prop)q(erties)h(include:)32 b(high-strength)21 b(allo)o(ys,)h(high-temp)q(erature)f(sup)q (erconductors,)90 1843 y(magnetic)d(phase)f(transitions,)h(and)g (metal/insulator)g(transitions.)27 b(One)18 b(of)f(the)g(algorithms)h (b)q(eing)90 1900 y(dev)o(elop)q(ed)d(is)f(an)g(implemen)o(tation)g(of) g(the)f(Korringa,)h(Kohn)g(and)f(Rostok)o(er)g(coheren)o(t)h(p)q(oten)o (tial)g(ap-)90 1956 y(pro)o(ximation)k(\(KKR-CP)l(A\))g(metho)q(d)g (for)f(calculating)j(the)d(electronic)j(prop)q(erties,)e(energetics)h (and)90 2013 y(other)14 b(ground)f(state)h(prop)q(erties)g(of)g (substitutionally)i(disordered)e(allo)o(ys.)20 b(The)14 b(KKR-CP)l(A)i(metho)q(d)90 2069 y(extends)c(the)f(usual)i(implemen)o (tation)f(of)f(densit)o(y)h(functional)h(theory)e(to)g (substitutionally)i(disordered)90 2126 y(materials.)20 b(In)15 b(this)h(sense)f(it)g(is)h(a)f(completely)h(\014rst)e (principles)k(theory)d(of)f(the)h(prop)q(erties)h(of)e(substi-)90 2182 y(tutionally)19 b(disordered)f(materials)g(requiring)g(as)g(input) g(only)g(the)g(atomic)f(n)o(um)o(b)q(ers)h(of)f(the)g(sp)q(ecies)90 2239 y(making)e(up)h(the)f(solid.)161 2324 y(Starting)k(with)i(the)f (original)h(20,000)d(line)k(serial)f(KKR-CP)l(A)g(co)q(de,)h(it)e (required)h(ab)q(out)f(three)90 2381 y(mon)o(ths)h(to)g(pro)q(duce)i(a) e(PVM)g(v)o(ersion)h(of)g(the)f(co)q(de.)40 b(After)21 b(pro\014ling)i(the)f(co)q(de)g(and)g(studying)90 2437 y(the)f(p)q(oten)o(tial)h(sites)g(for)f(coarse-grain)g(parallelism,)j (a)d(master/sla)o(v)o(e)f(paradigm)i(w)o(as)e(c)o(hosen)i(for)90 2494 y(implemen)o(tation.)f(The)16 b(master)e(task)h(p)q(erforms)g(all) h(the)f(I/O)h(and)g(co)q(ordinates)f(all)h(the)g(sla)o(v)o(es.)k(The)90 2550 y(sla)o(v)o(e)13 b(tasks)g(p)q(erform)g(the)g(ma)s(jorit)o(y)f(of) h(the)g(computational)h(w)o(ork.)k(This)c(split)g(reduced)g(the)g (amoun)o(t)967 2850 y(11)p eop %%Page: 12 12 12 11 bop 90 196 a Fj(of)20 b(memory)g(an)o(y)g(one)g(task)f(required)j (and)e(also)h(allo)o(w)o(ed)f(the)h(master)e(task)h(to)f(do)i(dynamic)g (load)90 252 y(balancing.)g(Sev)o(eral)13 b(megab)o(ytes)g(of)g(data)g (is)g(transferred)g(b)q(et)o(w)o(een)h(master)e(and)i(sla)o(v)o(es,)f (but)g(no)h(data)90 309 y(is)g(shared)f(b)q(et)o(w)o(een)h(sla)o(v)o (es.)19 b(Moreo)o(v)o(er)12 b(the)i(data)e(transfers)h(are)g(organized) h(as)f(a)g(few)g(large)g(messages)90 365 y(rather)i(than)g(man)o(y)f (small)i(ones)g(to)e(reduce)i(message)f(latency)h(o)o(v)o(erhead.)161 451 y(Using)d(PVM)f(the)g(KKR-CP)l(A)i(co)q(de)g(is)f(able)g(to)f(ac)o (hiev)o(e)h(o)o(v)o(er)f(200)f(M\015ops)i(utilizing)i(a)d(net)o(w)o (ork)f(of)90 507 y(ten)h(IBM)g(RS/6000)g(\(6)f(mo)q(del)i(530's)d(+)j (4)e(mo)q(del)i(320's\))e(w)o(orkstations;)g(estimated)h(to)f(b)q(e)i (ab)q(out)f(82\045)90 563 y(of)i(the)h(maxim)o(um)g(ac)o(hiev)m(able)h (for)f(this)g(co)q(de.)20 b(Giv)o(en)15 b(this)g(capabilit)o(y)l(,)h (the)f(KKR-CP)l(A)h(application)90 620 y(is)23 b(b)q(eing)g(used)g(as)f (a)g(researc)o(h)g(co)q(de)h(to)f(solv)o(e)g(imp)q(ortan)o(t)g (materials)h(science)h(problems.)41 b(Since)90 676 y(its)21 b(dev)o(elopmen)o(t)h(the)f(KKR-CP)l(A)h(co)q(de)g(has)e(b)q(een)i (used)g(to)e(compare)h(the)g(electronic)h(structure)90 733 y(of)c(t)o(w)o(o)f(high)j(temp)q(erature)e(sup)q(erconductors,)i (Ba\(Bi)1073 740 y Fc(:)p Fb(3)1103 733 y Fj(Pb)1159 740 y Fc(:)p Fb(7)1189 733 y Fj(\)O)1242 740 y Fb(3)1280 733 y Fj(and)f(\(Ba)1445 740 y Fc(:)p Fb(6)1474 733 y Fj(K)1509 740 y Fc(:)p Fb(4)1539 733 y Fj(\)BiO)1636 740 y Fb(3)1656 733 y Fj(,)g(to)f(explain)90 789 y(anomalous)g(exp)q (erimen)o(tal)i(results)e(from)g(a)g(high)h(strength)f(allo)o(y)l(,)h (NiAl,)h(and)f(to)e(study)i(the)f(e\013ect)90 846 y(of)d(magnetic)h(m)o (ultila)o(y)o(ers)g(in)h(CrV)e(and)h(CrMo)e(allo)o(ys)i(for)f(their)i (p)q(ossible)g(use)f(in)g(magnetic)g(storage)90 902 y(devices.)161 988 y(The)c(PVM)g(KKR-CP)l(A)h(co)q(de)g(has)f(also)g(b)q(een)i(used)e (to)g(test)g(concepts)g(in)h(distributed)h(computing.)90 1044 y(F)l(or)i(example,)i(with)e(help)i(from)e(Cra)o(y)g(Researc)o(h)h (the)g(KKR-CP)l(A)h(co)q(de)f(w)o(as)f(run)h(on)f(a)h(net)o(w)o(ork)e (of)90 1101 y(C90)d(and)g(YMP)g(m)o(ultipro)q(cessors.)20 b(Using)13 b(27)f(pro)q(cessors)g(scattered)g(across)g(sev)o(eral)g (sites,)h(the)g(Cra)o(y-)90 1157 y(based)18 b(PVM)f(w)o(as)f(able)j(to) d(ac)o(hiev)o(e)i(an)g(a)o(v)o(erage)e(aggregate)g(p)q(erformance)i(of) f(o)o(v)o(er)f(9)h(G\015ops)g(while)90 1214 y(calculating)g(sup)q (erconductor)f(prop)q(erties.)21 b(In)16 b(a)f(test)f(of)h(the)h(p)q (ortabilit)o(y)g(of)f(PVM,)f(the)i(KKR-CP)l(A)90 1270 y(co)q(de)i(w)o(as)e(run)i(across)e(a)h(virtual)h(mac)o(hine)h(comp)q (osed)e(of)g(t)o(w)o(o)f(In)o(tel)i(P)o(aragons,)e(a)h(CM-5,)g(an)g(In) o(tel)90 1326 y(i860,)d(and)h(IBM)f(w)o(orkstations.)19 b(These)14 b(hosts)g(are)g(geographically)i(distributed)g(at)e(sev)o (eral)g(sites.)20 b(In)90 1383 y(this)13 b(test)e(the)i(master)e(task)h (ran)g(on)g(one)g(of)g(the)g(IBM)h(w)o(orkstations)d(and)j(sla)o(v)o(e) f(tasks)f(ran)h(on)h(no)q(des)f(of)90 1439 y(the)i(v)m(arious)g(MPP)f (hosts.)19 b(The)14 b(p)q(erformance)g(of)f(this)h(test)g(w)o(as)e (consisten)o(t)i(with)g(the)g(small)h(n)o(um)o(b)q(er)90 1496 y(of)g(no)q(des)h(used)f(on)g(eac)o(h)h(host.)90 1647 y Fh(4.3)56 b(Climate)90 1761 y Fj(A)13 b(collab)q(oration)g(of)f (researc)o(hers)g(from)g(ORNL,)i(Argonne)e(National)h(Lab,)g(and)g(the) f(National)h(Cen)o(ter)90 1818 y(for)e(A)o(tmospheric)g(Researc)o(h)h (\(NCAR\))f(w)o(as)f(formed)h(to)g(address)g(atmospheric)g(mo)q (deling.)20 b(Their)12 b(\014rst)90 1874 y(task)i(has)h(b)q(een)h(to)e (dev)o(elop)i(parallel)g(algorithms)f(and)g(implemen)o(t)h(the)f(recen) o(tly)g(dev)o(elop)q(ed)i(v)o(ersion)90 1931 y(of)h(the)g(NCAR)h(Comm)o (unit)o(y)f(Climate)h(Mo)q(del)g(\(CCM2\))d(in)j(a)f(message)g(passing) h(v)o(ersion)f(for)g(In)o(tel)90 1987 y(parallel)d(sup)q(ercomputers.) 20 b(This)14 b(will)h(b)q(e)f(one)g(of)f(the)g(\014rst)g(co)q(des)h(to) f(run)h(on)f(the)g(In)o(tel)i(P)o(aragon)d(and)90 2044 y(ORNL)19 b(will)h(supp)q(ort)e(its)h(use)f(b)o(y)g(the)g(climate)h (researc)o(h)f(comm)o(unit)o(y)g(using)h(the)f(P)o(aragon.)28 b(W)l(ork)90 2100 y(no)o(w)14 b(in)i(progress)d(seeks)i(to)f(impro)o(v) o(e)h(on)f(the)h(parallel)h(e\016ciency)g(of)e(the)h(co)q(de)g(and)g (to)f(dev)o(elop)h(more)90 2157 y(comprehensiv)o(e)h(mo)q(dels)g(with)g (impro)o(v)o(ed)f(capabilities.)161 2242 y(The)h(climate)h(mo)q(del)g (solv)o(es)f(the)g(nonlinear)i(PDE's)d(for)h(mass,)f(momen)o(tum)h(and) g(energy)g(whic)o(h)90 2299 y(go)o(v)o(ern)j(the)h(general)g (circulation)i(of)d(the)h(atmosphere.)34 b(Horizon)o(tal)20 b(adv)o(ection)g(couples)h(columns)90 2355 y(of)16 b(the)h(atmosphere)g (while)h(in)g(the)f(v)o(ertical)g(direction)h(a)f(large)g(n)o(um)o(b)q (er)g(of)f(pro)q(cesses)h(are)g(coupled.)90 2411 y(On)k(the)f(shortest) g(time)h(scales)g(the)f(in)o(teraction)h(of)f(radiation)h(with)g(the)f (earth's)g(surface,)h(clouds)90 2468 y(and)15 b(absorption)f(b)o(y)g (the)g(atmosphere)g(couples)i(a)e(v)o(ertical)h(column.)20 b(Surface)15 b(moisture,)f(laten)o(t)g(heat)90 2524 y(exc)o(hange,)21 b(con)o(v)o(ectiv)o(e)f(o)o(v)o(erturning)f(and)h(precipitation)i(pro)q (cesses)e(are)g(also)f(represen)o(ted)i(within)967 2850 y(12)p eop %%Page: 13 13 13 12 bop 90 196 a Fj(eac)o(h)17 b(v)o(ertical)g(column.)25 b(The)17 b(o)q(cean)g(surface)g(temp)q(erature)f(and)h(the)g(abilit)o (y)h(of)e(the)h(o)q(cean)g(surface)90 252 y(la)o(y)o(er)f(to)g(store)g (heat)h(during)g(a)f(diurnal)i(cycle)g(are)f(represen)o(ted)g(without)f (including)k(general)d(o)q(cean)90 309 y(circulation.)161 394 y(Since)c(a)f(large)g(p)q(ortion)g(of)g(the)g(calculations)h (\(radiation,)g(absorption,)f(clouds,)h(etc.\))19 b(in)13 b(a)e(v)o(ertical)90 451 y(column)22 b(of)g(atmosphere)f(are)g(indep)q (enden)o(t,)k(the)d(parallelization)i(strategy)c(used)i(in)g(the)g (climate)90 507 y(co)q(de)h(is)f(across)g(columns.)41 b(The)23 b(columns)g(of)e(atmosphere)h(are)g(divided)i(in)o(to)e (adjacen)o(t)g(patc)o(hes)90 563 y(and)14 b(distributed)h(among)e(the)h (pro)q(cessors)f(of)g(an)h(MPP)l(.)f(These)h(indep)q(enden)o(t)i (calculations)f(comprise)90 620 y(ab)q(out)21 b(50\045)f(of)g(the)h (parallel)h(execution)g(time)f(of)g(the)g(co)q(de)g(but)g(exhibit)i (some)d(load)h(im)o(balance.)90 676 y(The)16 b(coupling)h(in)f(the)g (horizon)o(tal)g(direction,)h(the)e(solution)i(of)e(the)h(\015o)o(w)f (equations,)g(uses)h(a)f(parallel)90 733 y(sp)q(ectral)20 b(transform)d(algorithm)i(for)f(the)h(appro)o(ximation)g(of)f(horizon)o (tal)i(deriv)m(ativ)o(es)g(and)f(a)f(semi-)90 789 y(Lagrangian)d (treatmen)o(t)f(of)h(the)g(adv)o(ectiv)o(e)h(term)e(for)h(the)g (moisture)g(equation.)161 875 y(The)j(PVM)h(v)o(ersion)f(w)o(as)g (created)h(from)f(a)g(w)o(orking)g(parallel)i(message)f(passing)g(co)q (de)g(running)90 931 y(on)d(the)g(In)o(tel)h(iPSC/860)e(in)i(a)e (couple)j(of)d(w)o(eeks.)22 b(The)16 b(message)g(passing)g(calls)h(w)o (ere)e(replaced)j(with)90 988 y(equiv)m(alen)o(t)24 b(PVM)e(calls.)41 b(Some)22 b(sp)q(ecial)i(functions)f(that)e(tak)o(e)h(adv)m(an)o(tage)f (h)o(yp)q(ercub)q(e)j(or)e(mesh)90 1044 y(connectivit)o(y)16 b(w)o(ere)e(replaced)i(with)g(simpler)g(PVM)e(routines.)20 b(F)l(or)14 b(example,)i(a)e(global)i(maxim)o(um)e(is)90 1101 y(calculated)j(on)e(a)g(single)i(pro)q(cess.)k(Similarly)l(,)c (all)f(the)g(I/O)g(is)f(p)q(erformed)h(b)o(y)f(a)g(single)i(pro)q (cess.)k(The)90 1157 y(climate)d(researc)o(hers)e(rep)q(ort)h(that)f (PVM)g(has)h(o\013ered)f(an)h(excellen)o(t)i(debugging)e(and)g(dev)o (elopmen)o(t)90 1214 y(to)q(ol)e(as)g(w)o(ell)h(as)f(p)q(ortabilit)o(y) h(across)f(mac)o(hines)h(and)f(net)o(w)o(orks.)90 1386 y Fi(5)69 b(Discussion)90 1516 y Fj(In)21 b(this)g(pap)q(er,)h(w)o(e)f (ha)o(v)o(e)f(attempted)g(to)g(presen)o(t)h(o)o(v)o(erview)f (descriptions)i(of)e(some)h(of)f(the)g(more)90 1573 y(in)o(teresting)14 b(and)g(imp)q(ortan)o(t)g(facets)f(of)g(the)h(PVM)g(system,)f (including)j(the)e(design)h(philosoph)o(y)l(,)g(com-)90 1629 y(puting)e(mo)q(del,)h(p)q(erformance)f(issues,)h(and)f (application)h(exp)q(eriences.)21 b(Detailed)14 b(exp)q(ositions)g(as)e (w)o(ell)90 1686 y(as)i(p)q(edagogical)i(material)f(on)g(v)m(arious)g (asp)q(ects)g(of)f(the)h(PVM)f(system)g(ma)o(y)g(b)q(e)i(found,)e(for)g (example,)90 1742 y(in)g([12)o(,)f(13,)g(14)o(],)h(in)g(addition)g(to)f (the)h(pap)q(ers)g(already)g(cited.)20 b(A)o(t)13 b(the)g(time)h(of)f (writing,)h(PVM)f(con)o(tin-)90 1799 y(ues)k(to)f(b)q(e)i(a)f(p)q (opular)g(and)g(widely)i(used)e(system)g(for)f(concurren)o(t)h (computing,)g(and)g(it)g(is)h(exp)q(ected)90 1855 y(that)13 b(the)g(pro)s(ject)f(will)j(mature)e(and)h(ev)o(olv)o(e)f(ev)o(en)h (further)f(in)h(the)f(future.)19 b(In)14 b(this)g(section)g(w)o(e)f (brie\015y)90 1911 y(discuss)18 b(ongoing)g(auxiliary)g(pro)s(jects,)f (future)g(plans,)i(and)e(commen)o(t)g(on)g(the)h(long)f(term)g(p)q (oten)o(tial)90 1968 y(and)e(scop)q(e)h(of)f(PVM)g(and)g(similar)h(tec) o(hnology)l(.)90 2119 y Fh(5.1)56 b(Ongoing)18 b(and)h(F)-5 b(uture)19 b(W)-5 b(ork)90 2234 y Fj(As)15 b(men)o(tioned,)h(PVM)e(is)i (an)f(ongoing)g(exp)q(erimen)o(tal)h(researc)o(h)f(pro)s(ject,)f(and)i (con)o(tin)o(ually)g(ev)o(olving)90 2290 y(new)e(ideas)h(are)e(in)o(v)o (estigated)h(b)q(oth)h(b)o(y)e(the)h(pro)s(ject)f(team)h(and)g(at)f (external)h(institutions;)i(successful)90 2347 y(exp)q(erimen)o(tal)k (enhancemen)o(ts)g(or)e(subsystems)h(ev)o(en)o(tually)h(b)q(ecome)g (part)e(of)h(the)g(soft)o(w)o(are)e(distri-)90 2403 y(bution.)25 b(One)17 b(example)g(of)f(a)h(relativ)o(ely)g(concise)h(enhancemen)o(t) f(that)f(is)h(undergoing)g(in)o(v)o(estigation)90 2459 y(concerns)f(system)g(lev)o(el)h(optimizations)g(for)e(op)q(erating)h (in)h(shared)f(memory)f(en)o(vironmen)o(ts.)23 b(Small-)90 2516 y(scale)17 b(SMM's)e(are)h(re-emerging,)h(and)f(a)g(v)o(ersion)h (of)f(PVM)g(that)f(utilizes)k(ph)o(ysical)e(shared)g(memory)967 2850 y(13)p eop %%Page: 14 14 14 13 bop 90 196 a Fj(for)18 b(in)o(teraction)h(b)q(et)o(w)o(een)f(the) h(daemon)f(and)g(all)i(user)e(pro)q(cesses)h(on)f(suc)o(h)h(mac)o (hines)g(is)g(b)q(eing)g(de-)90 252 y(v)o(elop)q(ed.)35 b(Another)20 b(pro)s(ject)f(is)h(aimed)h(at)e(pro)o(viding)i(fail-safe) f(capabilities)j(in)d(PVM)g([15)o(].)33 b(This)90 309 y(enhanced)21 b(v)o(ersion)f(uses)g(c)o(hec)o(kp)q(oin)o(ting)i(and)e (rollbac)o(k)g(to)g(reco)o(v)o(er)f(from)g(single-no)q(de)j(failures)f (in)90 365 y(an)15 b(application-transparen)o(t)g(manner,)g(pro)o (vided)g(the)g(application)h(is)f(not)f(dep)q(enden)o(t)j(on)d (real-time)90 421 y(ev)o(en)o(ts.)30 b(Sev)o(eral)19 b(other)f(enhancemen)o(ts)h(are)f(also)h(in)g(progress,)f(includin)q(g) j(load)e(balancing)h(exten-)90 478 y(sions,)15 b(in)o(tegrating)g (debugging)i(supp)q(ort,)e(and)g(task)f(queue)i(managemen)o(t)f([16)o (].)161 563 y(One)21 b(somewhat)g(di\013eren)o(t)g(and)g(more)g (extensiv)o(e)h(subsystem)f(under)h(dev)o(elopmen)o(t)f(is)h(a)f(gen-) 90 620 y(eralized)h(distributed)f(computing)f(\(GDC\))f(la)o(y)o(er)h (for)f(PVM.)g(While)i(scien)o(ti\014c)h(applications)f(ha)o(v)o(e)90 676 y(pro)o(vided)d(the)g(tec)o(hnical)h(imp)q(etus)g(for)e(the)g(PVM)h (pro)s(ject,)f(more)g(general)h(and)g(commercially)h(ori-)90 733 y(en)o(ted)c(uses)f(are)g(no)o(w)g(ev)o(olving.)20 b(In)15 b(order)f(to)g(supp)q(ort)h(suc)o(h)f(applications,)i(the)e (GDC)g(la)o(y)o(er)g(is)h(b)q(eing)90 789 y(designed,)g(and)f(will)h (supp)q(ort)f(\(1\))e(parallel)j(input-output)g(with)f(enhanced)h (\014lesystem)f(seman)o(tics)g(for)90 846 y(shado)o(wing,)h(in)o (terlea)o(v)o(ed)h(access,)f(and)h(rollbac)o(k;)f(\(2\))g(access)g(con) o(trol)g(and)h(authen)o(tication,)f(and)h(ab-)90 902 y(stract)f(m)o(utual)h(exclusion)h(mec)o(hanisms;)g(\(3\))d(supp)q(ort) i(for)g(the)f(clien)o(t-serv)o(er)i(mo)q(del)g(of)e(distributed)90 959 y(computing,)g(with)h(facilities)h(for)d(the)i(transparen)o(t)e (exp)q(orting)h(and)h(in)o(v)o(o)q(cation)f(of)g(services;)h(and)f (\(4\))90 1015 y(distributed)22 b(transaction)f(pro)q(cessing)h (primitiv)o(es.)38 b(Early)21 b(results)g(indicate)i(that)d(these)h (facilities)90 1072 y(can)16 b(b)q(e)g(pro)o(vided)h(at)e(high)i(lev)o (els)g(of)e(e\016ciency)l(,)j(and)e(that)f(the)h(enhanced)h (functionalit)o(y)g(will)h(pro)o(v)o(e)90 1128 y(b)q(ene\014cial)g(for) c(man)o(y)h(new)h(classes)f(of)g(application)i(domains.)90 1279 y Fh(5.2)56 b(Auxiliary)17 b(Pro)s(jects)90 1394 y Fj(Apart)i(from)h(the)g(exp)q(erimen)o(tal)h(w)o(ork)e(describ)q(ed)j (in)e(the)g(previous)h(section,)g(a)f(n)o(um)o(b)q(er)g(of)f(other)90 1450 y(pro)s(jects)d(related)i(to)f(PVM)g(are)g(in)h(v)m(arious)g (stages)e(of)h(progress;)g(b)o(y)h(nature,)f(these)h(are)f(less)h(in)o (ter-)90 1507 y(t)o(wined)g(with)f(the)h(in)o(ternals)g(of)f(the)g (core)g(system,)g(and)h(to)e(a)h(large)h(exten)o(t,)f(are)g(auxiliary)h (to)q(ols)f(or)90 1563 y(external)f(subsystems.)j(A)d(few)f(are)g(men)o (tioned)h(b)q(elo)o(w:)158 1698 y Fg(\017)23 b Fj(HeNCE)e(is)g(a)f (graphical)i(programming)e(system)g(for)h(PVM;)f(this)h(to)q(olkit)g (generates)f(PVM)204 1755 y(programs,)9 b(from)h(depictions)i(of)e (parallelism)i(dep)q(endencies)h(as)d(directed)i(graphs,)e(and)g(pro)o (vides)204 1811 y(an)16 b(in)o(teractiv)o(e)h(administrativ)o(e)g(in)o (terface)g(for)f(virtual)h(mac)o(hine)h(con\014guration,)e(application) 204 1868 y(execution,)g(and)f(animated)g(visualization.)158 1962 y Fg(\017)23 b Fj(Xab)15 b([1)o(])g(is)h(a)f(graphical)h(to)q(ol)f (for)g(the)g(run)h(time)f(monitoring)h(of)f(PVM)g(programs.)j(It)e (gathers)204 2018 y(monitoring)22 b(ev)o(en)o(ts)g(from)g (applications,)j(and)e(displa)o(ys)g(this)g(information,)h(whic)o(h)f (can)f(b)q(e)204 2074 y(useful)16 b(for)f(pro\014ling,)h(error)e (detection,)i(and)f(optimization.)158 2168 y Fg(\017)23 b Fj(The)d(DoPVM)f(subsystem)h([17)o(])f(is)i(aimed)f(at)g(supp)q (orting)g(the)g(\\shared)g(ob)s(ject")f(paradigm)204 2225 y(in)h(PVM.)f(By)h(writing)h(C++)f(programs)f(in)h(whic)o(h)h(ob)s (jects)e(deriv)o(ed)i(from)e(built-in)j(classes)204 2281 y(can)14 b(b)q(e)g(declared,)h(this)f(PVM)g(extension)g(p)q(ermits)h(a) e(shared)h(address)g(space)g(concurren)o(t)g(com-)204 2338 y(puting)h(mo)q(del,)g(thereb)o(y)f(alleviating)i(the)e(inheren)o (t)h(complexit)o(y)h(of)d(explicit)k(message)d(passing)204 2394 y(programming.)967 2850 y(14)p eop %%Page: 15 15 15 14 bop 90 196 a Fh(5.3)56 b(Long-term)16 b(Outlo)r(ok)90 311 y Fj(It)i(is)g(imp)q(ortan)o(t)f(to)g(realize)i(that)e(PVM)g(\(and) h(other)f(similar)i(systems\))e(is)h(not)f(merely)h(a)g(soft)o(w)o(are) 90 367 y(framew)o(ork)g(for)i(net)o(w)o(ork-based)f(concurren)o(t)h (computing;)i(it)e(is)g(an)g(in)o(tegrated)g(metho)q(dology)g(for)90 423 y(concurren)o(t,)g(distributed,)h(and)f(parallel)g(pro)q(cessing,)h (and)e(more)g(imp)q(ortan)o(tly)l(,)h(it)g(is)g(an)f(in)o(terface)90 480 y(de\014nition)f(for)e(p)q(ortable)g(application)i(dev)o(elopmen)o (t.)23 b(F)l(rom)16 b(the)g(p)q(ortabilit)o(y)h(p)q(oin)o(t)g(of)f (view,)g(PVM)90 536 y(applications)g(ma)o(y)e(b)q(e)i(migrated)e(not)g (just)h(from)f(one)h(mac)o(hine)g(\(parallel)h(or)e(serial\))h(to)g (another)f(but)90 593 y(across)20 b(di\013eren)o(t)h(collections)h(of)e (mac)o(hines.)38 b(Giv)o(en)21 b(that)f(PVM)g(can)h(op)q(erate)f (within)i(a)e(parallel)90 649 y(mac)o(hine,)h(across)e(net)o(w)o(orks,) f(and)i(com)o(binations)g(thereof,)g(signi\014can)o(t)g(generalit)o(y)g (and)f(\015exibili)q(t)o(y)90 706 y(exists,)13 b(and)g(it)g(is)h(hard)e (to)g(imagine)i(a)f(computing)g(en)o(vironmen)o(t)g(where)g(suc)o(h)g (a)g(mo)q(del)g(w)o(ould)h Fe(not)e Fj(b)q(e)90 762 y(appropriate.)20 b(F)l(rom)13 b(the)h(p)q(oin)o(t)h(of)e(view)i(of)f(p)q(erformance,)g (PVM)g(deliv)o(ers)h(a)f(signi\014can)o(t)h(prop)q(ortion)90 819 y(\(of)d(the)g(order)g(of)g(80)g({)g(90\045\))g(of)g(the)g(capacit) o(y)h(a)o(v)m(ailable)h(from)e(the)g(underlying)j(hardw)o(are,)d(op)q (erating)90 875 y(system,)h(net)o(w)o(ork,)f(and)h(proto)q(cols)g({)g (and)g(w)o(e)g(exp)q(ect)h(to)f(retain)g(this)g(c)o(haracteristic)h(as) f(net)o(w)o(ork)f(and)90 932 y(CPU)17 b(sp)q(eeds)i(increase,)g(and)e (as)g(proto)q(col)h(and)g(OS)g(soft)o(w)o(are)d(b)q(ecomes)k(more)e (e\016cien)o(t.)27 b(It)18 b(should)90 988 y(b)q(e)e(p)q(oin)o(ted)h (out,)e(while)i(on)f(this)g(topic,)g(that)f(in)h(measuring)g(the)g(w)o (orth)f(of)g(systems)g(suc)o(h)h(as)g(PVM,)90 1044 y(comparisons)j(of)g (clusters)h(vs.)31 b(MPP's)19 b(are)f(inappropriate;)k(rather,)d(a)g (meaningful)i(metric)e(is)h(the)90 1101 y(v)m(alue)c(added)f(b)o(y)f (PVM)g(to)f(a)i(giv)o(en)f(hardw)o(are)g(en)o(vironmen)o(t,)g(whether)h (this)g(is)g(a)f(m)o(ultipro)q(cessor)g(or)90 1157 y(a)h(collection)h (of)f(w)o(orkstations.)j(In)e(terms)e(of)h(functionalit)o(y)l(,)h(the)f (PVM)g(system)f(curren)o(tly)i(supp)q(orts)90 1214 y(an)f(adequate)h (suite)g(of)f(features,)g(and)h(with)f(the)h(in)o(tegration)f(of)h (extensions)g(describ)q(ed)h(earlier,)f(will)90 1270 y(b)q(e)f(in)g(a)f(p)q(osition)h(to)f(cater)f(to)h(a)g(m)o(uc)o(h)g (larger)g(realm)h(of)e(distributed)j(and)e(concurren)o(t)h (applications.)90 1327 y(Heterogeneous)g(net)o(w)o(ork-based)g (concurren)o(t)h(computing)g(systems)e(lik)o(e)j(PVM)e(are)g(therefore) g(lik)o(ely)90 1383 y(to)g(remain)g(viable)i(tec)o(hnologies)f(for)e (concurren)o(t)i(and)f(distributed)i(computing.)90 1552 y Fi(References)90 1668 y Fj([1])22 b(Adam)16 b(Beguelin,)i(\\Xab:)j(A) 16 b(T)l(o)q(ol)h(for)e(Monitoring)h(PVM)g(Programs",)e Fe(Workshop)k(on)f(Heter)n(o-)161 1725 y(gene)n(ous)d(Pr)n(o)n(c)n (essing)p Fj(,)d(IEEE)j(Computer)f(So)q(ciet)o(y)i(Press,)e(Los)h (Alamitos,)g(California,)g(pp.)g(92-97,)161 1781 y(April)i(1993.)90 1867 y([2])22 b(H.)f(J.)h(Siegel,)i(et.)d(al.,)i(\\An)e(Ov)o(erview)i (of)e(the)g(P)l(ASM)h(P)o(arallel)h(Pro)q(cessing)f(System",)g(in)h(it) 161 1923 y(Computer)f(Arc)o(hitecture,)j(D.)d(D.)g(Ga)s(jski,)h(et.)f (al.)h(\(eds\),)g(IEEE)g(Computer)f(So)q(ciet)o(y)i(Press,)161 1980 y(W)l(ashington,)15 b(DC,)f(pp.)h(319-407,)e(1987.)90 2066 y([3])22 b(V.)17 b(S.)g(Sunderam,)i(\\PVM)e(:)g(A)h(F)l(ramew)o (ork)e(for)h(P)o(arallel)i(Distributed)f(Computing",)g Fe(Journal)161 2122 y(of)e(Concurr)n(ency:)k(Pr)n(actic)n(e)c(and)g (Exp)n(erienc)n(e)p Fj(,)e Fa(2)p Fj(\(4\),)g(pp.)h(315-339,)e(Decem)o (b)q(er)j(1990.)90 2209 y([4])22 b(A.)15 b(Beguelin,)j(et.)e(al.,)g (\\HeNCE)f(Users)h(Guide",)h(Univ)o(ersit)o(y)f(of)g(T)l(ennessee)h(T)l (ec)o(hnical)h(Rep)q(ort,)161 2265 y(Ma)o(y)c(1992.)90 2351 y([5])22 b(N.)12 b(Carriero)h(and)g(D.)f(Gelern)o(ter,)h(\\Linda)h (in)g(Con)o(text",)e Fe(Communic)n(ations)h(of)h(the)h(A)o(CM)p Fj(,)c Fa(32)p Fj(\(4\),)161 2407 y(pp.)k(444-458,)e(April)k(1989.)90 2494 y([6])22 b(R.)17 b(Butler)h(and)f(E.)g(Lusk,)h(\\User's)e(Guide)i (to)f(the)g(P4)g(Programming)f(System",)h(Argonne)g(Na-)161 2550 y(tional)e(Lab)q(oratory)l(,)g(T)l(ec)o(hnical)i(Rep)q(ort)e (ANL{92/17,)f(1992.)967 2850 y(15)p eop %%Page: 16 16 16 15 bop 90 196 a Fj([7])22 b(A.)f(Kola)o(w)o(a,)i(\\The)e(Express)h (Programming)f(En)o(vironmen)o(t",)i Fe(Workshop)g(on)f(Heter)n(o)n (gene)n(ous)161 252 y(Network-Base)n(d)16 b(Concurr)n(ent)g(Computing)p Fj(,)e(T)l(allahassee,)i(Octob)q(er)g(1991.)90 346 y([8])22 b(Louis)d(T)l(urcotte,)f(\\A)h(Surv)o(ey)f(of)g(Soft)o(w)o(are)f(En)o (vironmen)o(ts)h(for)g(Exploiting)i(Net)o(w)o(ork)o(ed)d(Com-)161 402 y(puting)c(Resources",)g(Draft)f(Rep)q(ort,)h(Engineering)h (Researc)o(h)f(Cen)o(ter)f(for)g(Computational)h(Field)161 459 y(Sim)o(ulations,)j(Mississippi)h(State,)e(Jan)o(uary)g(1993.)90 553 y([9])22 b(G.)16 b(A.)h(Geist,)h(M.)e(T.)h(Heath,)g(B.)g(W.)g(P)o (eyton,)g(and)g(P)l(.)g(H.)g(W)l(orley)l(.)g(\\A)h(mac)o(hine-indep)q (endent)161 609 y(comm)o(unication)c(library",)h(In)f(J.)g(Gustafson,)e (editor,)i Fe(The)h(Pr)n(o)n(c)n(e)n(e)n(dings)e(of)i(the)g(F)m(ourth)g (Confer-)161 666 y(enc)n(e)j(on)g(Hyp)n(er)n(cub)n(es,)h(Concurr)n(ent) f(Computers,)i(and)f(Applic)n(ations)p Fj(,)e(pp.)i(565-568,)e(P)l(.O.) g(Bo)o(x)161 722 y(428,)d(Los)h(Altos,)g(CA,)f(1990.)g(Golden)i(Gate)e (En)o(terprises.)90 816 y([10])21 b(G.)12 b(A.)h(Geist)g(and)g(V.)f(S.) h(Sunderam,)g(\\Net)o(w)o(ork)e(Based)i(Concurren)o(t)g(Computing)g(on) f(the)h(PVM)161 872 y(System",)21 b Fe(Journal)g(of)g(Concurr)n(ency:) 29 b(Pr)n(actic)n(e)20 b(and)h(Exp)n(erienc)n(e)p Fj(,)f Fa(4)p Fj(\(4\),)h(pp.)f(293-311,)g(June)161 929 y(1992.)90 1023 y([11])h(B.)d(Sc)o(hmidt)h(and)f(V.)f(S.)h(Sunderam,)g (\\Empirical)h(Analysis)g(of)f(Ov)o(erheads)g(in)g(Cluster)g(En)o(vi-) 161 1079 y(ronmen)o(ts",)c Fe(Journal)i(of)g(Concurr)n(ency:)k(Pr)n (actic)n(e)c(and)g(Exp)n(erienc)n(e)p Fj(,)e(\(to)g(app)q(ear\),)h (1993.)90 1173 y([12])21 b(A.)14 b(Beguelin,)i(J.)e(J.)g(Dongarra,)e (G.)h(A.)h(Geist,)f(R.)h(Manc)o(hek,)g(and)g(V.)g(S.)g(Sunderam.)g(\\A) f(Users')161 1229 y(Guide)22 b(to)e(PVM)g(P)o(arallel)i(Virtual)g(Mac)o (hine",)g(T)l(ec)o(hnical)h(Rep)q(ort)e(ORNL/TM-11826,)g(Oak)161 1286 y(Ridge)16 b(National)g(Lab)q(oratory)l(,)e(July)i(1991.)90 1380 y([13])21 b(A.)e(Beguelin,)i(J.)e(Dongarra,)f(G.)g(Geist,)i(R.)f (Manc)o(hek,)g(and)g(V.)g(Sunderam,)h(\\Solving)f(Com-)161 1436 y(putational)e(Grand)f(Challenges)i(Using)f(a)g(Net)o(w)o(ork)e (of)h(Sup)q(ercomputers",)i Fe(Pr)n(o)n(c)n(e)n(e)n(dings)d(of)j(the) 161 1492 y(Fifth)g(SIAM)f(Confer)n(enc)n(e)f(on)j(Par)n(al)r(lel)e(Pr)n (o)n(c)n(essing)p Fj(,)f(D.)h(Sorensen,)h(ed.,)g(SIAM,)f(Philadelphi)q (a,)161 1549 y(1991.)90 1643 y([14])k(G.)14 b(A.)h(Geist)g(and)g(V.)f (S.)h(Sunderam,)g(\\The)f(Ev)o(olution)i(of)e(the)h(PVM)f(Concurren)o (t)h(Computing)161 1699 y(System",)k Fe(Pr)n(o)n(c)n(e)n(e)n(dings)e({) i(26th)i(IEEE)d(Comp)n(c)n(on)h(Symp)n(osium)p Fj(,)g(pp.)g(471-478,)e (San)i(F)l(ransisco,)161 1756 y(F)l(ebruary)c(1993.)90 1849 y([15])21 b(J.)12 b(Leon,)g(et.)f(al.,)h(\\F)l(ail)g(Safe)g(PVM:)e (A)i(P)o(ortable)f(P)o(ac)o(k)m(age)g(for)g(Distributed)h(Programming)f (with)161 1906 y(T)l(ransparen)o(t)h(Reco)o(v)o(ery",)g(Sc)o(ho)q(ol)i (of)e(Computer)g(Science)j(T)l(ec)o(hnical)f(Rep)q(ort,)f (Carnegie-Mellon)161 1962 y(Univ)o(ersit)o(y)l(,)i(CMU-CS-93-124,)f(F)l (ebruary)h(1993.)90 2056 y([16])21 b(J.)c(Dongarra,)e(et.)h(al.,)h Fe(A)o(bstr)n(acts:)22 b(PVM)17 b(User's)g(Gr)n(oup)h(Me)n(eting)p Fj(,)e(Univ)o(ersit)o(y)h(of)f(T)l(ennessee,)161 2113 y(Kno)o(xville,)h(Ma)o(y)d(1993.)90 2206 y([17])21 b(C.)e(Hartley)g (and)g(V.)f(S.)h(Sunderam,)h(\\Concurren)o(t)f(Programming)f(with)h (Shared)g(Ob)s(jects)g(in)161 2263 y(Net)o(w)o(ork)o(ed)c(En)o (vironmen)o(ts",)i Fe(Pr)n(o)n(c)n(e)n(e)n(dings)e({)j(7th)g(Intl.)e (Par)n(al)r(lel)h(Pr)n(o)n(c)n(essing)e(Symp)n(osium)p Fj(,)i(pp.)161 2319 y(471-478,)c(Los)i(Angeles,)h(April)h(1993.)967 2850 y(16)p eop %%Trailer end userdict /end-hook known{end-hook}if %%EOF .