Hvad er en parallel virtuel maskine?
En parallel virtuel maskine er en softwareapplikation, der tillader flere uafhængige computere, der er spredt geografisk for at oprette forbindelse til hinanden som et netværk og låne deres systembehandlingsstyrke og hukommelse til en applikation.
Skiftet i produktionsomkostninger og populariteten af hjemmecomputeren har resulteret i en stigning i overkommeligheden af meget stærke computere på forbrugermarkedet. Disse maskiner er underudnyttet med deres standard softwareapplikationer, hvilket efterlader et væld af processorkraft fri. Parallel virtuel maskinsoftware gør det muligt at samle disse ressourcer og få adgang til dem til at løse store, komplekse videnskabelige, medicinske eller industrielle problemer.
Den parallelle virtuelle maskine blev først oprettet i 1989 på Oak Ridge National Labs af Al Geist. Baseret på arbejdet der blev projektet udvidet på University of Tennessee i marts 1991 og er vokset støt siden da.
Et parallelt virtuelt maskinsystem har to dele, applikationen, der sidder på de enkelte maskiner og biblioteket med interfacerutiner. Softwareapplikationen kaldes den parallelle virtuelle maskindæmon, pvmd3 eller pmvd. Dette lille program sidder passivt, indtil det kræves for at køre en parallel virtuel maskinapplikation. Når brugeren ønsker at køre denne type program, skal de først starte den parallelle virtuelle maskine. Dette giver dem adgang til softwaren på enhver anden vært.
Det parallelle rutinebibliotek med virtuel maskine indeholder alle en komplet liste over alle koder, der er nødvendige for at koordinere forskellige opgaver, der køres på separate værter. Inkluderet i dette bibliotek er standardrutiner til videregivelse af meddelelser, koordinering af opgaver og eventuelle ændringer af selve den virtuelle maskine.
Kernekonceptet bag den parallelle virtuelle maskine er, at enhver applikation har flere opgaver, der kan køres uafhængigt. Denne type logik er meget almindelig er komplekse videnskabelige beregninger. Der er to modeller anvendt i parallelle virtuelle maskiner; funktionelle og dataparallelementer.
Funktionelle parallelismer adskiller en applikation i klart definerede, uafhængige opgaver. Disse opgaver udføres på separate værtsmaskiner. Den parallelle virtuelle maskine bruges til koordinering baseret på funktionerne, såsom input, løsning, output og display.
Dataparallelitet eller SPMD (single program multiple data) er den mere populære metode. I denne metode er alle opgaver lige, men hver vært løser et lille stykke af det større puslespil. Et parallelt virtuelt maskinmiljø understøtter begge metoder, hvilket er vigtigt, da det kan være mest effektivt at blande disse to metoder afhængigt af de nødvendige beregninger.
C, C ++ og Fortran er de programmeringssprog, der bruges i den parallelle virtuelle maskine. Disse sprog blev valgt, fordi de fleste af de applikationer, der blev brugt i dette miljø, var bygget på disse sprog. Kildekoden til parallel virtuel maskinsoftware er bredt tilgængelig på internettet og kan fås via ftp, www, xnetlib eller en automatisk e-mail.