uu.seUppsala University Publications
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Scientific Computing on Multicore Architectures
Uppsala University, Disciplinary Domain of Science and Technology, Mathematics and Computer Science, Department of Information Technology, Division of Scientific Computing. Uppsala University, Disciplinary Domain of Science and Technology, Mathematics and Computer Science, Department of Information Technology, Computational Science.
2014 (English)Doctoral thesis, comprehensive summary (Other academic)
Abstract [en]

Computer simulations are an indispensable tool for scientists to gain new insights about nature. Simulations of natural phenomena are usually large, and limited by the available computer resources. By using the computer resources more efficiently, larger and more detailed simulations can be performed, and more information can be extracted to help advance human knowledge.

The topic of this thesis is how to make best use of modern computers for scientific computations. The challenge here is the high level of parallelism that is required to fully utilize the multicore processors in these systems.

Starting from the basics, the primitives for synchronizing between threads are investigated. Hardware transactional memory is a new construct for this, which is evaluated for a new use of importance for scientific software: atomic updates of floating point values. The evaluation includes experiments on real hardware and comparisons against standard methods.

Higher level programming models for shared memory parallelism are then considered. The state of the art for efficient use of multicore systems is dynamically scheduled task-based systems, where tasks can depend on data. In such systems, the software is divided up into many small tasks that are scheduled asynchronously according to their data dependencies. This enables a high level of parallelism, and avoids global barriers.

A new system for managing task dependencies is developed in this thesis, based on data versioning. The system is implemented as a reusable software library, and shown to be as efficient or more efficient than other shared-memory task-based systems in experimental comparisons.

The developed runtime system is then extended to distributed memory machines, and used for implementing a parallel version of a software for global climate simulations. By running the optimized and parallelized version on eight servers, an equally sized problem can be solved over 100 times faster than in the original sequential version. The parallel version also allowed significantly larger problems to be solved, previously unreachable due to memory constraints.

Place, publisher, year, edition, pages
Uppsala: Acta Universitatis Upsaliensis, 2014. , 47 p.
Series
Digital Comprehensive Summaries of Uppsala Dissertations from the Faculty of Science and Technology, ISSN 1651-6214 ; 1139
Keyword [en]
multicore, scientific computing, shared memory parallelism, task-based programming, parallel programming model, task scheduling, data versioning
National Category
Software Engineering Computational Mathematics
Research subject
Scientific Computing
Identifiers
URN: urn:nbn:se:uu:diva-221241ISBN: 978-91-554-8928-1 (print)OAI: oai:DiVA.org:uu-221241DiVA: diva2:708164
Public defence
2014-05-23, Room 2446, Polacksbacken, Lägerhyddsvägen 2, Uppsala, 10:15 (English)
Opponent
Supervisors
Projects
UPMARCeSSENCE
Available from: 2014-04-29 Created: 2014-03-26 Last updated: 2014-06-30Bibliographically approved
List of papers
1. Using hardware transactional memory for high-performance computing
Open this publication in new window or tab >>Using hardware transactional memory for high-performance computing
Show others...
2011 (English)In: Proc. 25th International Symposium on Parallel and Distributed Processing Workshops and PhD Forum, Piscataway, NJ: IEEE , 2011, 1660-1667 p.Conference paper, Published paper (Refereed)
Place, publisher, year, edition, pages
Piscataway, NJ: IEEE, 2011
National Category
Computer Science
Identifiers
urn:nbn:se:uu:diva-158551 (URN)10.1109/IPDPS.2011.322 (DOI)978-1-61284-425-1 (ISBN)
Conference
IPDPS Workshop on Multi-Threaded Architectures and Applications
Projects
eSSENCEUPMARC
Available from: 2011-09-01 Created: 2011-09-10 Last updated: 2017-04-17Bibliographically approved
2. SuperGlue: A shared memory framework using data versioning for dependency-aware task-based parallelization
Open this publication in new window or tab >>SuperGlue: A shared memory framework using data versioning for dependency-aware task-based parallelization
2014 (English)Report (Other academic)
Series
Technical report / Department of Information Technology, Uppsala University, ISSN 1404-3203 ; 2014-010
National Category
Software Engineering
Identifiers
urn:nbn:se:uu:diva-221155 (URN)
Projects
UPMARCeSSENCE
Available from: 2014-04-03 Created: 2014-03-25 Last updated: 2014-04-29Bibliographically approved
3. Resource-aware task scheduling
Open this publication in new window or tab >>Resource-aware task scheduling
2015 (English)In: ACM Transactions on Embedded Computing Systems, ISSN 1539-9087, E-ISSN 1558-3465, Vol. 14, no 1, 5:1-25 p., 5Article in journal (Refereed) Published
National Category
Software Engineering
Identifiers
urn:nbn:se:uu:diva-216287 (URN)10.1145/2638554 (DOI)000349302200005 ()
Projects
UPMARCeSSENCE
Available from: 2015-01-21 Created: 2014-01-20 Last updated: 2017-12-06Bibliographically approved
4. A task parallel implementation of an RBF-generated finite difference method for the shallow water equations on the sphere
Open this publication in new window or tab >>A task parallel implementation of an RBF-generated finite difference method for the shallow water equations on the sphere
2014 (English)Report (Other academic)
Series
Technical report / Department of Information Technology, Uppsala University, ISSN 1404-3203 ; 2014-011
National Category
Computer Science Computational Mathematics
Identifiers
urn:nbn:se:uu:diva-221156 (URN)
Projects
eSSENCEUPMARC
Available from: 2014-04-03 Created: 2014-03-25 Last updated: 2014-04-29Bibliographically approved
5. Programming models based on data versioning for dependency-aware task-based parallelisation
Open this publication in new window or tab >>Programming models based on data versioning for dependency-aware task-based parallelisation
2012 (English)In: Proc. 15th International Conference on Computational Science and Engineering, Los Alamitos, CA: IEEE Computer Society, 2012, 275-280 p.Conference paper, Published paper (Refereed)
Place, publisher, year, edition, pages
Los Alamitos, CA: IEEE Computer Society, 2012
National Category
Software Engineering
Identifiers
urn:nbn:se:uu:diva-187446 (URN)10.1109/ICCSE.2012.45 (DOI)000317475000038 ()978-1-4673-5165-2 (ISBN)
Conference
CSE 2012
Projects
eSSENCEUPMARC
Available from: 2013-01-24 Created: 2012-12-06 Last updated: 2014-04-29Bibliographically approved

Open Access in DiVA

fulltext(523 kB)365 downloads
File information
File name FULLTEXT01.pdfFile size 523 kBChecksum SHA-512
51e6dcd20512408555f5faed7c43c3478c5ab2b377e21ce5d012be180135a627fb9308e0533970a3fb10407e43913a1dc5bcd12cad95d45eaf9bfaaf3e0a5a17
Type fulltextMimetype application/pdf
Buy this publication >>

Authority records BETA

Tillenius, Martin

Search in DiVA

By author/editor
Tillenius, Martin
By organisation
Division of Scientific ComputingComputational Science
Software EngineeringComputational Mathematics

Search outside of DiVA

GoogleGoogle Scholar
Total: 365 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

isbn
urn-nbn

Altmetric score

isbn
urn-nbn
Total: 2059 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf