Parallel algorithms for Scientific Computing, 2020

Assignment:

  1. Possibility I: Sparse matrix-vector multiplication in parallel
    Make a discussion regarding methods to implement sparse matrix-vector multiplication in parallel - advantages and disadvantages, related to some computer architecture (cluster, cluster with an accelerator, GPU). This should be done in a written form, based on experience, published in one or more articles on the topic. Some articles are given below.
    Note: You are not expected to review all the articles. Make a relevant choice. You are welcome to find other sources with the requirement that these are published recently and are of relevance for the current computer architectures.

    Some references:

  2. Possibility II: Benchmarking pipelined preconditioned iterative methods
    Implement in Matlab the pipelined preconditioned versions of CG and GMRES, following [A].
    Test the methods against the same methods available in Matlab regarding convergence (do you get the same number of iterations) and time. As a preconditioner, use some incomplete factorization preconditioner (ichol, ilu). Seek a couple of interesting matrices, spd and nonsymmetric, say from matrix market.
    Test Matlab's parfor around the vector updates in the pipelined CG and GMRES to see whether you get an improved performance.
    Write a short report on the results and the possible potential for performance improvement.

    [A] P. Sanan, S.M. Schnepp, D.A. May, Pipelined flexible Krylov subspace methods (Ref [3] at the course description page).

  3. Possibility III: Suggest your own project, which could be beneficial for your research.

Last changed on Nov 8, 2020.
Mail to: Maya dot Neytcheva "at" it dot uu dot se "