uu.seUppsala universitets publikationer
Ändra sökning
Länk till posten
Permanent länk

Direktlänk
BETA
Zafari, Afshin
Publikationer (8 of 8) Visa alla publikationer
Larsson, E., Zafari, A., Righero, M., Francavilla, M. A., Giordanengo, G., Vipiana, F., . . . Grelck, C. (2019). Parallelization of hierarchical matrix algorithms for electromagnetic scattering problems. In: High-Performance Modelling and Simulation for Big Data Applications: (pp. 36-68). Springer
Öppna denna publikation i ny flik eller fönster >>Parallelization of hierarchical matrix algorithms for electromagnetic scattering problems
Visa övriga...
2019 (Engelska)Ingår i: High-Performance Modelling and Simulation for Big Data Applications, Springer, 2019, s. 36-68Kapitel i bok, del av antologi (Refereegranskat)
Ort, förlag, år, upplaga, sidor
Springer, 2019
Nationell ämneskategori
Datavetenskap (datalogi) Beräkningsmatematik
Identifikatorer
urn:nbn:se:uu:diva-338833 (URN)10.1007/978-3-030-16272-6_2 (DOI)978-3-030-16271-9 (ISBN)
Projekt
eSSENCE
Tillgänglig från: 2019-03-26 Skapad: 2018-01-14 Senast uppdaterad: 2019-03-29Bibliografiskt granskad
Zafari, A. (2018). Advances in Task-Based Parallel Programming for Distributed Memory Architectures. (Doctoral dissertation). Uppsala: Acta Universitatis Upsaliensis
Öppna denna publikation i ny flik eller fönster >>Advances in Task-Based Parallel Programming for Distributed Memory Architectures
2018 (Engelska)Doktorsavhandling, sammanläggning (Övrigt vetenskapligt)
Abstract [en]

It has become common knowledge that parallel programming is needed for scientific applications, particularly for running large scale simulations. Different programming models are introduced for simplifying parallel programming, while enabling an application to use the full computational capacity of the hardware. In task-based programming, all the variables in the program are abstractly viewed as data. Parallelism is provided by partitioning the data. A task is a collection of operations performed on input data to generate output data. In distributed memory environments, the data is distributed over the computational nodes (or processes), and is communicated when a task needs remote data.

This thesis discusses advanced techniques in distributed task-based parallel programming, implemented in the DuctTeip software library. DuctTeip uses MPI (Message Passing Interface) for asynchronous inter-process communication and Pthreads for shared memory parallelization within the processes. The data dependencies that determine which subsets of tasks can be executed in parallel are extracted from information about the data accesses (input or output) of the tasks. A versioning system is used internally to represent the task-data dependencies efficiently. A hierarchical partitioning of tasks and data allows for independent optimization of the size of computational tasks and the size of communicated data. A data listener technique is used to manage communication efficiently.

DuctTeip provides an algorithm independent dynamic load balancing functionality. Redistributing tasks from busy processes to idle processes dynamically can provide an overall shorter execution time. A random search method with high probability of success is employed for locating idle/busy nodes.

The advantage of the abstract view of tasks and data is exploited in a unified programming interface, which provides a standard for task-based frameworks to decouple framework development from application development. The interface can be used for collaboration between different frameworks in running an application program efficiently on different hardware.

To evaluate the DuctTeip programming model, applications such as Cholesky factorization, a time-dependent PDE solver for the shallow water equations, and the fast multipole method have been implemented using DuctTeip. Experiments show that DuctTeip provides both scalability and performance. Comparisons with similar frameworks such as StarPU, OmpSs, and PaRSEC show competitive results.

