Thesis (Selection of subject)Thesis (Selection of subject)(version: 390)
Thesis details
   Login via CAS
Procedural code integration in streaming environments
Thesis title in Czech: Integrace procedurálního kódu do proudových paralelních systémů
Thesis title in English: Procedural code integration in streaming environments
Key words: programovací prostředky; paralelní výpočty
English key words: programming environments; parallel computing
Academic year of topic announcement: 2013/2014
Thesis type: dissertation
Thesis language: angličtina
Department: Department of Software Engineering (32-KSI)
Supervisor: RNDr. David Bednárek, Ph.D.
Author: hidden - assigned and confirmed by the Study Dept.
Date of registration: 27.09.2013
Date of assignment: 27.09.2013
Confirmed by Study dept. on: 05.02.2014
Date and time of defence: 11.06.2018 10:30
Date of electronic submission:18.12.2017
Date of submission of printed version:15.12.2017
Date of proceeded defence: 11.06.2018
Opponents: Prof. Dr. Andreas Krall
  Ing. Ivan Šimeček, Ph.D.
 
 
Guidelines
Software engineering leaders repeatedly express alarm about the inability of the software industry to extract the full power of today's computing hardware. Studies show that an average programmer produces code 20- to 50-times slower than the code created by an expert programmer specialized in parallel programming. This gap is caused by the inherent complexity of parallel programming, the algorithmic complexity of code optimization, and also by the absence of suitable parallel programming languages or programming environments in general.

On the other hand, there are domains where non-expert programmers are able to produce competitive parallel code, like numerical mathematics working around FORTRAN or electronic design based on SystemC. This fact suggests that parallel-programming environments shall be tailored for individual application domains.

This thesis is focused on experiments with parallel-programming languages and environments in the area of scientific computing. While the numerical part of the area is solved sufficiently, there are many other domains where the scientific software, created by experts in the domain but non-experts in parallel programming, still suffers from the abovementioned performance gap. For instance, the machine learning area attracts many experimenters who may be experts in the area of a particular machine-learning approach like genetic algorithms or decision trees but lack the necessary deep knowledge in parallel computing.

The goal of this thesis is the estimation of the typical performance gap in selected scientific computing domains, reengineering selected methods of the domains using various parallel-programming methodologies, comparing their effectiveness, and tailoring parallel-programming environments for the domains.
References
Nadathur Satish, Changkyu Kim, Jatin Chhugani, Hideki Saito, Rakesh Krishnaiyer, Mikhail Smelyanskiy, Milind Girkar, and Pradeep Dubey. 2012. Can traditional programming bridge the Ninja performance gap for parallel computing applications?. In Proceedings of the 39th Annual International Symposium on Computer Architecture (ISCA '12). IEEE Computer Society, Washington, DC, USA, 440-451.

Kaushik Datta. 2009. Auto-Tuning Stencil Codes for Cache-Based Multicore Platforms. Ph.D. Dissertation. University of California at Berkeley, Berkeley, CA, USA. Advisor(s) Katherine A. Yelick. AAI3411221.

Roland Leißa, Sebastian Hack, and Ingo Wald. 2012. Extending a C-like language for portable SIMD programming. In Proceedings of the 17th ACM SIGPLAN symposium on Principles and Practice of Parallel Programming (PPoPP '12). ACM, New York, NY, USA, 65-74. DOI=10.1145/2145816.2145825 http://doi.acm.org/10.1145/2145816.2145825
 
Charles University | Information system of Charles University | http://www.cuni.cz/UKEN-329.html