Partager via


MPI_Get_accumulate fonction

Effectue des opérations atomiques de lecture-modification-écriture et retourne les données avant l’opération d’accumulation.

Syntaxe

int MPIAPI MPI_Get_accumulate(
  _In_  void         *origin_addr,
        int          origin_count,
        MPI_Datatype origin_datatype,
  _Out_ void         *result_addr,
        int          result_count,
        MPI_Datatype result_datatype,
        int          target_rank,
        MPI_Aint     target_disp,
        int          target_count,
        MPI_Datatype datatype,
        MPI_Op       op,
        MPI_Win      win
);

Paramètres

  • origin_addr [in]
    adresse initiale de la mémoire tampon

  • origin_count
    nombre d’entrées dans la mémoire tampon

  • origin_datatype
    type de données de chaque entrée de mémoire tampon

  • result_addr [out]
    adresse initiale de la mémoire tampon de résultats

  • result_count
    nombre d’entrées dans la mémoire tampon de résultats

  • result_datatype
    type de données de chaque entrée dans la mémoire tampon de résultats

  • target_rank
    classement de la cible

  • target_disp
    déplacement du début de la fenêtre au début de la mémoire tampon cible

  • target_count
    nombre d’entrées dans la mémoire tampon cible

  • datatype
    type de données de chaque entrée dans la mémoire tampon cible

  • Op
    Opération de réduction prédéfinie

  • win
    objet window

Valeur retournée

Retourne MPI_SUCCESS en cas de réussite. Sinon, la valeur de retour est un code d’erreur.

Dans Fortran, la valeur de retour est stockée dans le paramètre IERROR .

Fortran

    MPI_GET_ACCUMULATE(ORIGIN_ADDR, ORIGIN_COUNT, ORIGIN_DATATYPE, RESULT_ADDR, RESULT_COUNT, RESULT_DATATYPE,
                TARGET_RANK, TARGET_DISP, TARGET_COUNT, TARGET_DATATYPE, OP, WIN, IERROR)
        <type> ORIGIN_ADDR(*), RESULT_ADDR(*)
        INTEGER(KIND=MPI_ADDRESS_KIND) TARGET_DISP
        INTEGER ORIGIN_COUNT, ORIGIN_DATATYPE, RESULT_COUNT, RESULT_DATATYPE, TARGET_RANK, TARGET_COUNT,
        TARGET_DATATYPE, OP, WIN, IERROR

Remarques

Cumulez origin_count éléments de type origin_datatype de la mémoire tampon d’origine (origin_addr) vers la mémoire tampon au target_disp de décalage, dans la fenêtre cible spécifiée par target_rank et win, à l’aide de l’opération op et retournez dans la mémoire tampon de résultats result_addr le contenu de la mémoire tampon cible avant l’accumulation, spécifiée par target_disp, target_count et target_datatype. Les données transférées de l’origine vers la cible doivent s’adapter, sans troncation, dans la mémoire tampon cible. De même, les données copiées de la cible à l’origine doivent s’adapter, sans troncation, dans la mémoire tampon de résultat.

Les mémoires tampons d’origine et de résultat (origin_addr et result_addr) doivent être disjointes. Chaque argument de type de données doit être un type de données prédéfini ou un type de données dérivé où tous les composants de base sont du même type de données prédéfini. Tous les arguments de type de données doivent être construits à partir du même type de données prédéfini. L’opération op s’applique aux éléments de ce type prédéfini. target_datatype ne devez pas spécifier d’entrées qui se chevauchent, et la mémoire tampon cible doit tenir dans la fenêtre cible ou dans la mémoire jointe dans une fenêtre dynamique. L’opération est exécutée de manière atomique pour chaque type de données de base.

Configuration requise

Produit

HpC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package ou HPC Pack 2008 Client Utilities

En-tête

Mpi.h ; Mpif.h

Bibliothèque

Msmpi.lib

DLL

Msmpi.dll

Voir aussi

Fonctions de communication MPI One-Sided