ПредишенСледващото

1.6 Паралелно Virtual Machine (PVM)

В основата на компютърната среда на клъстер Беоулф е паралелна virutalnaya машина PVM. PVM (Parallel Virtual Machine) - софтуерен пакет, който ви позволява да използвате локална мрежа свързан набор от разнородни компютри, работещи на операционната система Unix, като един голям паралелен компютър. По този начин, проблемът с голям изчисление може да бъде много ефективно решен с помощта на общата мощност и паметта на много компютри. PVM софтуерен пакет, лесен за носене на всяка платформа. Изходният код, с отворен код netlib, е бил съставен на компютри, вариращи от лаптоп преди CRAY.

Паралелно с виртуална машина може да се дефинира като част от средствата за системата за недвижими компютрите (процесори, памет, периферни устройства и т.н.) за изпълнение на множество задачи, свързани с получаването общия резултат на изчисление. Като цяло, броят на задачите може да надвишава броя на процесорите, включени в PVM. В допълнение, съставът може да включва PVM доста различни компютри, които не са съвместими за системни команди и формати за данни. С други думи, Parallel Virtual Machine може да бъде както на отделните компютри и локална мрежа, която включва суперкомпютри с паралелна архитектура, мейнфрейм компютри, графични работни станции и всички от една и съща малка мощност PC. Важното е да бъдат включени в PVM компютърни съоръжения е имало информация в софтуера, използван в PVM. С този софтуер, потребителят може да се предположи, че той е свързан с компютър, в който е възможно паралелно изпълнение на множество задачи.

PVM позволява на потребителите да използват съществуващия хардуер, за да се реши много по-сложни задачи с минимални допълнителни разходи. Стотици изследователски групи по целия свят използват PVM, за решаване на важни научни, технически и медицински проблеми, както и PVM използвани като образователно средство да преподават паралелно програмиране. В момента PVM се превърна в де факто стандарт за разпределени изчисления.

Основната цел на използването на PVM - е да се увеличи скоростта на компютрите поради тяхната паралелно изпълнение. Експлоатация на PVM въз основа на обмен на информация между механизми задачите, изпълнявани в своята среда. В това отношение най-удобния за изпълнение в рамките на PVM многопроцесорна компютърна система, избор на виртуална машина няколко процесора и общи или индивидуални (в зависимост от условията) на RAM. Използване PVM dospustimo като многопроцесорни компютри (SMP) и компютърните системи, конструирани от клъстер технология. При използване на PVM, като правило, което значително опростява проблема за бърз обмен на информация между задачи, както и проблема за съчетаването на представяне на данни формати между задачи, работи на различни процесори

Ефективното програмиране за PVM започва с факта, че алгоритъмът за изчисление трябва да се адаптира към състава на PVM и неговите функции. Това е много творческа задача, която в много случаи трябва да се реши от програмист. В допълнение към проблема за паралелни изчисления с необходимостта възниква и проблемът за задачи за координиране на процеса за контрол Computing - участниците в този процес. Понякога управление трябва да се създаде специална задача, която сама по себе не участва в изчисленията, предвижда последователна работа на други задачи - калкулатори.

По-рано бе споменато мимоходом, че в паралелни изчисления е необходимо да се програмира на конкретни действия за координиране на задачи, като се процеси задачи на преработвателите на клъстера, управление на обмена на данни между задачи, и така нататък. Също така трябва да бъдат ясно определени "сфера на дейност" за всяка задача.

Най-простият и най-популярен начин да се организира паралелно сметка е както следва. Първо тече една задача (магистър), който е в колективната задача ще бъде да играе като фокусна точка на работа. Този проблем прави някои подготвителни стъпки, като например инициализация на началните условия, а след това се изпълнява и други задачи (роби), които могат да бъдат или един и същ изпълним файл, или различни изпълними. Такова изпълнение за предпочитане паралелни изчисления на усложнение изчислителни управление процес логика, както и алгоритми, прилагани в различни задачи се различават значително или има голямо количество операции (например, вход - изход) служи процес изчисление като цяло.

1.6.1 PVM задачи Взаимодействие

Системата за PVM, всяка задача работи на процесор, е обозначена с цяло число, наречено идентификатор задача (TID) и смисъла подобен на ID на процеса в Unix операционна система. PVM система автоматично поддържа уникалността на тези идентификатори: копие на един изпълним файл, който върви паралелно с N процесори PVM, създаване N задачи с различна три пъти дневно.

Според приетия стандарт в PVM за комуникационни задачи се смята, че в рамките на PVM всяка задача може да изпраща съобщения до всяка друга задача, както и размера и броя на тези съобщения не са ограничени изобщо. Това предположение значително опростява изпълнението на PVM по конкретни компютърни системи, тъй като с устройства с препълване на буфера и контрол масиви е отговорен за операционни системи и едно допълнително грижи се отстранява от програмист.

За да се подобри ефективността на обмен между прилагане на информация, предоставена за ползване на множество алгоритми. По-специално, може да се използва алгоритъм блокиран предаване с които функцията "Изпрати съобщение" връща (т.е. завършва) само след получено положително или отрицателно потвърждение от получателя на съобщението. Такъв алгоритъм предаване с DSN на очакване за предпочитане в случаите, когато дълго съобщение се предава на няколко порции, както и обмена на команди, последователността на които dorlzhna бъде строго фиксирани във времето.

При използване на неблокирани предаване на алгоритми и получаване намалени при проблем процесори, предизвикани от очакването за реакция "събеседник". Особено голям ефект придава на приемащата страна при неизвестен час на пристигане на съобщението. Можете да организирате операция приемане на процесора, така че да е в очакване на съобщения може да бъде текущата работа, само от време на време избирателната получи буфер.

Essential е фактът, че съобщението за предаване последователност от една задача към друга процедура за получаване на съобщение винаги съвпада с реда на тяхното предаване. Освен това, ако преди да се приложи функцията "вземат съобщение" в получат буферни няколко съобщения, написани домакин задача, функцията "вземат съобщение", за да се върнете към първия полученото съобщение.

А памет за буфериране на предавателната масив и приемащата страна се разпределя динамично, следователно, максималното количество на съобщения се ограничава само от наличната памет. Ако една от задачите, изпълнявани на PVM, не може да се получи необходимата памет за комуникация с други задачи, той дава на потребителя по подходящ съобщение за грешка ( "не могат да получат памет"), но и други задачи на събитието не е уведомена и може, например, да продължи да я изпратите съобщение.

Информация за "Основни положения за паралелно програмиране на развитието на клъстерите и избираем курс" Администрация в информационни системи и управление на виртуални машини ""

Свързани статии

Подкрепете проекта - споделете линка, благодаря!