PARALLEL VIRTUAL I`ofACmNE VERSUS REMOTE PROCEDURE

advertisement
33
PARALLEL VIRTU AL I'ofACmNE VERS US REMOTE PR OCEDURE CALLS: A
PER FORMANC E C O MPARISO N
IKam alrulnlza m Abu Bak ar , lZait ul Mlir lizaw ati Zal nudd ln
' Pacuhy of Co mputer Science & Informa tion System, lFaculty of Science,
Universn i Teknologi Mala ysia.
81310 tIfM Skuda i, Johor D. T. Ma laysia.
lkamarul@ fsksm.utm.my, l zmz.@mel .fs.utm.my
Abst rllcl: Distributed network computing offers gre(l/ potclltinl for increasing the amount of
computing power and communication resources available to large computational applications.
For this potential, a number of programming environments haw: been proposed to develop
distributedprograms. PVM and RPC are two such programming environments, which support that
ability. In this paper. an experimental performance comparison of PVM and RPC is made. The
comparison is done by evaluating their performances Ihrough two experiments. one is a broadcast
operation and Ihe other are two benchmark applications, ",!tich employ prime 'lumber calculation
and matrix multiplication. The broadcast operation will be used to evaluate the communication
overhead while the benchmark applications are used to evaluate the processing (distribution.
computation and collection) overheads. The experiments arc conducted using different sizes of
data and different numbers of workstations. All the experiments are run on a cluster of SUN
workstations. The results f ound from these experiments show the better environment under
specified conditions.
Key"' o rd ~ : Pal ullel Virtual Machine. Remme Procedure
Performance, Application Benchmark and Distributed System.
Calls,
Communication
I. In t rod urlio n
We have witnessed an unprecedent ed growth of paralle l com puting ha rd ware platfor ms, At the
same time, advancements in the design of processor arc hitecture and comm un ication med iums
have resulted in the emergence of fast workst ations conn ected by high -spee d comm unica tion
networks [I ], [2 ]. These cl usters of workslations also known as wor kstation farm s ar e approaching
the speed of so me of the contem porar y parallel computers. In recent years, stud ies have shown tha t
clusters of workstations have the potential of solvin g vel)' large-sc ale prob lems [2]. A nu mber of
program ming env ironments for such plat forms have recen tly emerged. They can sim ulate a cluster
of workstations as a virtua l pa rallel computer, and ca n perform comm unication acr oss multiple
homogeneous and heterogeneous parallel machines [3j.
Due to the popula rtty of para llel proce ssing, many software makers produce a number of
program ming environments to make use of the capability of ne tworked clu sters of workstation s.
Th ese environments offer many choice s to the user in solving com putationally complex problem.
Although these env ironments ea n so lve the limitations of the tradi tiona l compu ter, they still have
some weaknesses amongs t them. Usually the comm unication overhead and the processing
overhead affect thei r pe rformance.
This pa pe r presents the com parison of the t\VO currently popular parallel progr amm ing
en vironments. The firs! is PV M that is available in the public domam (4). The second is RPC
which is a com merci al product from SUN Microsystcms, Ine.[5). The per for mance of PVM and
RPC running on a d uster of S UN workstation con nected by an Etherne t is evaluated Th e results
of this ev aluation ca n be useful in number of ways.
•
•
•
Th ey enable a comparison of these two environments to be made to find out which one
perform better.
Th ey provide inform ation abou t the overhead incurred by bas ic communication and
processing on a du ster of SUN wo rkstations for large computation of problems.
They hel p us choose the environment best for speci fied cases.
Jilid I S.Bit. I (J un 2006 )
Jum al Teknologi Maklumat
2, Dis tribu ted Systems
Cou louris, Dolli more and Kindbcrg [7] have defined the distributed system as " a collectio n of
autonomous computers linked by a com puter ne twork and eq uipped with distributed system
so ftwar e", Meanwh ile, Tanenba um [8] de fines it as "a collectio n of independent computers that
appear to the users of the system as a single computer" and Mullender [9] defines it in short as
"several computers doing someth ing togeth er", Thus it can be summarised that a distributed
system is a group of com puters that are linked by a network to perform a process.
Mul1 ender [II J has highlighted seven objectives why we need to build distributed systems,
These object ives ca n answer the qu estion why arc distributed systems importan t.
•
People lire distributed, informa tion is distrib uted : Therefore, people all around the wor ld can
sh are reso urces in distributed systems envi ronment.
•
Per formance/cost: Distr ibu ted systems can offer high performance processor with very
econ omic cost that ca nnot be offered by any other systems.
•
Modularity: "In a dis tributed system, interfaces betwee n parts of the system have to be
much more carefully des igned than in a centr alised system. As a consequence, distributed
systems must be built in a much more mod ular fashion tha n centralised systems" [ II ].
•
Expenda bility: Distributed systems can be easily expanded without affec ting the whole
system.
•
Availability: " Distributed system s haw the potential ability to contin ue ope ration if a failure
occurs in the hard ware or software" [10J.
•
Scalability: Distributed systems can grow to what ever size the user want.
•
Reliability: The de finition of reliability is "do wha t it claims to do correctly, even when
failures occur" [I I ].
Today, "distrib uted systems have become the norm for the organiz ation of computing facilities"
[7] . Th ese systems have been used in many areas, from general-purpose interacti ve co mput ing
systems to a wide range of comm erc ial and industrial application of compu ters. Due to this
popularity of dis tributed system , many distrib uted system softwar e ha ve been produced as a too l to
develop distributed application. This tool which IS known as distributed program ming environment
in this pape r, will be discussed in the next section.
J, Distribu ted Program ming En vironme nt
Distributed Programming Environment is a software system that can be used to develop distributed
application. Th ere are man y types of this soft ware tha t have been introduced and ea ch of them has
its ow n methodology in per formi ng distributed processin g. Th is section will describe in genera l, a
few types of dist ributed program ming environment that are cur rently use d in dis tri buted system
en vironment.
•
Parallel Virtual Machine
P VM wa s developed by resear chers at Emory University, Oa k Ridge National Labo ratory
(O RNL), University of Tennessee, Carn egie Mellon University and Pittsburgh
Su percomputer Center {4]. "It pe rmits a networ k of heterogeneous compu ters to be used
as a single parallel computer" [3 ].
•
Remote Proced ure Call
RPC was developed by Sun and AT &T as part of the UNIX system V Release 4 (SVR4).
It is a powe rful technique for cons tructing dist ributed, client-se rver based applications [5].
It exten ds the local proce dure ca ll concep ts to the remote case.
•
Linda
"Linda is a co-ordination language providing a communication mechanism based on a
shared memory space call ed ' tuple space ' .. [6]. 'The operation provided arc out (add a
Jilid 18,B il. I (lun 2006)
Jumat Tekn ologi Maklumat
tuple to the space), in (read and remove a tuple) and read (read a tuple without deleting
it)" ( 11]. The basic idea of Linda is to 'allow a set of processes to execute tuple-space
operations concurrently
•
Express
Express is developed by a group of researchers who started Parasoft Corpo ration. " It can
be used to write parallel programs on a variety of parallel machine s such as CMS,
NCUBE, Intel iPSC/2 and iPSCi 860 hypercubes, Intel Paragon and transput er arra ys"
(12]. Express can also be run on workstation such as DEC, HP, IBMlR 6000, SCI and
SUN. Ahmad [3] has described that Express supports communication utilities such as
" blocking and non-b locking communication amo ng node s, exchange, broadcast and
collective communication such as reading and writing a vector " . It also supports the
globa l commu nication such as concatenation, global reduction operations,
synchronisation, etc. Express also "provides processors control, dom ain decomposition
tools, parallel l/O, graphics and debugging and per forma nce analyses tools" [3J.
•
Socket (BSD a.x UNIX)
Socket is com monl y used as a mec hanism for interp rocess com munication in UNIX
environment. Socket has been defi ned by Brown (13) as an "e ndpoint for
communication" . It is the place where the app lication program and the transport provider
meet. Socket use the pairs of system call such as "read() and write()" , "recv() and send( )",
etc. to trans fer the data . To be able to exec ute the process in parallel, socket use the
system call ' setccn) ' which can multiplex between the messages being received on each
client connection. Recently. Socket has been implemented in many distributed
applications.
Th is section introduced in general a few types of distrib uted programm ing environment that are
currently used in distributed systems environment . There are ma ny similar software environments
that have been produced in the distributed systems. All of them are trying to ex ploit thc potential
pow er of diver se parallel and distributed hardware platforms. In this work, PVM and RPC have
been selected to be used as an experiment environment . The PYM system has been selected
because of it popularity in high-performance scie ntific computing com munity. while RPC is one
of the powerful techniques for construction distributed app lication as claime d by Sun
Micrcsystem s, Inc.
4. Design and Expe r iment al Setup
The test programs used are broadcast operation, prime numbe r and matrix multiplication. They
were written in C language and were run on the Ethernet based network SUN workstation. This
section outlines the design of the three algorithms that arc used 10 evaluate the performance of the
distributed programmi ng environment, the explan ation of the purpose of each application, the
reason for using this applica tion. the flow and imp lementation of the appl ications,
4.1 Broadrast Op er ation
One-to- many mapping of commu nication can be achieved through broadcast operation (sec Figure
I). Th is operation is used to send the same data format to all connected computers in the network ,
with no processing mechanism involved.
Jilid
rs.su.
I [Jun 2006)
Juma l Teknologi Maklumat
36
Broadcast opttaliOl\ is used 10 evaluate the communicatioo overhead. "The evaluation needs to
be done because as menucned by Tayloe 120). communication overhead can have a big impact on
lhe performance of a dist ributed appli cation. Foe instance, when the com munication overhead is
high. the performance of the distributed application cften drops. Therefore, the communication
overhead and th e performance of distributed application are directly related.
In this work,. the communication overhead produced in PVM and RPC ar e evaluated by
broadcasting dIfferent size of data to all the computers. The response lime is limed and a graph
indic ating the occurring of the overhead is pr oduce.
Broad cast operation in PVM en vironment can be implemen ted by using ~pvm-'xastO·
command. This command is provided by PVM and it can be used 10 broadcast any messages 10
an y specific grou p.
To evaluate the response time or the communication overh ead, the time is timed using
'gcnimeefday function. This funcuon is used 10 lime the beginning lime and the ending time of the
broadcast operation . The begin ning time is taken before pvrn_bc ast operation is executed an d the
ending time is ta ken as soon as the main program received the response from the w orker tasks. The
ac tua l time is calcul ated by sub tracting the beginning time from the e nding time. The time
obtai ned is the communication overhead tha t occurs during the broadcast operat ion.
Broadcast operation has been implemented in RPC e nvironmen t using ~rpe_broadcastO~
functio n. Th is is an RPC bu ilt in function and it is used to broadcast thc message to all the ser ver
programs res ide nt on different host s. The response time o r the com munication overhea d is
evaluated in this environment using ' geu imeofda y' function . The beginning time is taken before
th e rpe_b roodcastO command is iss ued a nd the e nding ti me is taken after the main progra m has
received the respon se from the server program. The act ual response lime is calculat ed by
subtra cting the begin ning time from the e nding ti me ,
01.2 Pri me N umbe r
In Th e Penguin Dict ionary of Mathem atics (27], prim e numbe r is de fined
as "A
whole nu mber
wger
than I that is divisible only by I and itself'. Prime Number is a well-known algorithm in dist ributed
environ ment. It is used to find the total num ber of pri mes in a given range. Computations ove rhead
in distributed system occur during the operations o f di stribut ion, computation and col lect ion of the
data. Th is overhead must be evaluated to j ustify the e ffecti veness of distributed process ing in
distri buted programming envi ronment. In this wor k, Prime Number algorithm is selected to be
used as an e xperi men tal program 10 evaluate the com putation overhe ad. It is because, this
algonthm is com posed of all the operations described above and it is obviousl y very
eompuulionally intensive for large range of values. Prime Number algorithm has also been used
by many authors 1ll their books suc h as Quinn [21], Qlal mers and T idm us {6J, Brown [13l, ere.
when describing the process of distributed app lication.
In this work, computation overhead for PYM and RPC wi ll be evaluated us ing prime number
algori thm on different numbcn of servers for different ranges of numbers. Th e computation time is
timed and a graph indica ling the occurring of computation o verhead is produced.
Th e computation overhead in th is program is timed using the same functi on as before which is
' gettimeofday' functi on . 1bc begi nning time is taken before the maIn program starts "spawnin g'
l ilid 18,B il. I (Jun 20(6)
l urna! Teknologi MakJumat
J7
the worker tasks. This is due to the fact that the operation of 'spawn ing' the, worker tasks is one of
the three operations contributed 10 the computation overhead. The time is stopped after all the
results have been received As before, the actual time is calculated by subtracting the beginning
lime from the ending time'. The time obtained is the computation overhead that occurs during the
process of finding and calculating the total number of prime numbers.
Prime Number program has been implemented in the RPC environment using m ultithreaded
client technique. In this technique. multiple thread will be created by the client program 10 enable
multiple process to be done: concurrently. The evaluation of communication overhead that occurs
during the proces s of prime numbe r program is done by using 'getnmeofday' function . This
function begins to lake the: time before the main program creates the lhread and STOps afler all the
results have been received. The actual lime or the occurrence of The communication overhead is
calculated as before.
4.3 Malrll Muldpllcalion
Matrix multiplication is a fundamental component of many numerical and non-numer ical
algorithms. Its operation is 10 multiply row and columns of two matrices. The definition of matrix
multiplication [26 ] is given bel ow ,
If A =~ij j is an mxn matrix and B =~ifj is an nxp matrix, then the product of A and B ,
AB =C =~,jJ,isan m xp matrix dcflned by
j :=
1,2,K ,m , j = 1.2.K ,p
It is suitable to implement this as an experimental algorithm in distr ibuted env ironme nt beca use
its operation involves very large comp utational problem. Thi s algorithm can be used to evaluate
the comp utation overhead because its operation involves the process of distributing. computing
and collecting data .
In addition to prime numbe r algorithm, matrix multiplication algorithm is used in this work 10
evaluate the computation overhead for PVM and RPC. The experiment done in evaluating the
performance of the two environments by using this algorithm is similar to the experiment done on
the prime number algorithm.
The evaluation of computation overhead is done using 'gettimeofday' function . As before, the
beginning time is taken before the main program starts 'spawning' the worker tasks and stops after
all the results have been received. The actual time is calculated by getti ng the differences of the
begin time and end time . The time obtained from this experiment will show the overhead of
computation produce by matrix multiplication program in PVM environment.
The implementation of matrix multiplication in RPC environment is done through the
combination of broadcast operation and multithreaded client. The' computation overhead is
evaluated using gcttimeofdayf) function . In this progra m the beginning time is taken before the
main progra m execute the TpC_broadcast() ope ration. The time is stopped after all the client threads
had returned the resuhs to the main program. The actua l time is calculated from the difference of
the beginning time and the ending time. This time obtained is the computation overhead that has
been produced by matrix multiplication program in RPC environment.
5, Ea pe r lme nta t Resu il
This chapter will explain the result of the experiments that have been done in evaluating the
performance of PVM and RPC. Th e explanations will focus on the tre nd of the graphs that have
been generated. Two experiments have been conducted. One experiment is focused on the area of
comm unication performance where the comm unication overhead is evaluated using broadcast
opera tion algorithm. Whereas, the second experiment used an application benchmark which are the
prime numbe r and matrix multiplication algorithms to evaluate the computation overhead.
JiJid 18,Bil. 1 (J un 2006)
Jumal Teknologi Maklumat
38
5.1 Commufllutlon Performance
As mentioned before, the communication overhead can have a big impact to the performance of
distributed programming environment. Therefore, work is done on this area to evaluate the impact
of communication overhead in PVM and RPC environments. Ahmad [3] in his paper had also
discovered thai "the size of the communication data had a great impact" to the performance of
software environment thai he evaluated. In th is work, the evaluation of communication
performance is carried out by using the: broadcast operation program. Both environments used the
same program in evaluating the communication overhead and the result gathered from this
experiment is used 10compare the performance of both environments.
5.1.1 Broadcast Operation Elperinunf Resul t
Broadcast operation is performed 10 send the same data to more than one node. It can be performed
between host and nodes, or from one node to multiple nodes. According to Ahmad (3), this
operation is "one of the frequently used primitive and is, therefore, important for performance
comparison". The following graphs give the result of the experiments done on 5, 10 and 15 SUN
workstations in evaluating the performance of PVM and RPc. Graphs are generated from the
results to make it easier for us to compare the difference in performance of the two environments.
The graphs for broadcast operation experimen t are shown in Figure 2, Figure 3 and Figure 4.
Broadcal t Operation ( 5 SLN w orkstation )
Site of array
FIgure 2 (a) Small message
Broadcal t Operaoon I 5 SlJIl WOfkstalion )
Size or array
Figure 2 (b) Large message
Jilid I S,Bi!. I {Jun 2006)
Jurnal Teknolcgi Maklumal
39
Broa dca st Oper ation ( 5 SUN w orkstatca )
Size of array
Figure 2 (c) Very large message
Figure 2(a, b, c): Graph for broadcast oper ation experiment on 5 SUN workstation
As can be noticed, in Figure 2, for sma ll messages, broadcast operation of RPe is about 1.8
times slower than PVM. However, for very large messages, the resu lt is different, broadcast
operation ofPVM became very slow com pa red to RPC. Here, PV M per formance is about 1.8
times slower than RPC.
Broadcast OperaliC>n ( 10 S~ w orklitatiJn)
FIgure 3 (a) Small message
Broadcast Operation ( 10 SlJ'J w ork.:i lato n)
Sile of arr ay
FIgure 3 (b) Large message
Jilid IS,Bit. 1 (Jun 2006)
Ju m al Teknologi Maklumat
40
Broad cast Opera lion ( 10 SLN Workstalion)
Size of array
Figure 3 (c) Very large message
Figure 3(a, b, c): Graph for broadcast operation experiment on 10 SU N wcrkstanon
Meanw hile in Figure 3, the results for broadcast ope ration in PVM en vironment is slower than
RPC for sma ll messa ges. PVM per forma nce is about L l timcs slower than RPC. For very large
messa ge size , the per forma nce of broadca st opera tion for PVM beco mes even worst' , The
performa nce of broadcast ope ratio n for PYM is about 3,5 times slowe r than RPC.
Broadcast ccerarco ( 15 SLN w or~s la tionl
"-"
!
~
200
T
' 50
'~
r - *-'*- o-<>---o-- ¢"
o
0
.,
I
I
I
I
<Ii'
0 -0
I
,i'
0 -0
I
,<Ii'
II=::
4'
see of array
Figure 4 (a) Small message
Broadcas t Operation (15 SLI'l w orkstation)
Size of array
Figure 4 (b) Large message
Jilid l8,Hil. J (Jun 20(6)
Juma l Tcknologi Maklumar
41
Broadcast cce-etco (t 5 SlJ" w orkstatioo)
Size o f array
FIgure 4 (c ) very large message
Figure 4(3 , b, c) : G raph for bro adcast operation expe riment on 15 S UN workstat ion
The experiment in evaluating the communication overhead is continued with IS SUN
workstations and the results are show n in Figure 4. The graph shows that, for small messages the
performance for broadcast operation of PVM is about \. 5 limes slower than RPC and for ve ry
large messages, about 6.5 times slowe r than RPC. From this obser vation, the comm unication
overhead in PVM increases dramatically when the num ber of workstations increases. While for
RPC environment the communicatio n overhead increases gradu ally wh-en the number of
workstations increases. As an example. for small messages the comm unicatio n overhead in PVM
environmen t for 5 SUN workstatio ns is about 50 mscc while the co mmunication overhead in PVM
environmcnt for small messag es for 15 SUN workstations is about L78.3 msec . O n the other hand,
the commun ication overhead in RPC environment for small messages for 5 SUN workst ations is
about 87.3 mscc while for 15 S UN workstations it is, about 116. 1 msec.
As stated by Ahmad P l in his paper, "the broadcast ope ration of PVM is inefficient". Therefore,
it can be seen that the results obtained from the experiments done in this project agr eed with the
statement. In conclusi on, PYM environment contain s high communication overhead com pared to
other software environments suc h as RPC. By rit;ht, PVM shou ld offer low commun ication
overhead. in order to de velop high pe rformance of distributed application .
S.2 An A ppli cation Benchm ark
To compare the perfor mance of PVM and RPC with real application, tw o application bench marks
have been Implemented. These applications are used to eval uate the comp utat ion overhead that
occurs during the distribut ion, computation and collection op erations that have been done by t he
application. This is the second important overbecd that must be evaluated in companng the
performance of so ftwar e environment. In this work, prime number and matr ix mu ltiplication
programs are used as the benchmark applications in evaluating the co mput ation overhead The se
programs have been imp lemented in both environments and the results of the exper imen ts are used
in comparing their performances.
5.2.1 Pr ime Nu mb er E xperime nt
Rc~u ll
Prime number program is used to find the total number of prime in a given range . This progr am
consists of three main operations, which arc the distrib utio n of the range, comp utation of the prime
numbe r and co llection of the results All of these operations contribute 10 the com putation
overhead that has to be evaluated . The following graph s give the results of the expe riments done
on a cluster of S UN workstat ions in evaluating the per formanc e of PVM and RPC.
Jilin IS,Bil. I [J un 2006 )
Jumal Teknologi Maklumar
42
Ptirre
~ rrber
( Range: 1 - 40(000 )
40
~ 30
e.
2O L:::
S! 10
~.
0 , __
":::::~=:;c=-.".-.."
0 _<> ---.>-
4
6
o
2
o
. ~
, --;'
"'- _,- _,- -;-
~rrtJer
8
10
12
of server
I
~ PV M
- ~-
RFC
"
Figure 5 (a) Small range
Prim! I'iJrrtler ( Range : 1 - 800000)
t>Lrrber of server
Fig ure 5 (b) Large range
Prm:. t.lumer (Range : 1 -
•
6
8
N..Lrrber of server
12‫סס‬oo0)
12
"
Figure 5 (c) Very large range
Figure 5 (a, b. c): Graph for prime number experiment
As can be seen, the performance of RPC is much better than the PYM . This conclusion is made
because, the prime number program impleme nted in PY M en vironment, perfor med poorly at all
ranges tha t have been tes ted .
5.2.2
!\lat r ix !\Iulliplifaliun Exper iment Result
T his program involves three main operations, w hich ar c the distribution of matrix A and matrix D,
computation (multiplication of matrix A and OJ and collection of the results. These operations can
be used to evaluate the computation overhe ad that OC ClJrs in PVM and RPC env ironments T he
fo llow ing graphs gi ve the res ults of the experiments.
Jilid 18,BI1. 1 (Jun 2006)
Jum al Tc knolog i Maklumat
43
Wa lfix M.Jltiplical ion
~: k
l _--~
~ : l,,--~--+-~~
N:.mtJer Of serv er
Figure 6 : Graph for matrix multiplication experiment
Figure 6 shows the processing time for matri x multiplic ation in PVM and RPC environment in
processing matrix 120x120. The graph shows that, when the number of servers increases, the
performance of matrix multiplication in RPC environment increases. O n the oth er hand, the
performance of matr ix mu ltiplicat ion in PV ,V1 environment decrease s w hen the number of serve rs
increases. One of the reasons why this phenomenon happe ns in PVM enviro nment is because the
commu nication overhea d outn umbers the computat ion overhead. This happens beca use a very
small amount of data is served by many ser vers.
The cxpcnmcnr using matri x multiplic ation program cannot be continued further because this
program cannot be executed to process size of matri x morc than 120x120 Further work can be
done to improve this program to enable it to process bigger matrix size .
As discussed, a concl usion is made that, PVM has high commumcaucn overhead compa re to
RPC. This result is obtained from the experiment co nducted using broadcast operation program.
However, the experime nt result is not consistent during the experiment. This is because the
laboratory that is being used to run the experiment is an open access laboratory. Use rs from the
remote site can login to one of these computers and use any resource available. To overcome this
problem, an isolated laboratory should be used 10 run the experiment or the test should be run
many more times in order 10 get a consistent result. In this work, 10 expenmen ts are conducted
and the average result is taken. Thi s is to ensure that the result obtained from the experiment is
valid and can be used 10 evalu ate the performance of the environments.
6,Condu!>ion aml Reco mmendatio n
In recent years, studies have sho wn that clusters of workstations have the potential of solving very
large-scale problems. A number of programming environm ents for such platforms have recently
emerged. They can simulate a cluster of workstations as a virtual parallel computer, and can
perform communication across multiple homogeneous and heterogeneous para llel machines.
However the overhead occ urs in this en vironment will give big impact to their performance.
In this work, the experiment of com paring the perform ance of PV M and RPC has been
conducted. The performance study was carr ied out on a c luster of SUN workstations connected by
an Ethernet network The summary of the results obtained from the experiment is that, the PY M
environment has a higher communication overhead compared to RPC en vironment.
Communicat ion overhead of PVM environment increase d whe n the number of workstations
increased. This would ind irectly affect the overall performance of PYM operation. On the other
hand, communication overhead in RPC en viro nment was very consistent even though the number
of workstation increase d Meanwhile, it is clearly shown that the computation overhead for RPC
environment is low compared to PVM environme nt. This conclus ion is made based on the
experiment conducted usmg prime number and matrix multiplica tion application.
Further works arc recommended for improving the evaluation of the performance of the
env ironments. Instead of conduc ting the experiments on a cluster of SUN workstations connected
by an Ethernet platform, it can be done on multiple platforms such as an Intel parallel computer, a
cluster of HI' workstations, etc. Also, different languages such as FORT RAN can be used instead
of C language. In this work only three app licat ions arc used that are broadca st operat ion, prime
number and matrix multiplication algorithms. To ma ke the evaluation more reliable, more
Jilid IS,El i!. 1 (Jun 2006)
Jum al Tckn ologi Maklumat
44
applications arc recommended such as one-to-one communication, exchange operatio n, global
communication, complete exchange. gaussian elimination and to optimise the coding of the
application programs. This is 10 ensure that the per formance of the environments is evaluated
efficiently.
Referen ces
[1)
Be ll, G., Uhracomputers a terafl op bef ore it'. time. Journal of Communication. AC~ 35
(8 ). pp . 27-4 7, 1992
[2)
Ikguclin, A., Dongarra, J., Geist, A . Manchck, R.• Scuderam. V., Parad igms w,d toolsJOI'
Heterogeneous Net work Computing. 1992.
[31
Ahmad. I., Express versus !' VM : A performan ce compa rison. l oumal o f Parallel
Comput ing. 23(6). pp 783-812., 1997.
[4 1
G eist, A, Adam, H, Jilek. D.• Wcichcng, J. Robe n , M. and S undcrum, V, PVMJ User 's
Guide and Ref erence MUIJlIOI. Tennessee. 03k Ridge Natio nal Labor atory, 199 -1
(5 J
S un Micro systcms, Inc. ONC+ De veloper's Guide. C alifor nia. SunSoft. 1995
{6]
C halmers, A. and T id mus, T . Practical Parallel Processing: A n Introduction fa Problem
Sol ving ill Para liel., Lo ndon, Intern ationa l Th omson P ublishing Inc. J 9%
(7]
C o ulo uris, G . Dolhm ore, J. Kindbcrg, T. [)is/ril>lltcd System Concepts and De sign. Reading
Ad dison-\Vesic y. 1994
[8J
Tanenbaum, A. Distnbuted Operating Sy stems. New Jerse y. Prcnncc Hall Internationa l, Inc
19'-)5
19]
M ullcndcr. S. Distrib uted Sy stems, Reading. Add ison- Wes ley. 199 5
[ IOj S lo man, M . and Kramer, J.. Distributed Sy stems IIm/ Computer Netwo rks., Lo ndon. Prentice
Hall Intern ational, Inc. 198 7
[ I IJ Mullcndcr, s. Distributed Sy ste ms . Rcadmg. Addi son-We sley. 1989
[12J Parason C orpora tion. Express Introduc tory Guidi? version 3.2. 1992
[ 13] Brown , C. Distributed Programming. London. Prentic e Hall lntcm auoo al, Inc,
(14 ) Zo maya, A Y. Parattel Computing: Paradigms and App /ieati oll, Londo n. Internationa l
Thomson Computer Press . 1996
[ 15 J Fatoo hi, R. I'erformance Evaluation of Commu nication Nel"If,'o rks fo r Distributed
Comp uting. Proce edin g's of International Confer ence on Co mputer Com munication ar.d
Netw orks, pp . 4 56-459 . 199 5
( 16) Janusz, K. rVA! : Parallel Virtual Machin(? A Users ' Guide and Tutorial for Networked
Parallel Computing . Ml'T Press. 1994
( 17) Liu, Y and Hoang, D.D. OSI RPC Mudd
C omm unicatio n. Vol 17 No. I . pp. 53 ·65.1994
and Protocol. JOIJrn31 of Com puter
(18] Martin, T. P. Macleod, I. A. and Nordin, B. Remote I'rored nre Call Facility For A I'C
Environment. Journal of C omputer Com munication. Vol 12. 1'0. I. pp. J 1-39. 1989
•
Jilid 18,Bi l. I (J un 2006 )
Jumal Tck nologi Maklumat
4S
( 19J Rauch, W., Distrib uted Ope" Systems Engineering :'O
Wto plan and develop Clien t/Se rve r
syslt'ms., New York, Wiley Computer Publishmg 1991J
[20] Taylor, S. Parallel Logic Progra mming Techniq ues , London. Prentice-Hall Internat ional,
Inc. 1989
[21] Quinn, M. J. Parallel Computing . Theory and Prod/ceo New York. Mcflr aw-Hrll, Inc. 1994
[221 Geist, A. and Sunderam. V, Network-Rased Concurrent Computing on The PVM iystem.
Journal of Concurrency . Practice and Experience. No. 4. Part 4 , pp. 293-3 11. 1992
[231 Krishnamurthy, E. V. Parallel Processing
Wesley. 1989
Principle and Practice. Reading. Addison-
{24] Stevens, W. R. UNIX Network Programming. London. I'rcnnce-Halfl mem auonal. Inc. 1990
P SI Michael, C. and Denis. T. Parallel Algorithms and Architecture . London International
Thomson Computer Press. 1995
[26} Kolman, B. and Hill, D,R, Elementary Linear Algebra. 7'· Frfiticn. Prentice Hall
International, Inc, 2000
[27) The Penguin Dict ionary of Mathematics 2"d Ediucn . Edited by DaVId Nelson. Penguin
Books Ltd. 1998
Jilid I S,BiL I (Jun 2006)
Jurnal Te knologr Maktumat
Download