Ort, förlag, år, upplaga, sidor
Uppsala: Acta Universitatis Upsaliensis, 2018. s. 42
Serie
Digital Comprehensive Summaries of Uppsala Dissertations from the Faculty of Science and Technology, ISSN 1651-6214 ; 1621
Nyckelord
parallel programming, task-based programming, distributed memory system, scientific computing, hierarchical data, hierarchical tasks
Nationell ämneskategori
Datorsystem
Identifikatorer
urn:nbn:se:uu:diva-338838 (URN)978-91-513-0209-6 (ISBN)
Disputation
2018-03-02, ITC/2446, ITC, Lägerhyddsvägen 2, Uppsala, 10:00 (Engelska)
Opponent
Handledare
Projekt
UPMARC
Tillgänglig från: 2018-02-09 Skapad: 2018-01-14 Senast uppdaterad: 2019-02-25
Zafari, A. & Larsson, E. (2018). Distributed dynamic load balancing for task parallel programming. Computing Research Repository (1801.04582)
Öppna denna publikation i ny flik eller fönster >>Distributed dynamic load balancing for task parallel programming
2018 (Engelska)Ingår i: Computing Research Repository, nr 1801.04582Artikel i tidskrift (Övrigt vetenskapligt) Submitted
Nationell ämneskategori
Datavetenskap (datalogi)
Identifikatorer
urn:nbn:se:uu:diva-338835 (URN)
Projekt
UPMARCeSSENCE
Tillgänglig från: 2018-01-14 Skapad: 2018-01-14 Senast uppdaterad: 2018-04-18Bibliografiskt granskad
Zafari, A., Larsson, E. & Tillenius, M. (2018). DuctTeip: An efficient programming model for distributed task based parallel computing. Computing Research Repository (1801.03578)
Öppna denna publikation i ny flik eller fönster >>DuctTeip: An efficient programming model for distributed task based parallel computing
2018 (Engelska)Ingår i: Computing Research Repository, nr 1801.03578Artikel i tidskrift (Övrigt vetenskapligt) Submitted
Nationell ämneskategori
Programvaruteknik
Identifikatorer
urn:nbn:se:uu:diva-338832 (URN)
Projekt
UPMARCeSSENCE
Tillgänglig från: 2018-01-10 Skapad: 2018-01-14 Senast uppdaterad: 2018-04-18Bibliografiskt granskad
Zafari, A. (2018). TaskUniVerse: A Task-Based Unified Interface for Versatile Parallel Execution. In: Parallel Processing and Applied Mathematics: Part I. Paper presented at PPAM 2017 (pp. 169-184). Springer
Öppna denna publikation i ny flik eller fönster >>TaskUniVerse: A Task-Based Unified Interface for Versatile Parallel Execution
2018 (Engelska)Ingår i: Parallel Processing and Applied Mathematics: Part I, Springer, 2018, s. 169-184Konferensbidrag, Publicerat paper (Refereegranskat)
Ort, förlag, år, upplaga, sidor
Springer, 2018
Serie
Lecture Notes in Computer Science ; 10777
Nationell ämneskategori
Programvaruteknik
Identifikatorer
urn:nbn:se:uu:diva-338836 (URN)10.1007/978-3-319-78024-5_16 (DOI)000458563300016 ()978-3-319-78023-8 (ISBN)
Konferens
PPAM 2017
Projekt
eSSENCE
Tillgänglig från: 2018-03-23 Skapad: 2018-01-14 Senast uppdaterad: 2019-03-14Bibliografiskt granskad
Zafari, A., Larsson, E. & Tillenius, M. (2016). DuctTeip: A task-based parallel programming framework for distributed memory architectures.
Öppna denna publikation i ny flik eller fönster >>DuctTeip: A task-based parallel programming framework for distributed memory architectures
2016 (Engelska)Rapport (Övrigt vetenskapligt)
Serie
Technical report / Department of Information Technology, Uppsala University, ISSN 1404-3203 ; 2016-010
Nationell ämneskategori
Programvaruteknik
Identifikatorer
urn:nbn:se:uu:diva-296957 (URN)
Projekt
UPMARCeSSENCE
Tillgänglig från: 2016-06-20 Skapad: 2016-06-20 Senast uppdaterad: 2018-01-10Bibliografiskt granskad
Zafari, A., Larsson, E., Righero, M., Francavilla, M. A., Giordanengo, G., Vipiana, F. & Vecchi, G. (2016). Task parallel implementation of a solver for electromagnetic scattering problems.
Öppna denna publikation i ny flik eller fönster >>Task parallel implementation of a solver for electromagnetic scattering problems
Visa övriga...
2016 (Engelska)Rapport (Övrigt vetenskapligt)
Serie
Technical report / Department of Information Technology, Uppsala University, ISSN 1404-3203 ; 2016-015
Nationell ämneskategori
Datavetenskap (datalogi) Beräkningsmatematik
Identifikatorer
urn:nbn:se:uu:diva-300856 (URN)
Projekt
eSSENCE
Tillgänglig från: 2016-08-15 Skapad: 2016-08-15 Senast uppdaterad: 2018-01-10Bibliografiskt granskad
Zafari, A., Tillenius, M. & Larsson, E. (2012). Programming models based on data versioning for dependency-aware task-based parallelisation. In: Proc. 15th International Conference on Computational Science and Engineering: . Paper presented at CSE 2012 (pp. 275-280). Los Alamitos, CA: IEEE Computer Society
Öppna denna publikation i ny flik eller fönster >>Programming models based on data versioning for dependency-aware task-based parallelisation
2012 (Engelska)Ingår i: Proc. 15th International Conference on Computational Science and Engineering, Los Alamitos, CA: IEEE Computer Society, 2012, s. 275-280Konferensbidrag, Publicerat paper (Refereegranskat)
Ort, förlag, år, upplaga, sidor
Los Alamitos, CA: IEEE Computer Society, 2012
Nationell ämneskategori
Programvaruteknik
Identifikatorer
urn:nbn:se:uu:diva-187446 (URN)10.1109/ICCSE.2012.45 (DOI)000317475000038 ()978-1-4673-5165-2 (ISBN)
Konferens
CSE 2012
Projekt
eSSENCEUPMARC
Tillgänglig från: 2013-01-24 Skapad: 2012-12-06 Senast uppdaterad: 2018-01-16Bibliografiskt granskad
Organisationer

Sök vidare i DiVA

Visa alla publikationer