Zobrazit minimální záznam

N-Body simulation of planetary system



dc.contributor.advisorŠimeček Ivan
dc.contributor.authorKrutil Filip
dc.date.accessioned2017-04-25T17:39:26Z
dc.date.available2017-04-25T17:39:26Z
dc.date.issued2016-02-19
dc.identifierKOS-587864650405
dc.identifier.urihttp://hdl.handle.net/10467/68201
dc.description.abstractTato práce je zaměřená na optimalizaci kódu, který představuje simulaci pohybu těles, které mezi sebou gravitačne interagují, konkrétně byla k simulaci použita data představující sluneční soustavu. Neoptimalizovaný algoritmus byl napsán na základě Newtonova gravitačního zákona v jazyce C++ a poté optimalizován pomocí různých nastavení kompilátoru GCC, malými úpravami zdrojového kódu, ale i jeho rozsáhlejšími transformacemi jako je rozbalování cyklů, nebo způsob uložení dat v paměti. V neposlední řadě byl pak algoritmus paralelizován pro systémy s mnoha výpočetními jádry pro paralelní výpočty technologií OpenMP. Z přiložených zdrojových kódů je pak možné přeložit různé verze programu, podle použitých optimalizací od neoptimalizovaného až po nejrychlejší paralelní verzi programu pro 24 výpočetních vláken. Spuštěním takto přeloženého programu se vstupními daty představujícími stav sluneční soustavy v určitém čase, lze získat stav soustavy odpovídající stavu po uběhnutí určitého předem zvoleného času a tento vizualizovat v podobě 3D grafu vytvořeném pomocí nástroje Gnuplot.cze
dc.description.abstractThis thesis is focused on optimization of code representing celestial bodies movements which interacts by gravitational forces. In this case data representing Solar system was used for the simulation. Unoptimized algorithm is basicaly Newton's law of universal gravitation written in the C++ programming language which was then optimized by using different GCC compiler options, making small changes in the code, and also more extensive alterations such as cycle unrolling or the way how data was stored in the memory. Last but not least the algorithm was adapted for multicore systems for parallel computing by the OpenMP technology. It is possible to compile several versions of differently optimized or adjusted programs from attached source codes starting with a basic version and ending with the fastest 24 threads parallel version. By running this program with data representing Solar System in given time, it is possible to get a new system state after certain time given beforhand and vizualize the system by the Gnuplot tool in the form of a 3D graph.eng
dc.language.isoCZE
dc.publisherČeské vysoké učení technické v Praze. Vypočetní a informační centrum.cze
dc.publisherCzech Technical University in Prague. Computing and Information Centre.eng
dc.rightsA university thesis is a work protected by the Copyright Act. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one?s own expense. The use of thesis should be in compliance with the Copyright Act http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf and the citation ethics http://knihovny.cvut.cz/vychova/vskp.htmleng
dc.rightsVysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf a citační etikou http://knihovny.cvut.cz/vychova/vskp.htmlcze
dc.subjectC/C++, simulace pohybu planet, optimalizace, rozbalování cyklů, paralelizace, OpenMPcze
dc.subjectC/C++, planetary movement simulation, optimization, cycle unrolling, parallelization, OpenMPeng
dc.titleSimulace pohybu těles v planetárním systémucze
dc.titleN-Body simulation of planetary systemeng
dc.typebakalářská prácecze
dc.typebachelor thesiseng
dc.date.accepted2017-02-08
dc.contributor.refereeŠoch Michal
theses.degree.disciplineTeoretická informatikacze
theses.degree.grantorkatedra teoretické informatikycze
theses.degree.programmeInformatikacze


Soubory tohoto záznamu




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

Zobrazit minimální záznam