Changeset 36


Ignore:
Timestamp:
07/07/09 17:04:46 (15 years ago)
Author:
ymipsl
Message:

Les buffers MPI sont maintenant donnes en quantite de memoire totale par serveur et non par client.
La valeur par defaut peut etre redefinie dans la namelist.

YM

Location:
XMLIO_SERVER/trunk/src/IOSERVER
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • XMLIO_SERVER/trunk/src/IOSERVER/mod_ioserver_namelist.f90

    r26 r36  
    11MODULE mod_ioserver_namelist 
    22 
    3   LOGICAL :: using_server 
    4   LOGICAL :: using_oasis 
    5   CHARACTER(LEN=100) :: client_id 
    6   CHARACTER(LEN=100) :: server_id 
    7    
     3  LOGICAL,SAVE :: using_server 
     4  LOGICAL,SAVE :: using_oasis 
     5  CHARACTER(LEN=100),SAVE :: client_id 
     6  CHARACTER(LEN=100),SAVE :: server_id 
    87  NAMELIST /coupling_param/ using_server,using_oasis,client_id,server_id   
     8 
     9  INTEGER,SAVE :: global_mpi_buffer_size             
     10  NAMELIST /mpi_param/ global_mpi_buffer_size   
    911 
    1012  INTEGER,PARAMETER,PRIVATE :: starting_unit=356 
     
    1921    client_id='unknown' 
    2022    server_id='unknown' 
     23    global_mpi_buffer_size=512 
     24     
    2125  END SUBROUTINE set_default_namelist 
    2226   
     
    4145    IF (ierr==0) THEN 
    4246      READ(unit,nml=coupling_param) 
     47      READ(unit,nml=mpi_param) 
     48      global_mpi_buffer_size=global_mpi_buffer_size*1024*128   
    4349      CLOSE(unit) 
    4450    ELSE 
  • XMLIO_SERVER/trunk/src/IOSERVER/mod_mpi_buffer_client.f90

    r32 r36  
    2020  INTEGER,SAVE :: start_pos 
    2121  LOGICAL,SAVE :: ok_new_request 
    22    
    2322  LOGICAL,SAVE :: is_last_request 
     23 
     24  INTEGER      :: mpi_buffer_size 
     25 
    2426CONTAINS 
    2527 
     
    2729  USE mod_global_memory 
    2830  USE mod_pack 
     31  USE mod_ioclient_para 
    2932  IMPLICIT NONE 
     33 
     34  INTEGER  :: nb_client 
    3035   
     36    nb_client=iosize-1   
     37    mpi_buffer_size=global_mpi_buffer_size/nb_client 
     38     
    3139    CALL allocate_global_memory(mpi_buffer_size,MPI_Buffer) 
    3240    buffer_begin=1 
  • XMLIO_SERVER/trunk/src/IOSERVER/mod_mpi_buffer_parameters.f90

    r8 r36  
    11MODULE mod_mpi_buffer_parameters 
    2   INTEGER,PARAMETER :: mpi_buffer_size = 1024*1024*64 
     2  USE mod_ioserver_namelist, ONLY : global_mpi_buffer_size 
    33  INTEGER,PARAMETER :: max_request = 10000 
    44  REAL, PARAMETER   :: frac_alert  = 0.9 
  • XMLIO_SERVER/trunk/src/IOSERVER/mod_mpi_buffer_server.f90

    r17 r36  
    2424   
    2525  INTEGER,SAVE :: current_rank 
    26    
     26  INTEGER,SAVE :: mpi_buffer_size 
    2727   
    2828CONTAINS 
     
    3535     
    3636    ALLOCATE(buffers(nb_client)) 
    37      
     37    mpi_buffer_size=global_mpi_buffer_size/nb_client  
    3838    DO n=1,nb_client 
    3939      CALL allocate_global_memory(mpi_buffer_size,buffers(n)%MPI_Buffer) 
Note: See TracChangeset for help on using the changeset viewer.