RAP-100 Reduce memory usage scalar solver

The Scalar solver needs temporary matrixes. It always allocates these matrixes for all channel blocks to process. If less threads are available then channel blocks only n threads of these matrixes are used.

This change does the following:

  • Avoid creating more threads than channel blocks to process.
  • Limit the number of matrixes allocated to the number of threads used.
  • Some minor cleanups.

More information regarding the problem is documented in confluence https://support.astron.nl/confluence/display/SDCP/Increased+memory+usage+in+DP3%27s+DDECal

Based on @offringa's insight this makes similar changes to the DiagonalSolver and FullJonesSolver.

Closes RAP-100

Edited by Mark de Wever

Merge request reports

Loading