Quelle est la meilleure façon de disperser une matrice Fortran 90 par ses rangées plutôt que par des colonnes? C'est-à-dire, disons que j'ai une matrice a (4,50) et je veux MPI_SCATTER sur deux processus où chaque partie est alocal (2,50), où le rang 0 a les rangées 1 et 2, et le rang 1 a 3 et 4. Maintenant, en C, c'est simple puisque les tableaux sont des rangs majeurs, mais en Fortran 90, ils sont en colonne majeure. J'essaie d'éviter d'utiliser TRANSPOSE pour inverser une diffusion avant (c'est-à-dire doubler l'utilisation de la mémoire), et je pense qu'il doit y avoir un moyen de MPI pour le faire. Serait-ce MPI_TYPE_VECTOR? MPI_TYPE_CREATE_SUBARRAY?MPI_SCATTER Matrices Fortran par Rangées
De même, que se passe-t-il si j'ai un tableau 3d b (4,50,3) et que je veux deux matrices dispersées de bloc (2,50,3) réparties comme ci-dessus?
Ha! Je n'ai pas remarqué ça. –