pylops_mpi.basicoperators.MatrixMult.active_grid_comm#

pylops_mpi.basicoperators.MatrixMult.active_grid_comm(base_comm, N, M)[source]#

Active grid for distributed matrix multiplication.

Configure a square process grid from a parent MPI communicator and select a subset of “active” processes. Each process in base_comm is assigned to a logical 2D grid of size \(P' \times P'\), where \(P' = \bigl \lceil \sqrt{P} \bigr \rceil\). Only the first \(active_{dim} \times active_{dim}\) processes (by row-major order) are considered “active”. Inactive ranks return immediately with no new communicator.