Témata prací (Výběr práce)Témata prací (Výběr práce)(verze: 368)
Detail práce
   Přihlásit přes CAS
Procedural code integration in streaming environments
Název práce v češtině: Integrace procedurálního kódu do proudových paralelních systémů
Název v anglickém jazyce: Procedural code integration in streaming environments
Klíčová slova: programovací prostředky; paralelní výpočty
Klíčová slova anglicky: programming environments; parallel computing
Akademický rok vypsání: 2013/2014
Typ práce: disertační práce
Jazyk práce: angličtina
Ústav: Katedra softwarového inženýrství (32-KSI)
Vedoucí / školitel: RNDr. David Bednárek, Ph.D.
Řešitel: skrytý - zadáno a potvrzeno stud. odd.
Datum přihlášení: 27.09.2013
Datum zadání: 27.09.2013
Datum potvrzení stud. oddělením: 05.02.2014
Datum a čas obhajoby: 11.06.2018 10:30
Datum odevzdání elektronické podoby:18.12.2017
Datum odevzdání tištěné podoby:15.12.2017
Datum proběhlé obhajoby: 11.06.2018
Oponenti: Prof. Dr. Andreas Krall
  Ing. Ivan Šimeček, Ph.D.
 
 
Zásady pro vypracování
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.
Seznam odborné literatury
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
 
Univerzita Karlova | Informační systém UK