Migration to the new standard environment: Difference between revisions
No edit summary |
(Marked this version for translation) |
||
Line 2: | Line 2: | ||
<translate> | <translate> | ||
= What are the differences between the old and the new environments ? = | = What are the differences between the old and the new environments ? = <!--T:1--> | ||
These differences are listed on the page [[Standard software environments]]. | These differences are listed on the page [[Standard software environments]]. | ||
= How can I change which version of <code>StdEnv</code> is my default? = | = How can I change which version of <code>StdEnv</code> is my default? = <!--T:2--> | ||
Our clusters use different versions of <code>StdEnv</code> as their default version. As of August 2020, [[Cedar]] and [[Graham]] use <code>StdEnv/2016.4</code>, while [[Béluga/en|Béluga]] uses <code>StdEnv/2018.3</code>. [[Niagara]] also defaults to <code>StdEnv/2018.3</code> if you run <code>module load CCEnv StdEnv</code>. In the future, we will probably update all of them to use <code>StdEnv/2020</code>. However, users can specify their own default by running the following command (example provided for the 2020 version) | Our clusters use different versions of <code>StdEnv</code> as their default version. As of August 2020, [[Cedar]] and [[Graham]] use <code>StdEnv/2016.4</code>, while [[Béluga/en|Béluga]] uses <code>StdEnv/2018.3</code>. [[Niagara]] also defaults to <code>StdEnv/2018.3</code> if you run <code>module load CCEnv StdEnv</code>. In the future, we will probably update all of them to use <code>StdEnv/2020</code>. However, users can specify their own default by running the following command (example provided for the 2020 version) | ||
{{Command|echo "module-version StdEnv/2020 default" >> $HOME/.modulerc}} | {{Command|echo "module-version StdEnv/2020 default" >> $HOME/.modulerc}} | ||
= Do I need to reinstall/recompile my code if the <code>StdEnv</code> version changes? = | = Do I need to reinstall/recompile my code if the <code>StdEnv</code> version changes? = <!--T:3--> | ||
Yes. If you compile your own code, or install R or Python packages, you should recompile or reinstall the packages you need using the newest version of the standard environment. | Yes. If you compile your own code, or install R or Python packages, you should recompile or reinstall the packages you need using the newest version of the standard environment. | ||
= How can I use the old environments ? = | = How can I use the old environments ? = <!--T:4--> | ||
If you have an existing workflow and want to continue to use the same software versions you are using now, simply add | If you have an existing workflow and want to continue to use the same software versions you are using now, simply add | ||
module load StdEnv/2018.3 | module load StdEnv/2018.3 | ||
Line 19: | Line 19: | ||
to your job script before loading any other modules. | to your job script before loading any other modules. | ||
= Will old environments go away ? = | = Will old environments go away ? = <!--T:5--> | ||
No, they ''will not go away''. They and all the software dependent on them will remain available! However, Compute Canada staff will no longer install anything into the old environemnts. | No, they ''will not go away''. They and all the software dependent on them will remain available! However, Compute Canada staff will no longer install anything into the old environemnts. | ||
= Which environment should I use ? = | = Which environment should I use ? = <!--T:6--> | ||
If you are starting a new project, or if you want to use a newer version of some software, you should use <tt>StdEnv/2020</tt>. Today you can do this by adding | If you are starting a new project, or if you want to use a newer version of some software, you should use <tt>StdEnv/2020</tt>. Today you can do this by adding | ||
module load StdEnv/2020 | module load StdEnv/2020 | ||
to your job script. As of April 1st, 2021, it will be the default and the line will be unnecessary (though not a problem). | to your job script. As of April 1st, 2021, it will be the default and the line will be unnecessary (though not a problem). | ||
= Can I keep the old environment by loading modules in my <code>.bashrc</code> ? = | = Can I keep the old environment by loading modules in my <code>.bashrc</code> ? = <!--T:7--> | ||
Loading modules in your <code>.bashrc</code> is '''not recommended'''. Instead, explicitly load modules in your job scripts. | Loading modules in your <code>.bashrc</code> is '''not recommended'''. Instead, explicitly load modules in your job scripts. | ||
</translate> | </translate> |
Revision as of 19:28, 19 March 2021
What are the differences between the old and the new environments ?
These differences are listed on the page Standard software environments.
How can I change which version of StdEnv
is my default?
Our clusters use different versions of StdEnv
as their default version. As of August 2020, Cedar and Graham use StdEnv/2016.4
, while Béluga uses StdEnv/2018.3
. Niagara also defaults to StdEnv/2018.3
if you run module load CCEnv StdEnv
. In the future, we will probably update all of them to use StdEnv/2020
. However, users can specify their own default by running the following command (example provided for the 2020 version)
[name@server ~]$ echo "module-version StdEnv/2020 default" >> $HOME/.modulerc
Do I need to reinstall/recompile my code if the StdEnv
version changes?
Yes. If you compile your own code, or install R or Python packages, you should recompile or reinstall the packages you need using the newest version of the standard environment.
How can I use the old environments ?
If you have an existing workflow and want to continue to use the same software versions you are using now, simply add
module load StdEnv/2018.3
or
module load StdEnv/2016.4
to your job script before loading any other modules.
Will old environments go away ?
No, they will not go away. They and all the software dependent on them will remain available! However, Compute Canada staff will no longer install anything into the old environemnts.
Which environment should I use ?
If you are starting a new project, or if you want to use a newer version of some software, you should use StdEnv/2020. Today you can do this by adding
module load StdEnv/2020
to your job script. As of April 1st, 2021, it will be the default and the line will be unnecessary (though not a problem).
Can I keep the old environment by loading modules in my .bashrc
?
Loading modules in your .bashrc
is not recommended. Instead, explicitly load modules in your job scripts.