Return to search

Leveraging multicore processors for scientific computing

This thesis deals with how to develop scientific computing software that runs efficiently on multicore processors. The goal is to find building blocks and programming models that increase the productivity and reduce the probability of programming errors when developing parallel software. In our search for new building blocks, we evaluate the use of hardware transactional memory for constructing atomic floating point operations. Using benchmark applications from scientific computing, we show in which situations this achieves better performance than other approaches. Driven by the needs of scientific computing applications, we develop a programming model and implement it as a reusable library. The library provides a run-time system for executing tasks on multicore architectures, with efficient and user-friendly management of dependencies. Our results from scientific computing benchmarks show excellent scaling up to at least 64 cores. We also investigate how the execution time depend on the task granularity, and build a model for the performance of the task library. / UPMARC / eSSENCE

Identiferoai:union.ndltd.org:UPSALLA1/oai:DiVA.org:uu-181266
Date January 2012
CreatorsTillenius, Martin
PublisherUppsala universitet, Avdelningen för beräkningsvetenskap, Uppsala universitet, Tillämpad beräkningsvetenskap
Source SetsDiVA Archive at Upsalla University
LanguageEnglish
Detected LanguageEnglish
TypeLicentiate thesis, comprehensive summary, info:eu-repo/semantics/masterThesis, text
Formatapplication/pdf
Rightsinfo:eu-repo/semantics/openAccess
RelationIT licentiate theses / Uppsala University, Department of Information Technology, 1404-5117 ; 2012-006

Page generated in 0.0026 seconds