Vad är en parallell virtuell maskin?
En parallell virtuell maskin är en mjukvaruapplikation som tillåter flera oberoende datorer, geografiskt spridda för att ansluta till varandra som ett nätverk och låna deras systembearbetningskraft och minne till en applikation.
Förändringen i tillverkningskostnader och hemmadatorns popularitet har resulterat i en ökning av överkomliga priser för mycket kraftfulla datorer på konsumentmarknaden. Dessa maskiner är underutnyttjade med sina vanliga mjukvaruapplikationer, vilket lämnar en mängd processorkraft fri. Parallell virtuell maskinprogramvara gör det möjligt att samla dessa resurser för att lösa stora, komplexa vetenskapliga, medicinska eller industriella problem.
Den parallella virtuella maskinen skapades först 1989 på Oak Ridge National Labs av Al Geist. Baserat på arbetet där utvidgades projektet vid University of Tennessee i mars 1991 och har vuxit stadigt sedan dess.
Ett parallellt virtuellt maskinsystem har två delar, applikationen som sitter på de enskilda maskinerna och biblioteket med gränssnittsrutiner. Programvaran kallas parallell virtuell maskin daemon, pvmd3 eller pmvd. Detta lilla program sitter passivt tills det krävs för att köra en parallell virtuell maskinapplikation. När användaren vill köra denna typ av program måste de först starta den parallella virtuella maskinen. Detta ger dem tillgång till programvaran på någon annan värd.
Det parallella virtuella maskinrutinbiblioteket innehåller en komplett lista över alla koder som krävs för att samordna olika uppgifter som körs på separata värdar. I detta bibliotek ingår standardrutiner för meddelandeöverföring, samordning av uppgifter och eventuella ändringar av själva den virtuella maskinen.
Kärnbegreppet bakom den parallella virtuella maskinen är att alla applikationer har flera uppgifter som kan köras oberoende. Denna typ av logik är mycket vanligt är komplexa vetenskapliga beräkningar. Det finns två modeller som används i parallella virtuella maskiner; funktionella och dataparallalism.
Funktionella paralleller separerar en applikation i klart definierade, oberoende uppgifter. Dessa uppgifter utförs på separata värdmaskiner. Den parallella virtuella maskinen används för att koordinera baserat på funktionerna, såsom ingång, lösning, utgång och display.
Dataparallellism eller SPMD är den populäraste metoden. I den här metoden är alla uppgifter lika, men varje värd löser en liten bit av det större pusslet. En parallell virtuell maskinmiljö stöder båda metoderna, vilket är viktigt eftersom det kan vara mest effektivt att blanda dessa två metoder beroende på beräkningar som krävs.
C, C ++ och Fortran är datorprogrammeringsspråk som används i den parallella virtuella maskinen. Dessa språk valdes eftersom de flesta applikationer som används i den här miljön byggdes på dessa språk. Källkoden för parallell virtuell maskinprogramvara är allmänt tillgänglig på internet och kan nås via ftp, www, xnetlib eller en automatisk e-post.