appl (psmile) calls : psmile_init_mpi1 (from prism_init)

3
Appl (Psmile) calls : Psmile_init_mpi1 (from prism_init) collective calls (MPI_Allreduce,MPI_Bcast) for proc in comm_global == for all procs (ie psmile + driver) MPI_comm_dup MPI_COMM_WORLD comm_global Comm_global comm_trans Driver calls : Prismdrv_init_app l llective calls (MPI_Allreduce,MPI_Bcast) r proc in comm_drv_global == for all procs e psmile + driver) MPI_comm_dup MPI_COMM_WORLD comm_drv_global Comm_drv_global comm_drv_trans c 0 of driver has read scc e distribution by collective calls MPI1 : MPI_COMM_WORLD contains all the procs : psmile+driver

Upload: tamber

Post on 07-Jan-2016

18 views

Category:

Documents


0 download

DESCRIPTION

Driver calls :  Prismdrv_init_appl. Appl (Psmile) calls : Psmile_init_mpi1 (from prism_init). MPI_comm_dup MPI_COMM_WORLD  comm_drv_global Comm_drv_global  comm_drv_trans. MPI_comm_dup MPI_COMM_WORLD  comm_global Comm_global  comm_trans. Proc 0 of driver has read scc - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Appl (Psmile) calls :  Psmile_init_mpi1  (from prism_init)

Appl (Psmile) calls :

Psmile_init_mpi1 (from prism_init)

collective calls (MPI_Allreduce,MPI_Bcast)

for proc in comm_global == for all procs (ie psmile + driver)

MPI_comm_dup MPI_COMM_WORLD comm_globalComm_global comm_trans

Driver calls :

Prismdrv_init_appl

collective calls (MPI_Allreduce,MPI_Bcast) for proc in comm_drv_global == for all procs

(ie psmile + driver)

MPI_comm_dup MPI_COMM_WORLD comm_drv_globalComm_drv_global comm_drv_trans

Proc 0 of driver has read scc file distribution by collective calls

MPI1 : MPI_COMM_WORLD contains all the procs : psmile+driver

Page 2: Appl (Psmile) calls :  Psmile_init_mpi1  (from prism_init)

Driver calls : Prismdrv_def_mpi_comm

Appl (Psmile) calls : Psmile_def_mpi_comm

key = 0 ; color = 0CALL MPI_Comm_Split (comm_drv_global, &color, key, comm_drv_local, id_err )

key = 0 ; color = Appl%sequence_numberCALL MPI_Comm_Split (comm_global, &color, key, Appl%com, id_err )

do index = 1, ig_nb_applkey = 0 ; color = indexCALL MPI_Comm_Split (comm_drv_global, &color, key, comm, id_err )

key = 0do index = 1, noApplicationIf (index = Appl%sequence_number) thencolor = indexelsecolor = MPI_undefinedendifCALL MPI_Comm_Split (comm_global, &color, key, comm, id_err )

Definition of comm_coupler between driver and one appl

Definition of comm_coupling(index)between driver and one appl = comm

Definition of the comm of 1 applDefinition of the comm of the driver

Page 3: Appl (Psmile) calls :  Psmile_init_mpi1  (from prism_init)

Driver calls :

Prismdrv_def_mpi_comm

Appl (Psmile) calls :

Psmile_def_mpi_comm

key = 0 ; color = MPI_undefinedCALL MPI_Comm_Split (comm_drv_global, &color, key, comm_psmile, id_err )

key = 0 ; color = 1CALL MPI_Comm_Split (comm_global, &color, key, comm_psmile, id_err )

Definition of the comm of all appl