wiki:RebuildPerformances

Version 8 (modified by mafoipsl, 17 years ago) (diff)

--

Rebuild Performances

Cette page rassemble des éléments quantitatifs sur les performances de rebuild sur les différents calculateurs : mercure, tx7, brodie, rhodes.

Ceci devrait permettre in fine de trouver le mode de fonctionnement optimum.

Couplé IPSLCM4_v2

  • Résolution 96x71
    • mercure : A cette résolution, sur 4 processeurs (3 pour LMDZ/ORCHIDEE et 1 pour OPA/OASIS), 1 mois prend environ 7mn sur mercure (temps elapsed) et les rebuild (sur mercure) prennent 1 mn.
    • brodie : A cette résolution, sur 4 processeurs (3 pour LMDZ/ORCHIDEE et 1 pour OPA/OASIS), 1 mois prend environ 9mn sur brodie (temps elapsed) et les rebuild (sur brodie) prennent 2 mn.
Résolution Machine Fichier Taille des fichiers initiaux Taille du fichier combiné Temps elapsed total
96x71x19 mercure histmth 6786404, 6517600, 6786404 19419796 -
= = histday 13883920, 13329420, 13883920 39945024 1mn
= brodie histmth 6786400, 6517596, 6786400 19419792 -
= = histday 13883916, 13329416, 13883916 39945020 2 mn
  • Résolution 144x96
    • brodie - 40 mn sur le fichier histHF en batch et 18 mn en interactif
      • batch :
        rebuild -o histhf.nc HH202_18610401_18610430_HF_histhf_0000.nc HH202_18610401_18610430_HF_histhf_0001.nc HH202_18610401_18610430_HF_histhf_0002.nc HH202_18610401_
        18610430_HF_histhf_0003.nc HH202_18610401_18610430_HF_histhf_0004.nc
        
        real    39m6.72s
        user    0m1.44s
        sys     0m38.04s
        
        prof /workdir/rech/psl/rpsl003/IOIPSL_PLUS/modipsl/bin/flio_rbld mon.out
        + prof /workdir/rech/psl/rpsl003/IOIPSL_PLUS/modipsl/bin/flio_rbld mon.out
         %Time Seconds Cumsecs  #Calls   msec/call  Name
          49.4    6.84    6.84   50336      0.1360  read             
          38.9    5.39   12.23   45856      0.1174  write            
           7.9    1.09   13.32   46551      0.0234  lseek            
           1.3    0.19   13.51                      get_user_chunk_size 
           0.9    0.12   13.63                      fill_NC_var      
           0.4    0.06   13.69                      nc_put_vara_float 
           0.3    0.04   13.73                      _mcount          
           0.3    0.04   13.77  195320      0.0002  _VEC_memcpy      
           0.1    0.02   13.79                      ncx_putn_float_float 
           0.1    0.02   13.81  144663      0.0001  strlen           
           0.1    0.02   13.83                      f_copyback       
           0.1    0.02   13.85                      ncx_howmany      
           0.0    0.00   13.85      32      0.2     brk              
           0.0    0.00   13.85      33      0.0     stringop.strlowercase_ 
           0.0    0.00   13.85       1      0.      fliocom.fliocrfd_ 
        
      • interactif :
        real    18m15.19s
        user    0m1.43s
        sys     4m2.66s
        
        Prof :
        prof /workdir/rech/psl/rpsl003/IOIPSL_PLUS/modipsl/bin/flio_rbld mon.out
         %Time Seconds Cumsecs  #Calls   msec/call  Name
          47.5   12.98   12.98   45856      0.2831  write            
          46.6   12.72   25.70   50336      0.2527  read             
           4.2    1.13   26.84   46551      0.0244  lseek            
           0.9    0.24   27.08                      get_user_chunk_size 
           0.1    0.04   27.12                      fill_NC_var      
           0.1    0.04   27.16                      ncx_putn_float_float 
           0.1    0.04   27.20                      nc_put_vara_float 
           0.1    0.02   27.22                      ncx_howmany      
           0.1    0.02   27.24                      f_cpyin          
           0.1    0.02   27.26                      f_arydsc         
           0.1    0.02   27.28                      _mcount          
           0.1    0.02   27.30                      f_copyback       
           0.0    0.00   27.30       7      1.      close            
           0.0    0.00   27.31      32      0.2     brk              
           0.0    0.00   27.31      33      0.0     stringop.strlowercase_ 
           0.0    0.00   27.31      41      0.0     fliocom.fliodv_rnd_ 
           ...
        
    • zahir
      • batch :
        real    0m15.50s
        user    0m0.38s
        sys     0m0.12s
        
    • mercure : 17 mn dans $TMPDIR, 47 sec dans $LOCALTMPDIR
      • batch $LOCALTMPDIR :
        real    0m46.50s 
        user    0m1.53s  
        sys     0m41.12s 
        prof /workdir/p86maf/IOIPSL_PLUS/modipsl/bin/flio_rbld mon.out
        + prof /workdir/p86maf/IOIPSL_PLUS/modipsl/bin/flio_rbld mon.out
         %Time Seconds Cumsecs  #Calls   msec/call  Name
          92.0   38.65   38.65   96215      0.4017  syscall
           6.0    2.51   41.16  142733      0.0176  lseek
           0.6    0.26   41.42                      get_user_chunk_size
           0.6    0.26   41.68                      fill_NC_var
           0.2    0.08   41.76   50336      0.0016  read
           0.1    0.06   41.82   45879      0.0013  write
           0.1    0.04   41.86                      _mcount
           0.0    0.02   41.88                      f_cpyin
           0.0    0.02   41.90                      ncx_putn_float_float
           0.0    0.02   41.92  195473      0.0001  _VEC_memcpy
           0.0    0.02   41.94                      f_copyback
           0.0    0.02   41.96                      nc_put_vara_float
           0.0    0.02   41.98     396      0.05    fliocom.fliopv_r43_
           0.0    0.00   41.99                      sigset
           0.0    0.00   41.99       7      1.      close
           0.0    0.00   42.00      23      0.2     llseek
           0.0    0.00   42.00      33      0.0     stringop.strlowercase_
        
      • batch $TMPDIR :
        real    17m13.50s
        user    0m1.62s
        sys     3m12.15s
        prof /workdir/p86maf/IOIPSL_PLUS/modipsl/bin/flio_rbld mon.out
        + prof /workdir/p86maf/IOIPSL_PLUS/modipsl/bin/flio_rbld mon.out
         %Time Seconds Cumsecs  #Calls   msec/call  Name
          82.7   18.29   18.29   96215      0.1901  syscall
          13.6    3.02   21.31  142733      0.0211  lseek
           1.2    0.26   21.57                      fill_NC_var
           0.7    0.16   21.73                      get_user_chunk_size
           0.6    0.14   21.86   50336      0.0028  read
           0.3    0.06   21.92   45879      0.0013  write
           0.2    0.04   21.97                      _mcount
           0.2    0.04   22.01                      ncx_howmany
           0.1    0.02   22.03   11021      0.0018  _real_malloc
           0.1    0.02   22.05                      fy_chtrim
           0.1    0.02   22.07                      ncx_putn_float_float
           0.1    0.02   22.09    4256      0.005   _VEC_memset
           0.1    0.02   22.11  195473      0.0001  _VEC_memcpy
           0.0    0.00   22.11      33      0.0     stringop.strlowercase_
           0.0    0.00   22.11       1      0.      fliocom.fliocrfd_
           0.0    0.00   22.11      41      0.0     fliocom.fliodv_rnd_
        

  • Résolution 144x142
    • brodie : A cette résolution, sur 6 processeurs (5 pour LMDZ/ORCHIDEE et 1 pour OPA/OASIS), 1 mois prend 48 mn sur brodie (temps elapsed) et les rebuild 90 mn (/tmpdir)! Prend 45 mn sur /workdir.
    • mercure : A cette résolution, sur 6 processeurs, l'ensemble des rebuild (histmt, histrac, histda histhf) prend 3 mn.

