Parallelization: Making the most of your Machine

From Stat DS Computing Wiki
Revision as of 03:31, 27 March 2026 by Ajshen (talk | contribs) (Created page with "By default, most programming languages like Python and R will only use one CPU core/thread to execute your code. For small workloads, this is often sufficient even on a person...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

By default, most programming languages like Python and R will only use one CPU core/thread to execute your code. For small workloads, this is often sufficient even on a personal device. However, larger data processing or analysis workflows will often taken far too long to run on a single core or thread.

Parallelization is the process of taking a large computational task and breaking it into smaller tasks that can all be run simultaneously and independently. For example, most bootstrap methods can be parallelized, since each bootstrap sample is processed independently. This page will introduce several tools and techniques for running parallel workflows.

Title Summary Technical Level Scope
Parallel computing A primer on the benefits of parallel computing ⭐⚫⚫⚫⚫ Everything
Terminal multiplexers Use multiple terminal "windows" to run several programs simultaenously ⭐⭐⚫⚫⚫ Any machine that can run Bash commands
Parallelization in python Introduces several python packages for parallel workflows ⭐⭐⭐⚫⚫ Any machine that runs Python
Parallelization in r Introduces several R packages for parallel workflows ⭐⭐⭐⚫⚫ Any machine that runs R
Slurm