Translations:Utiliser des modules/27/en: Difference between revisions

From Alliance Doc
Jump to navigation Jump to search
(modified last sentence)
 
No edit summary
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
=== Module hierarchy ===
== Module hierarchy ==
Most systems use a flat module structure: All modules are at the same level. This becomes problematic when many combinations of versions of different modules are available on a system. For example, if you need to use the [[FFTW]] library and the module <code>fftw</code> is available in several versions, including a version compiled with GCC 4.8 and Open MPI 1.6, you might see modules named <code>openmpi/1.6_gcc4.8</code> and <code>fftw/3.3_gcc4.8_openmpi1.6</code>. This is neither elegant nor practical. To solve this problem we use a hierarchy of modules. Rather than using the command
Many HPC clusters around the world use a flat module structure: All modules are at the same level. This becomes problematic when many combinations of versions of different modules are available on a system. For example, if you need to use the [[FFTW]] library and the module <code>fftw</code> is available in several versions, including a version compiled with GCC 9.3 and Open MPI 4.0, you might see modules named <code>openmpi/4.0_gcc9.3</code> and <code>fftw/3.8_gcc9.3_openmpi4.0</code>. This is neither elegant nor practical. To solve this problem we use a hierarchy of modules. Rather than using the command
{{Command|module load gcc/4.8 openmpi/1.6_gcc4.8 fftw/3.3_gcc4.8_openmpi1.6}}
{{Command|module load gcc/9.3 openmpi/4.0_gcc9.3 fftw/3.8_gcc9.3_openmpi4.0}}
you instead use
you instead use
{{Command|module load gcc/4.8 openmpi/1.6 fftw/3.3}}
{{Command|module load gcc/9.3 openmpi/4.0 fftw/3.8}}
This is made possible by using a module hierarchy. The <code>fftw/3.3</code> module that is loaded will not be the same one that would be loaded if you had previously loaded the Intel compilers instead of GCC.
This is made possible by using a module hierarchy. The <code>fftw/3.8</code> module that is loaded will not be the same one that would be loaded if you had previously loaded the Intel compilers instead of GCC.

Latest revision as of 14:19, 24 July 2024

Information about message (contribute)
This message has no documentation. If you know where or how this message is used, you can help other translators by adding documentation to this message.
Message definition (Utiliser des modules)
== Hiérarchie de modules ==
Plusieurs des systèmes de calcul informatique de pointe à travers le monde utilisent une structure de modules plate avec tous les modules au même niveau. Ceci devient problématique lorsqu'un grand nombre de combinaisons de versions de différents modules sont disponibles. Par exemple, si vous avez à utiliser la bibliothèque [[FFTW]], et que le module <tt>fftw</tt> est disponible en plusieurs versions, dont une version compilée avec le compilateur <tt>gcc</tt> version 4.8 et <tt>openmpi</tt> 1.6, vous avez peut-être déjà vu des modules nommés <tt>openmpi/4.0_gcc9.3</tt> et <tt>fftw/3.8_gcc9.3_openmpi4.0</tt>. Ceci n'est ni élégant ni pratique. Pour résoudre ce problème, nous utilisons une hiérarchie de modules. Plutôt que d'utiliser la commande
{{Commande|module load gcc/9.3 openmpi/4.0_gcc9.3 fftw/3.8_gcc9.3_openmpi4.0}}
vous utiliserez la commande
{{Commande|module load gcc/9.3 openmpi/4.0 fftw/3.8}}
Ceci est rendu possible avec une hiérarchie de modules. Le module <tt>fftw/3.8</tt> qui est chargé ne sera pas le même si vous avez chargé au préalable le compilateur Intel ou le compilateur GCC.

Module hierarchy[edit]

Many HPC clusters around the world use a flat module structure: All modules are at the same level. This becomes problematic when many combinations of versions of different modules are available on a system. For example, if you need to use the FFTW library and the module fftw is available in several versions, including a version compiled with GCC 9.3 and Open MPI 4.0, you might see modules named openmpi/4.0_gcc9.3 and fftw/3.8_gcc9.3_openmpi4.0. This is neither elegant nor practical. To solve this problem we use a hierarchy of modules. Rather than using the command

Question.png
[name@server ~]$ module load gcc/9.3 openmpi/4.0_gcc9.3 fftw/3.8_gcc9.3_openmpi4.0

you instead use

Question.png
[name@server ~]$ module load gcc/9.3 openmpi/4.0 fftw/3.8

This is made possible by using a module hierarchy. The fftw/3.8 module that is loaded will not be the same one that would be loaded if you had previously loaded the Intel compilers instead of GCC.