Introduction to running R, Python, Julia and MATLAB in HPC Logo

Pre-requirements:

  • Pre-requirements
  • Prepare the environment

COMMON:

  • Log in session
  • Use the tarball with exercises
  • Use a text editor
  • NAISS projects overview
  • Desktop On Demand
  • HPC clusters
  • Parallel and multithreaded functions
  • Other courses

R Lessons:

  • Schedule
  • Introduction R
  • Load and run R
  • Packages
  • Isolated environments with renv
  • Running R in batch mode
  • Parallel and multithreaded functions
  • Interactive work on the compute nodes
  • Using RStudio
  • ML with R
  • Summary
  • Evaluation

Matlab Lessons:

  • Preliminary schedule
  • Introduction to MATLAB
  • Load and Run MATLAB
  • Slurm job scheduler and MATLAB in terminal
  • MATLAB GUI and SLURM
  • Parallel and multithreaded functions
  • Add-Ons
  • Session: Matlab in Jupyter
  • Summary
  • Evaluation

Julia Lessons:

  • Preliminary schedule
  • Introduction Julia
  • Load and run Julia
  • Packages and isolated environments
  • Running Julia in batch mode
  • Parallel and multithreaded functions
  • Sessions: Interactive work on compute nodes
  • Summary
  • Evaluation

Extra reading:

  • R - extra reading and links
  • Matlab - extra reading and links
  • Julia - extra reading and links
    • Documentation
      • Courses
        • Material for improving your programming skills
        • Second level
      • IDEs
      • Packages
Introduction to running R, Python, Julia and MATLAB in HPC
  • Julia - extra reading and links
  • Edit on GitHub

Julia - extra reading and links

Documentation

  • Documentation at the HPC centres
    • UPPMAX

    • HPC2N

    • LUNARC

    • NSC

    • PDC

  • Official Julia documentation is found here

  • Slack channel for Julia and instructions for joining it are found here: https://julialang.org/slack/

  • HPC2N YouTube video on Julia in HPC

Courses

Material for improving your programming skills

First level

The Carpentries teaches basic lab skills for research computing.

  • Programming with Julia (alpha)

Second level

CodeRefinery develops and maintains training material on software best practices for researchers that already write code. Their material addresses all academic disciplines and tries to be as programming language-independent as possible.

  • Not yet anything Julia specific

ENCCS (EuroCC National Competence Centre Sweden) is a national centre that supports industry, public administration and academia accessing and using European supercomputers. They give higher-level training of programming and specific software.

  • Julia for high-performance Computing

  • Julia for High-performance data analytics

IDEs

  • Jupyter: Jupyter notebooks are familiar to many Python and R users.

  • Pluto.jl: Offers a similar notebook experience to Jupyter, but understands global references between cells, and reactively re-evaluates cells affected by a code change.

  • A text editor like nano, emacs, vim, etc., followed by running your code with julia filename.jl. There are also plugins for Julia for major text editors - do an internet search on e.g. “emacs julia” or “vim julia” to find out more.

Packages

  • List ecosystems

Previous

© Copyright 2025, UPPMAX & HPC2N.

Built with Sphinx using a theme provided by Read the Docs.