Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 14 additions & 14 deletions src/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@
- [Mac](./chapter1/mac.md)
- [Linux](./chapter1/linux.md)
- [WSL](./chapter1/wsl.md)
- [M3 MASSIVE]()
- [Nectar Cloud]()
- [M3 MASSIVE](./chapter1/m3.md)
- [Nectar Cloud](./chapter1/nectar.md)
- [Challenges](./chapter1/challenges.md)

- [Intro to C](./chapter2/intro-to-c.md)
Expand Down Expand Up @@ -44,16 +44,16 @@
- [Spawning Processes & Threads]()
- [Challenges](./chapter2/challenges.md)

- [M3 & SLURM](./chapter3/chapter3.md)
- [M3 & SLURM](./chapter5/chapter5.md)

- [Login - SSH & Strudel](./chapter3/login.md)
- [Batch vs. Stream Processing]()
- [Cluster Architectures]()
- [Schedmd's SLURM]()
- [M3 Interface & Usage]()
- [Job Scripting]()
- [Batch Processing vs. Cloud Computing](./chapter5/batch-cloud.md)
- [Parallel & Distributed Computing](./chapter5/parallel-distributed.md)
- [M3 Login - SSH & Strudel](./chapter5/login.md)
- [Schedmd's SLURM](./chapter5/slurm.md)
- [M3 Interface & Usage](./chapter5/m3-interface.md)
- [Job Scripting](./chapter5/job-scripting.md)
- [Advanced SLURM]()
- [Challenges](./chapter3/challenges.md)
- [Challenges](./chapter5/challenges.md)

- [Virtualisation & DevOps]()

Expand Down Expand Up @@ -102,10 +102,10 @@
- [Job Batching](./chapter10/job-batching.md)
- [Challenges](./chapter10/challenges.md)

- [Being a HPC Member]()
- [Being a HPC Member](./chapter11/chapter11.md)

- [Expectations & Leadership]()
- [Project Workflow]()
- [Academic Supervisors & Papers]()
- [Expectations & Leadership](./chapter11/expectations-leadership.md)
- [Project Workflow](./chapter11/project-workflow.md)
- [Academic Supervisors & Papers](./chapter11/supervisors-papers.md)

[Acknowledgements](./acknowledgements.md)
1 change: 1 addition & 0 deletions src/c
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# M3 Interface & Usage
1 change: 1 addition & 0 deletions src/ch
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Project Workflow
1 change: 1 addition & 0 deletions src/chapter
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Being a HPC Member
Binary file added src/chapter1/aaf.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added src/chapter1/hpcid.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added src/chapter1/join_project.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
19 changes: 13 additions & 6 deletions src/chapter3/start.md → src/chapter1/m3.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,29 @@
# Getting Started
# M3 MASSIVE

MASSIVE (Multi-modal Australian ScienceS Imaging and Visualisation Environment) is a HPC supercomputing cluster that you will have access to as an MDN member. In this page we will set you up with access before you learn how to use it in Chapter 5. Feel free to go through the docs to learn about the [hardware config](https://docs.massive.org.au/M3/m3users.html) of M3 (3rd version of MASSIVE) and it's [institutional governance](https://massive.org.au/about/about.html#governance).

## Request an account

In order to access M3, you will need to request an account. To do this, follow this link: [HPC ID](https://hpc.erc.monash.edu.au/karaage/aafbootstrap). This should take you to a page this this:
In order to access M3, you will need to request an account. To do this, follow this link: [HPC ID](https://hpc.erc.monash.edu.au/karaage/aafbootstrap). This should take you to a page this this:


![HPC ID](./imgs/aaf.png)
![HPC ID](./aaf.png)

Type in Monash, as you can see here. Select Monash University, and tick the Remember my organisation box down the bottom. Once you continue to your organisation, it will take you to the Monash Uni SSO login page. You will need to login with your Monash credentials.

You should now see something like this: ![HPC ID System](./imgs/hpcid.png)
You should now see something like this:

![HPC ID System](./hpcid.png)

Once you are here, there are a couple things you will need to do. The first, and most important is to set your HPC password. This is the password you will use to login to M3. To do this, go to home, then click on Change Linux Password. This will take you through the steps of setting your password.

Once you have done this, you can move on to requesting access to the MDN project and getting access to gurobi.

## Add to project

To request to join the MDN project, again from the Home page click on Join Exiting Project. You should see a screen like this: ![Join Project](./imgs/join_project.png)
To request to join the MDN project, again from the Home page click on Join Exiting Project. You should see a screen like this:

![Join Project](./join_project.png)

In the text box type `vf38` and click search. This is the project code for MDN. Then select the project and click submit. You will now have to wait for the project admins to approve your request. Once they have done this, you will be able to access the project. This should not take longer than a few days, and you will get an email telling you when you have access.

Expand Down Expand Up @@ -47,4 +54,4 @@ cat ~/.ssh/id_ed25519.pub

Then, go to your github account, go to settings, and click on the SSH and GPG keys tab. Click on New SSH key, and paste the key into the box. Give it a name, and click Add SSH key.

You should now be able to clone repos using SSH. To do this, go to the repo you want to clone, but instead of copying the HTTP link, copy the SSH link, and then its regular git cloning.
You should now be able to clone repos using SSH. To do this, go to the repo you want to clone, but instead of copying the HTTP link, copy the SSH link, and then its regular git cloning.
Binary file added src/chapter1/nectar-login.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
16 changes: 16 additions & 0 deletions src/chapter1/nectar.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Nectar Cloud

The ARDC Nectar Research Cloud (Nectar) is Australia’s national research cloud, specifically designed for research computing. Like with M3, we will set you up with access now before you learn about it in later chapters. [This webpage](https://ardc.edu.au/services/ardc-nectar-research-cloud/) explains what it is if you're curious.

## Connect Monash Account to Nectar Cloud
To create an [identity](https://medium.com/@ciente/identity-and-access-management-iam-in-cloud-computing-2777481525a4) (account) in Nectar Cloud, all you have to do is login using your Monash student account. Click [this link](https://dashboard.rc.nectar.org.au) to access Nectar's landing page.

You will see the following. Make sure to click "Login via AAF (Australia)".

![nectar](./nectar-login.png)

You will be redirected to enter your Monash credentials after which you will see the Nectar Cloud dashboard for your trial project (your project name will be pt-xxxxx).

## Cloud Starter Series

ARDC has provided [this cloud starter tutorial series](https://tutorials.rc.nectar.org.au/cloud-starter/01-overview) for people new to Nectar Cloud. You should be able to follow these tutorials using your trial project. If you need more SUs (service units aka. cloud credits) in order to provision more cloud resources for MDN-related work, you should message your HPC Lead with that request.
6 changes: 6 additions & 0 deletions src/chapter11/chapter11.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# Being a HPC Member

Congratulations! You've completed all your technical new recruit training!

At this point it's important to remember that technical skills are only a part of what's required to succeed as a HPC member.
Without good teamwork skills and collaboration practices we will not be able to work together effectively and achieve our goals. To that end, this chapter outlines some basic expectations required of all HPC members along with other non-technical information that you might find useful.
1 change: 1 addition & 0 deletions src/chapter11/expectations-leadership.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Expectations & Leadership
1 change: 1 addition & 0 deletions src/chapter11/project-workflow.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Project Workflow
1 change: 1 addition & 0 deletions src/chapter11/supervisors-papers.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Academic Supervisors & Papers
46 changes: 1 addition & 45 deletions src/chapter3/challenges.md
Original file line number Diff line number Diff line change
@@ -1,45 +1 @@
# M3 Challenges

## Challenge 1

Navigate to your scratch directory and, using vim (or your chosen in-terminal editor) create a file called `hello.txt` that contains the text "Hello World". Once you have created the file, use the `cat` command to print the contents of the file to the screen.

## Challenge 2

Write a bash script that prints the contents of the above hello.txt file to the screen and run it locally (on your login node).

## Challenge 3

Submit the above script to the queue by writing another SLURM bash script. Check the status of the job using `squeue`. Once the job has finished, check the output using `cat`. You can find the output file in the directory you submitted the job from.

## Challenge 4

Request an interactive node and attach to it. Once you have done this, install python 3.7 using conda.

## Challenge 5

Clone and run [this](./dl_on_m3/alexnet_stl10.py) script. You will need to first install the dependencies for it. You don't need to wait for it to finish, just make sure it is working. You will know its working if it starts listing out the loss and accuracy for each epoch. You can stop it by pressing `ctrl + c`.

Once you have confirmed that it is working, deactivate and delete the conda environment, and then end the interactive session.

> Hint: I have included the dependencies and their versions (make sure you install the right version) in the `requirements.txt` file. You will need python 3.7 to run this script.

## Challenge 6

Go back to the login node. Now you are going to put it all together. Write a bash script that does the following:

- (1) requests a compute node
- (2) installs python using conda
- (3) clones and runs the above script

Let this run fully. Check the output of the script to make sure it ran correctly. Does it match the output of the script you ran in challenge 5?
> Hint: You can check the output of the script at any time by `cat`ing the output file. The script does not need to have finished running for you to do this.

## Challenge 7

Edit your submission script so that you get a gpu node, and run the script using the gpu.
> Hint: Use the m3h partition

## Challenge 8

Now you want to clean up your working directory. First, push your solutions to your challenges repo. Then, delete the challenges directory, as well as the conda environment you created in challenge 6.
# Challenges
7 changes: 0 additions & 7 deletions src/chapter3/chapter3.md

This file was deleted.

Binary file removed src/chapter3/imgs/hpcid.png
Binary file not shown.
Binary file removed src/chapter3/imgs/join_project.png
Binary file not shown.
47 changes: 0 additions & 47 deletions src/chapter3/linux-cmds.md

This file was deleted.

79 changes: 0 additions & 79 deletions src/chapter3/shared-fs.md

This file was deleted.

Loading