|
Employing GPUs in Global Optimization Problems
Hošala, Michal ; Kruliš, Martin (advisor) ; Brabec, Michal (referee)
The global optimization problem -- i.e., the problem of finding global extreme points of given function on restricted domain of values -- often appears in many real-world applications. Improving efficiency of this task can reduce the latency of the application or provide more precise result since the task is usually solved by an approximative algorithm. This thesis focuses on the practical aspects of global optimization algorithms, especially in the domain of algorithmic trading data analysis. Successful implementations of the global optimization solver already exist for CPUs, but they are quite time demanding. The main objective of this thesis is to design a GO solver that utilizes the raw computational power of the GPU devices. Despite the fact that the GPUs have significantly more computational cores than the CPUs, the parallelization of a known serial algorithm is often quite challenging due to the specific execution model and the memory architecture constraints of the existing GPU architectures. Therefore, the thesis will explore multiple approaches to the problem and present their experimental results.
|
|
Assisted Code Vectorization and Parallelization Using the OpenMP 4.0 Standard
Slouka, Lukáš ; Nikl, Vojtěch (referee) ; Jaroš, Jiří (advisor)
The subject of the bachelor's thesis is code optimization using the OpenMP 4.0 standard which provides tools for assisted parallelization and vectorization. In addition to the descrip tion of the OpenMP 4.0 standard, the thesis as well contains an insight into architectures of modern computers, specifically the system of cache memories and SSE/AVX modules that play a major role in the optimization field. The thesis demonstrates advantages of optimized code compared to unoptimized version on a set of benchmarks which are aimed at various aspects of optimization.
|
| |
|
General Processing on Graphics Processing Units for Industrial Systems
Lukačovič, Martin ; Mašek, Jan (referee) ; Krkoš, Radko (advisor)
The thesis deals with the abilities of graphics processors for GPGPU. It contains historical solutions to contemporary design. There are also described graphics processors from the largest manufacturers of this time, their focus and goals in the future. For algorithms implementation using GPU, there are necessary APIs that offer various possibilities of execution. In addition to the CPU and GPU universal heterogeneous computing, there are alternatives such as FPGA and DSP so it is necessary to consider the price and energy cost. Part of the work is devoted to the communication possibilities with the hardware and advanced memory approaches. For demonstrating parallel computing an implementation of matrix multiplication in OpenCL was realized.
|
|
GPGPU parallel computing
Pacura, Dávid ; Horák, Karel (referee) ; Petyovský, Petr (advisor)
The aim of this trim’s thesis is to reveal possibilities and demonstrate parallelization of computation on graphics processors. The paper presents descriptions of available development tools, and then one of them is selected to implement MD5 encryption algorithm and neural network for optical character recognition. Its performance is then compared to its parallel equivalent for conventional processors. In conclusion, problems encountered during development are described, and ways of avoiding them are discussed.
|