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 17: Ligne 17:
 
**'''EC_ARCH''' : name of the hardware+software architecture of the machine ('''BASE_ARCH''' + compiler usually)  
 
**'''EC_ARCH''' : name of the hardware+software architecture of the machine ('''BASE_ARCH''' + compiler usually)  
 
*Useful memory layout information  
 
*Useful memory layout information  
**Linux memory layout<br><pre>128 TB ---------------------------------  Top of memory
+
**Linux memory layout<br>
                    |  thread 0 (master) stack
 
                    |  local variables
 
                    \ /
 
  
 +
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
  
                    / \
 
                    |
 
                    |  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
 
</pre>
 
 
**'''OMP_STACKSIZE''' environment variable controls thread (&gt;0) stack size  
 
**'''OMP_STACKSIZE''' environment variable controls thread (&gt;0) stack size  
 
*Useful information about system  
 
*Useful information about system  
**'''/proc/cpuinfo'''&nbsp;: pseudo file containing a full description of logical cpus in a linux system (cat/less/more)<br>
+
**'''/proc/cpuinfo'''&nbsp;: pseudo file containing a full description of logical cpus in a linux system (cat/less/more)&lt;br&gt;
*useful commands<br>
+
*useful commands&lt;br&gt;
 
**'''r.mpirun'''&nbsp;: script front end to mpiexec hiding machine/mpi implementation specific details  
 
**'''r.mpirun'''&nbsp;: script front end to mpiexec hiding machine/mpi implementation specific details  
**'''soumet'''&nbsp;: script used to submit jobs, hiding machine/batch subsystem specific details<br>
+
**'''soumet'''&nbsp;: script used to submit jobs, hiding machine/batch subsystem specific details&lt;br&gt;

Version depuis le 21 de novembre 2011 à 13:21

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>