casa
5.7.0-16
|
Parameter and input data partitioning for parallel cube imaging (in ParallelImagerMixin). More...
#include <CubePartitionMixin.h>
Public Member Functions | |
void | concat_images (const string &type) |
Protected Member Functions | |
ParallelImagerParams | get_params (MPI_Comm wcomm, ParallelImagerParams &initial) |
Protected Attributes | |
MPI_Comm | worker_comm |
int | num_workers |
int | worker_rank |
casacore::Record | image_parameters |
Private Member Functions | |
casacore::Record | convert_fields (casacore::Record &rec, const char *field, std::function< std::string(const char *)> fn) |
Convenience method to transform certain record fields. More... | |
casacore::Record | empty_fields (casacore::Record &rec, const char *field) |
Convenience method to clear certain record fields. More... | |
Parameter and input data partitioning for parallel cube imaging (in ParallelImagerMixin).
Definition at line 46 of file CubePartitionMixin.h.
|
inline |
wait until all ranks have completed file modifications
round-robin allocation of image concatenation tasks to worker ranks
Definition at line 50 of file CubePartitionMixin.h.
References casacore::RecordInterface::asString(), casacore::String::clear(), casa::CubePartitionMixin< T >::image_parameters, casacore::log(), MPI_Barrier, casacore::Record::nfields(), casa::CubePartitionMixin< T >::num_workers, casacore::LogIO::POST, casacore::Record::subRecord(), casa::viewer::to_string(), casa::type(), casacore::LogIO::WARN, WHERE, casa::CubePartitionMixin< T >::worker_comm, and casa::CubePartitionMixin< T >::worker_rank.
|
inlineprivate |
Convenience method to transform certain record fields.
Definition at line 242 of file CubePartitionMixin.h.
References casa::ParamFieldIterator::begin(), casacore::RecordInterface::define(), and casa::ParamFieldIterator::end().
Referenced by casa::CubePartitionMixin< T >::get_params().
|
inlineprivate |
Convenience method to clear certain record fields.
Definition at line 255 of file CubePartitionMixin.h.
References casa::ParamFieldIterator::begin(), casacore::Record::defineRecord(), and casa::ParamFieldIterator::end().
Referenced by casa::CubePartitionMixin< T >::get_params().
|
inlineprotected |
Determine rank among parallel imaging worker processes.
need a SynthesisImager instance to do cube partitioning
save only that part of the record returned from util.cubeDataImagePartition that is handled by the current rank
selection_params
image_params
FIXME: are grid parameters partitioned by node?
grid params
normalization_params
deconvolution params
weight params
iteration params
Definition at line 106 of file CubePartitionMixin.h.
References casacore::RecordInterface::asString(), casa::CubePartitionMixin< T >::convert_fields(), casa::SynthesisUtilMethods::cubeDataImagePartition(), casa::ParallelImagerParams::deconvolution, casacore::RecordInterface::define(), casacore::Record::defineRecord(), casa::CubePartitionMixin< T >::empty_fields(), casacore::String::find(), casa::SynthesisParamsSelect::fromRecord(), casa::SynthesisParamsImage::fromRecord(), casa::SynthesisParamsGrid::fromRecord(), casa::ParallelImagerParams::grid, casa::ParallelImagerParams::image, casa::CubePartitionMixin< T >::image_parameters, casacore::RecordInterface::isDefined(), casa::ParallelImagerParams::iteration, MPI_COMM_NULL, MPI_Comm_rank, MPI_Comm_size, casa::name(), casacore::RecordInterface::name(), casa::SynthesisParamsImage::nchan, casacore::Record::nfields(), casa::ParallelImagerParams::normalization, casa::CubePartitionMixin< T >::num_workers, casacore::CoordinateSystem::restore(), casacore::Record::rwSubRecord(), casa::ParallelImagerParams::selection, casacore::Record::subRecord(), casa::viewer::to_string(), casa::ParallelImagerParams::weight, casa::CubePartitionMixin< T >::worker_comm, and casa::CubePartitionMixin< T >::worker_rank.
|
protected |
Definition at line 103 of file CubePartitionMixin.h.
Referenced by casa::CubePartitionMixin< T >::concat_images(), and casa::CubePartitionMixin< T >::get_params().
|
protected |
Definition at line 99 of file CubePartitionMixin.h.
Referenced by casa::CubePartitionMixin< T >::concat_images(), and casa::CubePartitionMixin< T >::get_params().
|
protected |
Definition at line 93 of file CubePartitionMixin.h.
Referenced by casa::CubePartitionMixin< T >::concat_images(), and casa::CubePartitionMixin< T >::get_params().
|
protected |
Definition at line 101 of file CubePartitionMixin.h.
Referenced by casa::CubePartitionMixin< T >::concat_images(), and casa::CubePartitionMixin< T >::get_params().