Zobrazit minimální záznam

dc.contributor.advisorJančar, Petr
dc.contributor.authorŠurkovský, Martin
dc.date.accessioned2020-07-21T06:11:23Z
dc.date.available2020-07-21T06:11:23Z
dc.date.issued2019
dc.identifier.otherOSD002
dc.identifier.urihttp://hdl.handle.net/10084/141718
dc.description.abstractThe thesis focuses on analysis of communication within distributed applications. More precisely, the thesis presents an idea of extracting an abstract model of communication from applications using Message Passing Interface (MPI). The goal is to provide a different view on the communication, a view that emphasizes its spatial character which is rather hidden in sequential (textual) form of written code. All this is done in a fully automatic way without the need of any modification in the analyzed code. There are tools and methods that can help developers to get a better insight into the communication done during the run of distributed program. Nevertheless, these are mostly based on dynamic approaches, i. e., probe an application, measure data during its run, and provide analyses and/or visualizations of them. An idea of using a kind of an abstract model to describe communication within MPI applications comes from the author’s previous work on the project Kaira (https://github.com/spirali/kaira). It uses a form of visual language to specify the structure of communication within a developed application. In this thesis a similar approach is used but turned upside down. Instead of specifying the structure of communication visually, and generate MPI code from it, an abstract model of communication is extracted from the code of an MPI application. To the author’s best knowledge, there is no other tool that would statically analyze code of MPI applications and visualize the communication in a similar way. There are static analyzers that generate kinds of graphs based on applications’ codes, but these focus on different aspects of programs that are not necessarily parallel or distributed. One of the main contributions of this work is a formally defined abstract model of communication called MP net. The model is strongly inspired by high-level Petri nets, particularly Coloured Petri net (CPN). The main idea is to use MP net as a comprehensible way of presenting the actual structure of communication within MPI applications. The aim is to provide users with the kind of feedback that can help them to quickly check whether or not the actual communication within their application corresponds to the intended one. As the errors in communication can be fairly difficult to identify, viewing the communication from a different perspective can be very useful. The second contribution is a tool that implements the presented ideas. The tool is called Morpheus and it is available at https://github.com/msurkovsky/morpheus. The practical usage of the tool is demonstrated on several case studies.en
dc.description.abstractTato disertační práce se zabývá analýzou komunikace vyskytující se v aplikacích používaných v rámci distribuovaných systémů. Přesněji tato práce představuje myšlenku extrakce abstraktního modelu komunikace z aplikací napsaných s použitím Message Passing Interface (MPI). Cílem je poskytnout jiný pohled na tento druh komunikace, pohled který zvýrazní prostorový charakter komunikace. Ten je v případě lineárního (textového) zápisu kódu spíše potlačen. Celý proces je navržen jako plně automatický bez nutnosti modifikace analyzovaného kódu. Samozřejmě existují nástroje a metody které mohou pomoci vývojářům získat lepší vhled do komunikace, ke které dochází během běhu distribuovaného programu. Nicméně, tyto přístupy jsou vesměs založeny na dynamické analýze běhu aplikace, tzn. že do aplikace je přidán speciální kód, který sbírá určité informace během běhu programu a následně takto získaná data analyzuje a případně vizualizuje. Myšlenka použít určitý druhu abstraktního modelu pro popis komunikace vyskytující se v MPI aplikacích pochází z doby, kdy se autor podílel na vývoji nástroje Kaira (https://github.com/spirali/kaira). Ta používá speciálně navržený vizuální jazyk pro popis struktury komunikace v rámci vyvíjené aplikace. V této disertační práci je použit podobný přístup, avšak “převrácen vzhůru nohama”. Namísto použití vizuálního jazyka pro popis komunikace, z kterého je posléze vygenerován MPI kód, obdobný abstraktní model je extrahován přímo z kódu existující MPI aplikace. Podle nejlepších znalostí autora neexistuje nástroj, který by dělal podobnou statickou analýzu kódu MPI aplikací a zobrazil komunikaci podobným způsobem. Samozřejmě, že existují nástroje, které na základě statické analýzy kódu generují různé druhy grafů. Nicméně tyto nástroje se zaměřují na jiné aspekty analyzovaných programů, ne nutně paralelních ani distribuovaných. Jeden z hlavních příspěvků této práce je formálně definovaný abstraktní model komunikace, pojmenovaný MP sít’. Tento model je silně ovlivněn vysoko úrovňovými Petriho sítěmi, zejména pak barevnými Petriho sítěmi. Ústřední myšlenkou této práce je použití MP sítí jako relativně snadno pochopitelného způsobu vizualizace struktury komunikace popsané v MPI aplikacích. Cílem je nabídnout uživatelům formu zpětné vazby, která jim může pomoci rychle ověřit, zda struktura komunikace aktuálně zapsána v rámci jejich aplikace odpovídá té, kterou zamýšlí. Vzhledem k tomu, že chyby v komunikaci jsou ty, které se nejhůře hledají, tak pohled na komunikaci z jiného úhlu pohledu může být velice užitečný. Druhým příspěvkem této práce je nástroj, v rámci něhož jsou implementovány prezentované myšlenky. Tento nástroj se jmenuje Morpheus a je zpřístupněn na GitHubu (https://github.com/msurkovsky/morpheus). Praktické použití tohoto nástroje je demonstrováno na několika příkladech.cs
dc.format89 stran : ilustrace + 1 CD-R
dc.format.extent4091932 bytes
dc.format.mimetypeapplication/pdf
dc.language.isoen
dc.publisherVysoká škola báňská - Technická univerzita Ostravacs
dc.subjectDistributed systemsen
dc.subjectMP netsen
dc.subjectAbstract model of communicationen
dc.subjectMessage Passing Interfaceen
dc.subjectMPIen
dc.subjectStatic code analysisen
dc.subjectMorpheusen
dc.subjectDistribuované systémycs
dc.subjectMP sítěcs
dc.subjectAbstraktní model komunikacecs
dc.subjectMessage Passing Interfacecs
dc.subjectMPI Statická analýza kóducs
dc.subjectMorpheuscs
dc.titleExtraction of abstract models of communications from message-passing applicationsen
dc.title.alternativeExtrakce abstraktních modelů komunikace z message-passing aplikacícs
dc.typeDisertační prácecs
dc.identifier.signature202200017
dc.identifier.locationÚK/Sklad diplomových prací
dc.contributor.refereeRogalewicz, Adam
dc.contributor.refereeŘehák, Vojtěch
dc.contributor.refereeSawa, Zdeněk
dc.date.accepted2020-01-21
dc.thesis.degree-namePh.D.
dc.thesis.degree-levelDoktorský studijní programcs
dc.thesis.degree-grantorVysoká škola báňská - Technická univerzita Ostrava. Fakulta elektrotechniky a informatikycs
dc.description.department460 - Katedra informatikycs
dc.thesis.degree-programInformatika, komunikační technologie a aplikovaná matematikacs
dc.thesis.degree-branchInformatikacs
dc.description.resultvyhovělcs
dc.identifier.senderS2724
dc.identifier.thesisSUR096_FEI_P1807_1801V001_2019
dc.rights.accessopenAccess


Soubory tohoto záznamu

Tento záznam se objevuje v následujících kolekcích

Zobrazit minimální záznam