Show simple item record

dc.contributor.advisorJančar, Petrcs
dc.contributor.authorBöhm, Stanislavcs
dc.date.accessioned2014-05-19T10:58:09Z
dc.date.available2014-05-19T10:58:09Z
dc.date.issued2014cs
dc.identifier.otherOSD002cs
dc.identifier.urihttp://hdl.handle.net/10084/101824
dc.descriptionImport 19/05/2014cs
dc.description.abstractThis thesis focuses on the development of applications for distributed memory systems in the area of scientific and engineering computations. The work addresses the problems inherent to rapid development of parallel applications and the complexity of tools used during their implementation. Herein, an abstract computation model for describing MPI (Message Passing Interface) applications is proposed. In the described topic of interest, MPI is the de facto API. The proposed approach is based on the usage of visual programming for expressing parallel aspects and communication in a developed application. The intention is not to create a complete program visually; rather, a user writes sequential parts of the application in C++ and puts them into the visual program. This allows simple modification of the communication structure and provides immediate visual feedback of the program's behavior through a visual debugger. An abstract model is also designed in a way that provides a unified view of activities that are used during development, including debugging, performance analyses, and verifications. While tools exist in all of these areas, they are usually single-purpose tools. In the proposed approach, all these activities are roofed by a single conceptual frame; everything from configurations to providing results of analyses uses one set of terms. The thesis makes the following contributions: It introduces the syntax and semantics of the visual language for describing parallel aspects and communication in applications for distributed memory systems. The semantics of the language is formalized and the usage of the language is demonstrated for various problems. These examples show that the sizes of diagrams describing the visual programs remain reasonably small for many practical parallel applications. Measurements show that the performance of the resulting programs is close to manually created C++ applications. Also, the features of the proposed approach may help in various ways in common activities that occur during development. The ideas presented in this thesis are implemented as a tool named Kaira (\url{http://verif.cs.vsb.cz/kaira/}); it is an open source tool released under GPL (GNU General Public License).cs
dc.description.abstractTato práce se zabývá vývojem aplikací pro systémy s distribuovanou pamětí v oblasti vědecko-technických výpočtů. Práce se zaměřuje na rychlý vývoj para\-lelních aplikací a integraci nástrojů používaných při vývoji. Navržený přístup je založen na abstraktním výpočetním modelu a vizuálním programování. Tyto prostředky slouží k vyjádření paralelismu a komunikaci ve vyvíjené aplikaci. Sekvenční části aplikace jsou psány přímo v C++ a tento kód je kombinován s~vizuálním modelem. Navržený přístup dovoluje jednoduchou manipulaci s~programem a umožňuje poskytnout přímočarou vizualizaci chování aplikace. Abstraktní model je také navržen za účelem sjednocení aktivit, které se objevují při vývoji aplikací: debugování, analýza výkonu, predikce výkonu a verifikace. Pro tyto aktivity existuje mnoho různých etablovaných nástrojů, které jsou mnohem vyzrálejší a nabízejí více funkcí než zde předkládaná implementace. Z~pohledu této práce se ale většinou jedná o~programy zaměřené pouze na jednu z oblastí. Navrhovaný přístup spojuje všechny tyto aktivity do jednoho myšlenkového rámce s jednotnou terminologií, konfigurací a prezentací výsledků. Hlavní přínosy této práce spočívají ve vytvoření syntaxe a sémantiky vizuálního jazyka pro popis paralelních částí a komunikace v aplikacích pro systémy s distribuovanou pamětí. Sémantika jazyka je plně formalizována a využití jazyka je demonstrováno na různých příkladech. Tyto příklady ukazují, že diagramy reprezentující program zůstávají relativně malé a přehledné při řešení různých praktických problémů. V této práci je dále ukázáno, že navržený přístup může sjednotit a zjednodušit mnoho různých činností objevujících se v souvislosti s vývojem softwaru v oblasti zájmu této práce. Prezentované myšlenky jsou implementovány v podobě nástroje Kaira (\url{http://verif.cs.vsb.cz/kaira/}). Kaira je uvolněna jako open-source nástroj pod GPL (GNU General Public License).en
dc.format124 s. : il.cs
dc.format.extent4265088 bytescs
dc.format.mimetypeapplication/force-downloadcs
dc.language.isocscs
dc.publisherVysoká škola báňská - Technická univerzita Ostravacs
dc.subjectparallel programming, distributed computing, MPI, debugging, performance analysis, visual programmingcs
dc.subjectparalelní programování, distribuované výpočty, MPI, debugování, analýza výkonu, visuální programováníen
dc.titleUnifying framework for development of message-passing applicationscs
dc.title.alternativeUnifying framework for development of message-passing applicationsen
dc.typeDisertační prácecs
dc.identifier.signature201400466cs
dc.identifier.locationÚK/Sklad diplomových pracícs
dc.contributor.refereeJakl, Ondřejcs
dc.contributor.refereeSchwoon, Stefancs
dc.contributor.refereeVojnar, Tomášcs
dc.date.accepted2014-03-13cs
dc.thesis.degree-namePh.D.cs
dc.thesis.degree-levelDoktorský studijní programcs
dc.thesis.degree-grantorVysoká škola báňská - Technická univerzita Ostrava. Fakulta elektrotechniky a informatikycs
dc.description.categoryPrezenčnícs
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.senderS2724cs
dc.identifier.thesisBOH126_FEI_P1807_1801V001_2014
dc.rights.accessopenAccess


Files in this item

This item appears in the following Collection(s)

Show simple item record