Skip to content
Snippets Groups Projects
Commit 63f1a1cd authored by ESCOBAR MUNOZ Juan's avatar ESCOBAR MUNOZ Juan
Browse files

Juan 19/11/2020: mesonh.f90,mode_mnh_world.f90 : move init of good GPU to INIT_NMNH_COMM_WORLD

parent 5da0cc80
No related branches found
No related tags found
No related merge requests found
...@@ -56,6 +56,11 @@ CONTAINS ...@@ -56,6 +56,11 @@ CONTAINS
!JUANZ !JUANZ
INTEGER :: ILU INTEGER :: ILU
#ifdef MNH_OPENACC
CHARACTER(LEN=28) :: CID_GPU
INTEGER :: ID_GPU,N_GPU
#endif
#if 0 #if 0
!Try to initialise device memory by creating a big array !Try to initialise device memory by creating a big array
REAL,dimension(:,:,:),allocatable :: big REAL,dimension(:,:,:),allocatable :: big
...@@ -76,6 +81,22 @@ CONTAINS ...@@ -76,6 +81,22 @@ CONTAINS
KINFO_ll = 0 KINFO_ll = 0
CALL MPI_INITIALIZED(GISINIT, KINFO_ll) CALL MPI_INITIALIZED(GISINIT, KINFO_ll)
IF (.NOT. GISINIT) THEN IF (.NOT. GISINIT) THEN
#ifdef MNH_OPENACC
!
! I nvidia gpu set the good one <-> ACC_DEVICE_NUM
! to avoid duplication of memory be allocating each mpi task all GPU
!
N_GPU = acc_get_num_devices(acc_device_nvidia)
IF ( N_GPU > 0 ) THEN
CALL GET_ENVIRONMENT_VARIABLE("ACC_DEVICE_NUM",CID_GPU)
read(CID_GPU,'(I5)') ID_GPU
print*,"CID_GPU=",CID_GPU," ID_GPU=",ID_GPU
CALL acc_set_device_num(ID_GPU,acc_device_nvidia)
END IF
!!$ ! acc init
#endif
#ifdef MNH_GA #ifdef MNH_GA
CALL MPI_INIT_thread(REQUIRED,PROVIDED,KINFO_ll) CALL MPI_INIT_thread(REQUIRED,PROVIDED,KINFO_ll)
#else #else
......
...@@ -132,9 +132,6 @@ INTEGER :: IINFO_ll ! return code of // routines ...@@ -132,9 +132,6 @@ INTEGER :: IINFO_ll ! return code of // routines
! !
!* 1. INITIALIZATION !* 1. INITIALIZATION
! -------------- ! --------------
#ifdef MNH_OPENACC
!$acc init
#endif
! Switch to model 1 variables ! Switch to model 1 variables
#ifndef CPLOASIS #ifndef CPLOASIS
CALL MPPDB_INIT() CALL MPPDB_INIT()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment