Skip to content

Latest commit

 

History

History
49 lines (32 loc) · 3.19 KB

overview.md

File metadata and controls

49 lines (32 loc) · 3.19 KB

@def title = "Overview" @def tags = ["syntax", "code"]

High Performance Computing in Julia

This module is designed for teaching programming to new Masters/PhD students, starting from the basics and working up to writing high performance code for any scale. This module will primarily be delivered via the Midlands Physics Alliance Graduate School (MPAGS). The module is open to anyone else who is interested in the material. All of the resources (including the lecture notes) will be available publicly. Get in touch with me via email if you would like to enroll, and receive updates about the course.

Prerequisites

Students taking this course should match following description:

  1. Have at least some limited experience with programming in any language, e.g. Python, MATLAB, C/C++ etc.
  2. Basic mathematics skills, including elementary algebra and calculus.
  3. Willingness to learn something new!

No prior knowledge about the Julia programming language is required as this course will provide a crash course to get everyone up to speed at the start of the module. Topics learnt during this course are not based solely around Julia, but can be transferred to other languages.

Topics

This module will focus on teaching students how to write high performance code, taking advantage of modern hardware, to be able to execute code at any scale, from your own machine with multiple cores, to using a GPU, all the way to executing code across an entire High Performance Cluster.

See the Topics page for a detailed overview of the topics covered.

Module Convenor

This course is taught by me, Dr. Jamie Mair, a Research & Teaching Fellow at the University of Nottingham. You can contact me about the course via email.

Timetable and format

This course will be a self-study module, run in January 2025, starting in the w/c Monday 20th January. Each week a series of online videos will be posted, along with accompanying notes online. To be notified of each week's materials, as well as recieving links to the assessment materials, please email me directly to sign up. At the end of the course, once all materials have been posted, links to them will be posted here.

Assessment

Each week of teaching will have a corresponding assessment delivered via GitHub classroom, with automatic feedback/marking. For students taking the MPAGS course, links to these assessments will be provided via email, so make sure you are on the mailing list. For other students who are not taking the MPAGS module, links to the GitHub templates will be posted here.

Citation

If this course is useful for your research, please consider citing this work:

@misc{Mair2023MPAGS,
  author        = {Jamie Mair},
  title         = {High Performance Computing in Julia, Graduate Course and Book},
  month         = {January},
  year          = {2023},
  howpublished  = "\url{https://jamiemair.github.io/mpags-high-performance-computing}",
  url           = "\url{https://jamiemair.github.io/mpags-high-performance-computing}",
  version       = {1.2}
}