I'd like to transpose a matrix b using MPI_Alltoallv and store it in bt.
Each process contain nlocal rows of b. For example:
Proc0: 0 | 10 | 20 | 30
Proc0: 1 | 11 | 21 | 31
Proc1: 100 | 110 | 120 | 130
Proc1: 101 | 111 | 121 | 131
I'd like bt being like:
Proc0: 0 | 1 | 100 | 101
Proc0: 10 | 11 | 110 | 111
Proc1: 20 | 21 | 120 | 121
Proc1: 30 | 31 | 130 | 131
The submatrices are stored in 2d arrays (b[0] contains the first row and b[1] the second row).
I found the solution when each process contains only one row, but not when I have several. Any ideas ?
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…