Efektivní implementace vysoce náročných algoritmů na vícejádrových procesorech - Tomečko, Lukáš (Vysoké učení technické v Brně. Fakulta informačních technologií, 2016)
Cieľom tejto práce je paralelizovať a vektorizovať simuláciu toku kvapalín. Dosiahne sa to pomocou knižnice OpenMP a prekladaču od Intelu. Implementované boli rôzne prístupy k problému, ako napr. cache blocking, zoraďovanie dát počas behu a dočasné reorganizovanie dát v pamäti. Skombinovaním najrýchlejších riešení sa podarilo simuláciu celkovo zrýchliť 11,4krát na 16 jadrách, pričom testy prebiehali na ostravskom superpočítači Anselm. Výsledky ukazujú, že výsledná aplikácia dobre škáluje s pribúdajúcim počtom jadier. Ďalej, vektorizovanie daného problému bolo možné len čiastočne z dôvodu nevhodného spôsobu práce s dátami.

This thesis describes the process of parallelization and vectorization of fluid simulation using OpenMP library and Intel compiler. Various approaches were tried e.g. cache blocking, data sorting and data reorganization. By combining the best of them, final application preformed 11.4 times faster than the original one, using 16 cores. Benchmarks show that used algorithms are not suitable for vectorization.
Efficient Implementation of High Performance Algorithms on Multi-Core Processors
Keywords: paralelizácia; vektorizácia; OpenMP; simd; Intel; SPH; simulácia; násobenie matíc; parallelization; vectorization; OpenMP; simd; Intel; SPH; simulation; matmul