Skip to content

[ODK] Meeting 2018 09 26

A. Breust edited this page Nov 7, 2018 · 1 revision

Minutes for the September 26, 2018 meeting

  1. mpi-comm-interface Test branch related to MPI objects communication
  • The goal of this branch is to write some tests which evaluate the efficiency of Linbox objects communication methods to MPI. This has been written by Zhu recently and needs some improvements, namely:
    1. Make it consistent with the rest of the test suite.
    2. Add more fields to the set of fields on which tests are run.
    3. Update this branch to the latest Linbox version.
  • For now: Alexis and Zhu are splitting the main branches into multiple small Pull Requests in order to make it easier to manage and merge.
  • From now on: Zhu should stop experimenting on new ideas and start cleaning up code and improve code quality. Also needs to destroy old, now useless (or dupes) files. First task: cleanup tests.
  • Alexis wants to finish working on MPI comm (.h and .inl)
  1. Difference RatSolve1 vs. RatSolve2
  • RatSolve1: returns a vector of rationals as output
  • RatSolve2: returns a vector of numerators and common denominator to this vector
    • RatSolve2 is probably an old WIP improvement of RatSolve1, but this is not 100% clear. RatSolve2 needs to be cleaned at some point, as it probably contains some dead code. Alexis will work on this, with the help of Clément. Meeting scheduled for September 27, 2018, early afternoon.
  1. Misc.
  • How to perform a solve after a CRA?
  • tag (e.g. IntegerTag) helps to automatically choose the solver based on the input matrix. An example:
    • XXX(IntegerTag, Method::CRA) (XXX might be det or charp) uses iterations to construct classes which perform operations on the appropriate fields. This is a mechanismy to automatically perform CRAs. This is not the case for solve. Idea: implement this for solve. Also, this mechanism is mostly written in .h files. Is it really its place?
CRA Dixon
MPI WIP ?
Seq Done! Done, modulo RatSolver refactorisation
Omp WIP ?
  • solve is kind of a mess -> completely rewrite it!
  • RandomContexts: Dan Roche's idea related to algorithm composition. E.g. what if I compose a MonteCarlo algorithm with a deterministic algorithm? Theoretical analysis shows that careful decomposition of such algorithms is necessary to ensure a given behaviour. RandomContexts takes care of that in a very nice way. PR from early July, not fully merged yet.
  1. tl;dr
  • Zhu: clean up code in test MPI communicator, make it consistent with the test suite
  • Alexis: work on expanding Zhu's MPI API + clean up RatSolve and solve
Clone this wiki locally