Introduction to ARCHER2 for software developers


This lesson provides an introduction to using ARCHER2 for users who:

The lesson aims to answer the following questions:

General Information

Requirements: Participants must have access to a computer with a Mac, Linux, or Windows operating system (not a tablet, Chromebook, etc.) that they have administrative privileges on. They should have a few specific software packages installed (listed below). They are also required to abide by the ARCHER2 Training Code of Conduct.

Accessibility: We are dedicated to providing a positive and accessible learning environment for all. Please notify the instructors in advance of the workshop if you require any accommodations or if there is anything we can do to make this workshop more accessible to you.

Contact: Please email for more information.


You should have used remote HPC facilities before. In particular, you should be happy with connecting using SSH, know what a batch scheduling system is and be familiar with using the Linux command line. You should also be happy editing plain text files in a remote terminal (or, alternatively, editing them on your local system and copying them to the remote HPC system using scp). Finally, you should be comfortable with compiling parallel HPC source code that uses MPI and OpenMP.


Setup Download files required for the lesson
Day 1 10:00 1. Welcome What can I expect from this course?
How will the course work and how will I get help?
How can I give feedback to improve the course?
10:15 2. Connecting to ARCHER2 and transferring data How can I access ARCHER2 interactively and transfer data?
11:00 3. Morning Break Break
11:15 4. Overview of the ARCHER2 system What hardware and software is available on ARCHER2?
How does the hardware fit together?
12:00 5. Lunch Break
13:00 6. ARCHER2 development environment What does the ARCHER2 development environment look like and how do I access different components?
How can I find out what compilers, tools, and libraries are available?
How can I capture my current environment for reuse or to share with others?
How can I get help with compiling and developing software on ARCHER2?
14:15 7. Afternoon Break Break
14:30 8. ARCHER2 scheduler: Slurm How do I write job submission scripts?
How do I control jobs?
How do I find out what resources are available?
15:15 9. Using resources effectively How do I choose the correct resources for my jobs?
How do I understand what resources my jobs are using?
16:00 Finish
Day 2 10:00 10. Debugging and profiling on ARCHER2 What debugging tools are available on ARCHER2 and how can I access them?
What profiling tools are available on ARCHER2 and how can I access them?
Where can I find more documentation on and get help with these tools?
11:00 11. Morning Break Break
11:15 12. How to be a good ARCHER2 citizen How can I be a responsible user?
How can I protect my data?
11:45 13. Using SAFE How can I manage my ARCHER2 user account?
How can I gain access to licensed software on ARCHER2?
How can I check what resources I am using and look at historical usage?
12:15 14. Lunch Break
13:15 15. Next steps Where can I get further help on using ARCHER2?
What other training is available to me?
How can I get access to ARCHER2 for my research?
13:45 16. Bootstrapping your use of ARCHER2 How can I get started with using ARCHER?
14:20 17. OPTIONAL PRACTICAL: Benchmarking Molecular Dynamics Performance Using GROMACS How does a small, 80k-atom system performance scale as more cores are used?
What about a larger, 12M-atom system?
15:40 Finish

The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.