Environnement Commun Linux : Différence entre versions

Un article de Informaticiens département des sciences de la Terre et l'atmosphère
Aller à: navigation, charcher
m
m
Ligne 20: Ligne 20:
  
 
  128 TB ---------------------------------  Top of memory
 
  128 TB ---------------------------------  Top of memory
 +
              |  thread 0 (master) stack
 +
              |  local variables
 +
              \ /
 
   
 
   
                  |  thread 0 (master) stack
 
                  |  local variables
 
                \ /
 
 
 
 
                / \
 
                  |
 
                  |  heap (allocate/malloc)
 
 
   
 
   
 +
              / \
 +
              |
 +
              |  heap (allocate/malloc)
 
  ~44 TB ---------------------------------  
 
  ~44 TB ---------------------------------  
 
   
 
   
                  |  thread N stack
+
              |  thread N stack
                  |
+
              |
                \ /
+
              \ /
 
                  |  thread N-1 stack
 
                  |
 
                \ /
 
 
   
 
   
                ...
+
              |  thread N-1 stack
 +
              |
 +
              \ /
 
   
 
   
                  |  thread 1 stack
+
              ...
                  |
 
                \ /
 
 
   
 
   
 +
              |  thread 1 stack
 +
              |
 +
              \ /
 
   
 
   
                / \
 
                  |  code + static data
 
                  |  (common blocks + some main program arrays)
 
                  |
 
 
   
 
   
 +
              / \
 +
              |  code + static data
 +
              |  (common blocks + some main program arrays)
 +
              |
 
  000 ---------------------------------- Bottom of memory  
 
  000 ---------------------------------- Bottom of memory  
  

Version depuis le 21 de novembre 2011 à 13:23

en construction(cette page s'adresse principalement aux développeurs)

under construction(this page is mainly for developers)

  • Useful environment variables
    • PATH : colon ':' separated list of directories where executables or sourced (.) shell includes are to be found
    • LD_LIBRARY_PATH : colon ':' separated list of directories where dynamic libraries (.so files) needed by executables can be found
    • EC_LD_LIBRARY_PATH : colon ':' separated list of directories where s.compile, s.f90  et al. will look for libraries
    • EC_INCLUDE_PATH : colon ':' separated list of directories where s.compile, s.f90  et al. will look for include files
    • BASE_ARCH : name of the hardware architecture of the machine
    • EC_ARCH : name of the hardware+software architecture of the machine (BASE_ARCH + compiler usually)
  • Useful memory layout information
    • Linux memory layout
128 TB ---------------------------------  Top of memory
              |   thread 0 (master) stack
              |   local variables
             \ /


             / \
              |
              |   heap (allocate/malloc)
~44 TB --------------------------------- 

              |   thread N stack
              |
             \ /

              |   thread N-1 stack
              |
             \ /

             ...

              |   thread 1 stack
              |
             \ /


             / \
              |   code + static data
              |   (common blocks + some main program arrays)
              |
000 ---------------------------------- Bottom of memory 
    • OMP_STACKSIZE environment variable controls thread (>0) stack size
  • Useful information about system
    • /proc/cpuinfo : pseudo file containing a full description of logical cpus in a linux system (cat/less/more)<br>
  • useful commands<br>
    • r.mpirun : script front end to mpiexec hiding machine/mpi implementation specific details
    • soumet : script used to submit jobs, hiding machine/batch subsystem specific details<br>