 and we're back. Hopefully you can hear us. So yeah, now is this part connecting to a computer cluster. I wrote some notes in the HackMD here. So this is mainly in preparation for tomorrow. So what we're going to show you a demo here, the exact mechanics will be different for every cluster. So for example, there's a different address to connect to a different thing you need to do to request the accounts and so on. But the general pattern is the same. So in all these clusters, you can use different programs and using something called secure shell or SSH, you can access a command line environment. So command line environments are not the only way to use clusters. So for example, our cluster has a way of directly using Jupyter and soon there'll be things like RStudio and so on via something called open on demand that you can use through a web browser. But for the purposes of this course and for scaling things up, you need this command line environment. And there's different ways of getting there. So we'll give you a demo now and sort of show you one working method. And you can try to follow along. But in practice, maybe you will need to continue after the demo and try to get it working for yourself. So if you've registered for the course and you're in Finland, you should have a learner Zoom breakout room. So after the demos are done, we will quickly wrap up here and then go to that Zoom meeting. And then we can give you live one on one support for connecting to the actual cluster. I mean, there's probably already people there now who can be answering some basic questions. Yeah, Seema, do you think that is a good explanation of what we're doing? Yeah, yeah, I think. Okay, so I'm going to share my screen here. Why doesn't this go? Okay, so here we are. This page is labeled connecting to Triton and is in the HackMD there. So let's see, where do we begin? Let's talk about the different ways of connecting. So we mentioned SSH first. So that's sort of the oldest and most standard and secure method. It works from basically anywhere. And once you can connect the computers with SSH, you can do basically anything from anywhere. But all it provides is the command line. Well, actually, SSH can do a lot more, but this is the basic idea. So it provides the command line. And there's tools to do it from Linux and Mac, which is built in. And on Windows, there's an application called Putty. Or also on modern Windows, if you can install the Windows services for Linux, you can use SSH from the command line, which really from what I've heard, this WSL and Windows is probably going to take over as one of the main ways of connecting to things because it works so well. But there's these other options. For example, VDI, virtual desktop interface. So at Alto, you can connect to there and get a desktop environment that's in the Alto network. And from there, you do the SSH. So this is basically running through the web browser again. And with Jupyter, our cluster has a Jupyter hub installation. So you can again connect to that through the web browser and then access the command line through Jupyter or even run code directly in Jupyter. But I'd recommend you try to use one of these first two, either SSH or VDI. Any thoughts on that, Simo? No, no, not really. There's also this mobile external, if you're interested, that's one popular Windows client as well, had advanced features as well. If you're interested in. There's a comment. Oh, go ahead. Yeah, go right ahead. There's a comment in Hack&D that Windows PowerShell also has SSH implemented in it. So that might be a good option. But anyway, so there's so many different methods here. So can we even try to explain all of them? I'm really, well, yeah, let's do what we can. So before you can connect to the cluster, you need an account. So if you're at alto, then it uses the same account as your alto account, but it has to be activated specifically first. And this is something where every different cluster will have its own policies and procedures. So basically, please go read the documentation. We have links to some sites and figure out what's needed there. So connecting via SSH. Yeah, okay, this looks a bit better. So let's see, but what do you like to show while I demonstrate or talk while I demonstrate or the other way around? Or maybe I can talk while I'm demonstrating. So this is my terminal. So it looks a little bit different for everyone. But on like Mac and Linux, it's called terminal and then in Windows is called, well, what's it shell or maybe PowerShell or CMD, something like that. So let's follow these instructions. So SSH Triton.alto.v. So if you're from a different place, this will be a different address. And if you're not on a university computer, you need to give a username at the beginning. And this will not work because I'm outside of the alto network. Yeah, for security reasons, like you need to go into the alto network before you can get access, you can then go to our login node. So modern SSH has this nice option that's the proxy jump and basically says it will connect to this computer first and then form the connection to here. So at least it's been around for a while. So I think most modern Linux operating systems should have it available. And hopefully the modern Mac operating systems too. I don't remember checking that myself, but I think it's probably true. People can comment and hack at the if it doesn't work. So cost.alto.v is our jump host. So this will again differ depending on every university. So what I'm doing is here. So it asked me the authenticity of this host can't be verified. Are you sure you want to continue connecting? And I will say yes. So basically what this means is remembering what I'm connecting to and every time I connect in the future, it will remember it. And like if I'm ever connecting to something different, it will give me a warning. And this is good. This is good for security. And then it will ask me for a password soon. It didn't ask me for a password. So why is that? So I've set up something called SSH keys, which basically means that it knows who I am on this computer and I give one password on my computer and then I can connect directly. And here we are. So how can I tell where? If I type hostname, it will show me where I am. And that's basically it. So if you can get to a state where you can type hostname, then that's what you need to be able to do for tomorrow. Yeah. And this might seem like complicated, like using this one window with us on the black and white characters and it may become or seem hard to read at first. But later on, you will become used to it. And this is the main way of how do you put stuff into the queue and everything like that, but you can still code on your own computer and then just transfer the stuff there and run it there. So you don't have to do all of your work, like only the work that, remember, the only the work that you want to be done in the HPC plus the computing side of the things that needs to be done there. Of course, it's a good idea to like in the tools of HPC is like talk at the end, there's introduction, many, many resources on shell users. So it's a good idea to or like shell is alternative to terminal or this kind of console users. It there's good instructions and good courses and good material on that. But for now, like you don't need to know that much about it. But it's something that in the coming days and coming years, it will become more feel more natural to you once you use it a bit more. Yeah. Okay, so let's see. So that was the Linux instructions. Mac basically says use. It's the same instruction says Linux when you open the terminal. And then you can see the different options here. Okay. What else is there? Would you like for me to show a demonstration of using putty? Maybe it's a good idea. Yeah, then we can continue and break out rooms. Yeah. So one interesting thing is that putty also exists on Linux. So I will start it and it looks like this here. And this looks like many of the different SSH clients. So what's the host name? So I know I'm outside of the Alto network. So I will do cosh.alto.fi because that's my jump host. And I will let's say I'll save it as Cosh saved. If I look down here, I think I can say something like auto login username. Actually, I'll enter that. So that way it will remember who I am. Maybe I need to save it again. And let's try opening. So here again, the same message, the SSH server host key is not cached. Do I want to accept it? So I do accept so that way I can make sure I connect to the same thing in the future. Let's see. And okay. So it, huh, did putty automatically use my SSH key? That's interesting. Yeah, most likely. Okay. So normally this would ask me to use my SSH key. So now from here I do SSH Titan.alto.fi. And I wish I could make this bigger, but the putty terminal isn't getting larger. Okay. So thus it has my correct username. And I'll enter my password. Do it right? Yes. And now I've connected. And host name and I see it here. Okay. So that's the putty idea. Yeah. Let's see. So other options. One thing we haven't mentioned yet is open on demand. And in fact, it was just getting ready today. If you come here, you can log in with your Alto account and then request a different graphical and terminal applications. But I guess it still needs to be checked. We have Jupyter Hub for connecting. And this will let you run Jupyter notebooks, but also access the terminal, like it says here. And VDI. So you log in and get a desktop. And then from there you can do SSH to Titan. I would give a quick addition that if you run the hostname command, for example, and at the end it doesn't say Triton.alto.fi, you're not in Triton. So the boundary of Triton is within like the domain Triton.alto.fi. So if you, for example, start the VDI machine, you start the virtual machine where you can connect to Triton, but that's not yet on Triton. VDI isn't Triton. So it's maintained by Alto ITS, but of course we work with them all the time. But it's not inside the Triton. Triton boundary is like the login node and everything beyond that. But like the ODD and the Jupyter.triton, because you see the Triton.alto.fi, they are inside the world of Triton. Also using Jupyter to get to the terminal, it works, but it's a slightly different environment than the login node. So there can be some problems there. Also for that matter, it's the same with open on demand. So if you can use SSH directly, then that's best. So let's see. So we've got some different exercises down here. So the first one is connecting here, but you can also then explore a few other things on your own if you would like, including if this shell seems interesting to you, or if you're new to it, there's this Linux shell crash course, which I'd recommend watching. It would make a reading or watching. It will make the things for tomorrow much more natural. Yeah, like in the command line, you can give this like huge bunch of these mini commands that you can move folders, create move files and folders, create folders, copy files, like this kind of usual like gardening stuff, like tending your garden, you can you can do it. There's all kinds of utilities for that. And then you can run them from the command line. And these are usually used to like prep up whatever you're actually calculating. So these are commands that you run in this command line. They are like these minor utilities and using them and learning how to use them is of course makes your life easier. It makes it easier to tend to your data garden in Triton. Oh, it's muted. Sorry. Like Samantha and I proposed earlier, command line is one of these fundamental skills that leads to almost everything you might do later. So you don't need to be a huge expert in it, but you need to know at least a little bit. This course will basically introduce you to those practices. So if you watch, if you read the crash course and then attend this course, you'll be pretty good to go. Yeah. So I would quickly say that there's been a lot of stuff today already about scientific computing, what it is, what an HPC is HPC systems, what they are, we haven't yet. Now we are getting into them. When we are running these commands, there's a lot of talks about different tools you can use different utilities you can use in your workflow. But starting tomorrow, when we start to go into the HPC side, we are limiting ourselves to us like a specific region in our talk today. Like we are only going to be talking about HPC and how to run these commands in the cluster. So there's this wide world that we have talked about today. But tomorrow we are going to limit ourselves to this specialized world. And in that world, the command line is, well, the main way of interacting in it. And then there's like an internal tools that we need to talk about. And we will go through them in much more detail. But today, I hope that you gathered inspiration of this wider world, because like HPC is only a part of this wider world, but is sometimes an essential part to the whole whole. And we'll be focusing on that, like drilling on that on tomorrow and the day after. But there's a huge amount of material we can't teach in a few days, like there's way too much material. But we have tried to make it available and links to it so that you can refer to that whenever you feel like you need to know a bit more about the subject. When it becomes relevant to you, you can then refer to the materials and see what happens, what's in there. Yeah, that's a very good conclusion for the day, I think. Probably the, yeah, it's perfect. So if you have any questions, please write them in HackMD and we can quickly answer. Otherwise, I guess we can wish you good luck and head to our Zoom for help with, for any live help that there may be. So we begin tomorrow at the same time, same place. And before we, before we quit, I will quickly mention that in the HackMD, I'm now writing a chapter, like give us comments and suggestions about the day, what was good, what was bad. Did you, Richard, previously have like this, say one good thing, one thing that could be improved. Exactly, yeah, one. I'll work on that. I'll switch to the HackMD, actually. Yeah, so at the end, please give us feedback because like we tried to formulate these courses, we tried to modify them every time we keep these courses, and we tried to make them better. And yeah, feedback is essential, so we know what works and what doesn't. So what should we include? What should we not include in the course? What was, yeah. Okay, well, thanks to everyone. Yeah, please continue answering, yeah. And see you tomorrow then, or in Zoom in a minute or two. Bye. Okay, bye.