Development of the Chunks and Tasks model and runtime library implementations with applications in electronic structure calculations
Title: Development of the Chunks and Tasks model and runtime library implementations with applications in electronic structure calculations
DNr: SNIC 2015/1-473
Project Type: SNIC Medium Compute
Principal Investigator: Elias Rudberg <elias.rudberg@it.uu.se>
Affiliation: Uppsala universitet
Duration: 2016-01-01 – 2017-01-01
Classification: 10205 10407 10105
Homepage: http://chunks-and-tasks.org/
Keywords:

Abstract

The goal of this project is to extend our work on the Chunks and Tasks parallel programming model and apply it to massively parallel calculations. See our article "Chunks and Tasks: a programming model for parallelization of dynamic algorithms", http://dx.doi.org/10.1016/j.parco.2013.09.006 which was recently published in Parallel Computing, and our latest paper "Locality-aware parallel block-sparse matrix-matrix multiplication using the Chunks and Tasks programming model", http://arxiv.org/abs/1501.07800. The project regards the development of the Chunks and Tasks programming model for parallel implementation of methods that require dynamic distribution of both work and data. Such methods are difficult to implement using standard languages or libraries such as MPI that leave it to the user to provide the distribution of both work and data. In an application program that uses the Chunks and Tasks programming model, the user defines the algorithm in terms of chunks and tasks without specifying where the work should be performed or how the data should be distributed. Our pilot C++ Chunks and Tasks runtime library implementation uses MPI and pthreads to distribute work and data of Chunks and Tasks application programs on clusters of multicore machines. This project will be used for development and evaluation of the Chunks and Tasks model and runtime library implementations as well as for starting the work on distributed-memory parallelization of the Ergo quantum chemistry code (http://ergoscf.org) using Chunks and Tasks. Since the Chunks and Tasks model is intended to work well for massively parallel calculations and our main target application (linear scaling electronic structure calculations with the Ergo program) motivates very large calculations, it is important for us to carry out real calculations on as many nodes as possible. Our recent SNAC Large application with Dnr "SNIC 2015/16-14" was denied, with the following comment: "Although your project is of good scientific quality, in the fierce competition of the limited amount of HPC resources we have viewed it as your demands are better suited for a medium allocation. We welcome you for medium sized applications, see supr.snic.se for details. [...]" So, it was recommended that we should submit medium sized applications instead, which we do now. While we regret that the large application was denied, we hope that the fact that our project according to that evaluation has "good scientific quality" can to some extent strengthen our case to at least get this medium application approved. Regarding previous resource usage, although we did not use all hours during previous months, the project has now moved into a very active phase, for the past 30 days the usage has been 94.0%. We also have a new PhD student, Anton Artemov, who has just started who will also be working within this project, so more activity can be expected in this project also because of that.