Résolution Machine Fichier Taille des fichiers initiaux Taille du fichier combiné Temps elapsed
144x142x19 brodie histmth 12162628, 11759424, 11759424, 11759424, 12162628 57724284 1 mn
= = histday 24974064, 24142316, 24142316, 24142316, 24974064 118961192 7 mn-10 mn
= = histrac 6459092, 6244240, 6244240, 6244240, 6459092 30736972 1 mn
= = histhf 149316592, 144339948, 144339948, 144339948, 149316592 711676968 79 mn (33 mn en /workdir)
= = sechiba_out 2787544, 2695380, 2695380, 2695380, 2787544 13201680 1 mn
144x142x19 mercure histmth + histday +histrac +histhf > 930 Mo 3 mn
  • Petit fichier histmth:
    • essai en interactif sur brodie01 :
      brodie01 - /workdir/rech/psl/rpsl003/REBUILD/test : time rebuild -o histmth.nc histmth_*.nc
      
      real    0m2.29s
      user    0m0.88s
      sys     0m0.46s
      
    • essai en interactif sur zahir/$WORKDIR :
       zahir001-rpsl003 : time rebuild -o histmth.nc histmth_*
      
      real    0m5.97s
      user    0m0.81s
      sys     0m1.64s
      
    • essai en interactif sur rhodes/$WORKDIR :
       rhodes - /workdir/rech/psl/rpsl003/REBUILD : time rebuild -o histmth.nc histmth_*.nc
      
      real    0m56.71s
      user    0m10.34s
      sys     0m3.81s
      

Tests sur mercure

Voici plusieurs tests réalisés sur mercure.
A chaque fois il s'agit de reconstruire un fichier de données inca_avgr.nc de taille 772M coupé en 6 (6x 140M)

  • essai en interactif sur le scratchdir/ :
    elapsed time (s) : 1.3337 e+03
    cpu time (s) : 7.2045 e+02
    
  • essai en batch sur le $LOCALTMPDIR
    Real Time (sec) : 67.379782
    User Time (sec) :  4.167928
    Sys  Time (sec) : 62.203794
    
  • essai en batch sur le scratchdir/
    Real Time (sec) : 1069.691442
    User Time (sec) :    4.132475
    Sys  Time (sec) :  216.605864