Název:
Simulace šíření tepla s časově proměnným zdrojem s využitím GPU
Překlad názvu:
Simulation of the Heat Diffusion with a Time-Varying Source on GPUs
Autoři:
Hála, Pavel ; Záň, Drahoslav (oponent) ; Jaroš, Jiří (vedoucí práce) Typ dokumentu: Bakalářské práce
Rok:
2014
Jazyk:
cze
Nakladatel: Vysoké učení technické v Brně. Fakulta informačních technologií
Abstrakt: [cze][eng]
Tato bakalářská práce se zabývá simulací šíření tepla v živých tkáních, které je dodáváno časově proměnným externím tepelným zdrojem. Simulace byla implementována pomocí metody konečných diferencí čtvrtého řádu v prostoru a prvního v čase. V rámci práce byla nejprve implementována vícevláknová verze využívající procesoru CPU. Následně bylo implementováno několik verzí pro grafickou kartu GPU s důrazem na maximální adaptaci algoritmu na danou architekturu a co nejlepší využít výpočetního potenciálu grafické karty. Experimentálním měřením se ukázalo, že nejrychlejší je naivní algoritmus využívající pouze globální paměť grafické karty. Dále byla zkoumána efektivita Gauss-Seidelovy obarvovací metody, jejíž cílem je redukce paměťové náročnosti. Na CPU se tato metoda ukázala použitelná, neboť její nejrychlejší verze byla pouze o 13% pomalejší, ale při použití této metody je možné snížit paměťovou náročnost až na polovinu. Implementace této metody na GPU byla 2x pomalejší a její přínos proto není tak velký. Na CPU bylo dosaženo maximálního výkonu 32GFLOPS zatímco na GPU 135GFLOPS. To odpovídá 10% (CPU) a 9% (GPU) maximálního teoretického výkonu obou architektur.
This bachelor's thesis deals with the simulation of the heat transfer inside human tissue injected by an external time varying heat source. The proposed implemented simulation is based on a 4th order in space and 1st order in time finite-difference time domain method. First, a multithreaded CPU version was implemented. Subsequently, several GPU accelerated versions were implemented taking into account architecture aspect of the GPU. The experimental results showed that the fastest GPU kernel was the naive one using only the GPU global memory. Next, the usefulness of the Gauss-Seidel's method was investigated. The CPU implementation of the method was evaluated as usable because of being only 13% slower while saving up to 50% of memory resources. However, the GPU implementation was twice as slow as the naive version mainly due to shared memory size limits. The peak performance in terms of GFLOPS reached 32 and 135 on CPU and GPU, respectively. This corresponds to 10% and 9% of the theoretical potential of given architectures.
Klíčová slova:
CUDA; Gauss-Seidelova metoda; metoda konečných diferencí; OpenMP; paralelizace; šíření tepla; CUDA; finite-difference time domain method; Gauss-Seidel method; heat transfer; OpenMP; parallelization
Instituce: Vysoké učení technické v Brně
(web)
Informace o dostupnosti dokumentu:
Plný text je dostupný v Digitální knihovně VUT. Původní záznam: http://hdl.handle.net/11012/56574