 Se ei oikein semmoisia puolesta, mutta se on todella tärkeää, että se on semmoisia puolesta, jota kaikki sisällä käyttävät. Joten olemme olleet jo joitakin nämä muodolle-kommanat. Ja mitä nämä muodolle-kommanat ovat basically like in these clusters, because we have so many different users and different users have different software needs. We can't just like up get install stuff or something like that to put something for everybody. Instead we need to have separate installations of various versions of software. And these are provided through this module system. So these modules are basically like shortcuts to the programs. When you load this module or this shortcut, the program becomes visible to you. And that is how it basically works. When you run this module load command, you will... Yeah, let's see. So we have an example down here. So let's see what Python version we have. You can do this on your... Yeah. And just for fun let's see that Python. Okay. Can you check which Python? So which is a command that tells where the command line finds these. So these are the system Python, for example. So should we module load? Yeah, let's do the Anaconda module load. Actually I'll do something. Okay, module load Anaconda. So now let's do... I should move these up. So before it was Python 368. Yeah, 368. Now Python 3 is 385. And since within this module Python is probably Python 3, we see Python without 3. It's also 3.8. And let's do which Python. So we see now these are going to this path. Which is actually a fully automated Anaconda environment builder which Simo has created. Because otherwise software becomes too unmanageable. So how does this actually work? Well, if we look at one other thing. If we module list we can see what is loaded. What it actually does on the background is it sets these environment variables. That are basically like... In this case it sets this path variable. So that tells basically the command line where to find the Anaconda or the Python installation. And then once... So basically it tells like a shortcut for the command line to know that okay I will find Python here. And look at these folders if you need to look at executables. So path is what a program uses to figure out when you run something. So you type Python and it searches each of these directories in path from start to end until it finds the first Python. So we see well now this has been added to the front of path. It's been prepended just like it says here. Try unloading the module and let's see how the path changes. So you can load and you can unload these. And if you do unload it should reverse whatever was there. So for example here we can see that it's removed from the path. Yeah, and this is... So there's the Anaconda part and the rest. And now here we only have the rest. So basically you don't really need to know how they work. But basically the module system basically whenever you load a module you're supposed to get access to the software in question. And that should work like the stuff in that software should work. And these are like something that we have installed for you. Like a lot of people said some module load commands into their bash accuracy or their home folder. But that's usually not a good idea. Because you might get unexpected consequences if you're doing something and you don't recognize that you already have this module loaded and then you get errors. So it's better to just remember what software you're using and load them if needed. And also if you're writing these slurm scripts they can act as like a documentation for you. Because in those scripts it's a good idea to write the same module. Or you should write the same module load commands there as you write into your own as you do in the command plan. So basically these are like let's say if you have a python you do an import statement. This basically is the same kind of thing. You get some software available for you from a package basically. It's similar to any other programming language. So yeah and there's also different versions of modules. So for example in this MATLAB if we do module spider MATLAB we see module spider is basically this search command. Spider is this search that goes through the whole thing. Do you know why it's called spider? I think it crawls through the directories where the modules are. But I think that's the idea. It's very apt to use. Spider isn't exactly what I would know for crawling. But anyway so we see there's different versions here all the way from to a 2016 to 2020. And this is really important because if you ask us to upgrade any particular thing likely someone else needs the old version. So instead of changing it for everyone we add a new module. So here let's say I need this MATLAB. And I do this and then I do module list and we see the older one. So if your module load command includes the version you can be reasonably confident that it won't be changing over time. And it's basically will be fixed even only update things. If you don't use that then you might get a newer version at any time and you will have to then go and fix your code. So if you want to keep your code up to date maybe that's a good thing. If you want it to never change and always work then maybe you don't want that. So let's see. I don't think there's a point of doing this extra type along thing. Okay this is just what I just said. Maybe you could run like a check on what's available. Sure. In the documentation there's more hints on like if you want to create this module collection for example if you want to like have your favorite sound choose then you can use that. But for example you can hear see that some of like module available gives you available software and there's quite a bit of it. And you have these D flags where the defaults are set. So some of those are set as defaults. But you get like you get the idea there's this bunch of software available. And you could ask how do we install so much stuff? It's because we have scripts and there's other software projects which are explicitly made in order to automatically install other things. So where it's like the meta software level. It's so unmanageable you have to do this. You have to write installers for the installers basically. It's a bit of a mess but still it's something that gladly like it's good that it exists because otherwise we couldn't support so many software suits. We are some of the software is missing from other sites. We are currently in a process of updating like our newest batch of software to other sites but they will be there soon. Yeah, okay. Did you get the GB job running? I just noticed that it seems that we're in a process of updating some of the GB nodes. So that's why probably they were not yet. That's why it's probably in the queue still. So the cheap unmuted version. Yeah, so. Well, we have 15 minutes left. Here's a full reference of all the different module commands. Well, you can see and yeah. So what should we do in our remaining 15 minutes?