Sessi MCP: Runtime Profiling and Automatisation of Projections

One of the important methods used by Nek5000 to speed up solution of linear problem Ax=b with the iterative solvers is the residual projection, in which solutions (x) and right hand sides (b) from previous time steps are used to built projection space for the current solution, right hand side pair. This operation allows to reduce number of iterations at every time step as one solves only for the vector part orthogonal to the projection space. Unfortunately this method was found to be computationally expensive for some test cases due to non-optimal data transfer during an orthogonalisation step. We have improved this data transfer and are currently testing our code. In the next step we are going to work on the automatisation of this method, where the size of the projection space would be dynamically changed during the simulation.

Milestones

M1: Testing of improved projection code (Dec 2017)
M2: Implementation of automated adaptation of projection space (Apr 2018)