next up previous contents
Next: 6.1.1 Programski modeli PVM Up: 6 Paralelni navidezni racunalnik Previous: 6 Paralelni navidezni racunalnik Vsebina: contents

6.1 Znacilnosti PVM

Sele v zadnji verziji sistem PVM omogoca razvoj paralelnih programov, tako za model masivnih paralelnih procesorjev, kot tudi distribuirani model. Razvoj programov je mozen v jezikih C, C++ in Fortran. Omenjeni jeziki so tudi najbolj razsirjeni in primerni za razlicne namene. Knjiznice so izvedene v obliki funkcij, ki vracajo status uspesnosti izvrsitve posamezne funkcije. To je obicajna praksa tudi v drugih knjiznicah, saj se pri vsaki funkciji lahko zgodi, da se ne konca uspesno zaradi razlicnih vzrokov, ki so pogojeni s komunikacijo po mrezi in drugimi omejitvami v sistemskih virih racunalnika. Za Fortran so knjiznice izvedene v obliki podprogramov in ne kot funkcije, kar povzroca nekaj vec tezav pri kontroliranju uspesnosti izvrsitve klicanega podprograma. Osnovne znacilnosti sistema PVM so:

Programski model PVM ustreza von Neumanovemu modelu navideznih racunalnikov. Osnovne enote v PVM obdelave so procesi (tasks). Vsak proces je odgovoren za del racunske obremenitve. Mozne so razdelitve po funkcijah, kjer procesi izvajajo razlicne naloge. Vsak proces zna opravljati le nekatere naloge. Bolj pogosta delitev pa je delitev podatkov, kjer vsak proces dobi za nalogo resitev podproblema. V tem modelu so vsi procesi enaki, operirajo le z razlicnimi podatki. Tak programski model je znan pod imenom SPMD (Single Program Multiple Data). Po resitvi podproblemov se delni rezultati vseh procesov zdruzijo in tvorijo resitev prvotnega problema. Primer racunskega modela PVM je prikazan na sliki 6.1. Razvidni so trije procesi (SPMD), ki imajo vsak svoje podatke. Razdelitev dela med procese je vnaprej razdelil glavni proces (master). Delavci (workers ali slaves) pa med seboj sodelujejo s ciljem dosege delnih rezultatov, ki se na koncu zdruzijo v koncni rezultat.

 

 

Slika 6.1: Racunski model PVM





Copyright © 1995 Leon Kos, Univerza v Ljubljani