Skip to content
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 

Repository files navigation

loo Parallelization

General documentation for Stan/Numfocus GSOC 2026 project: parallelizing loo. The relevant issue is #308.

Currently loo relies on the parallel package from base R @R to parallelize certain computations, such as moment matching, Pareto smoothed importance sampling @PSIS, and more. This works well on Unix systems, where parallel can use forking, but Windows requires a separate, socket based path. This project will replace loo's current parallelization structure, swapping to a platform-agnostic approach using mirai @mirai. This will have the added benefit of allowing users to parallelize execution over heterogenous compute resources (e.g., over local cores, a distributed systems, GPUs, or any mixture). This freedom decouples execution profiles from loo's software, allowing users with varying compute needs to exploit their available resources without any extra work. Further, a major part of the project here would be writing strong documentation which teaches users how to make use of some common resources such as SLURM or SSH access to users, building off of the documentation in packages like mirai, but with a focus on applications to loo.

Main Tasks

Broadly then, our main tasks are:

  • Benchmark and test all changes
  • Swap the codebase to mirai
  • Parallelize heretofore serial code when possible
  • Write documentation (function level, vignettes, etc.) which clearly showcase how to use the new parallel backend

Misc. Tasks

  • Warn users when too much memory may be used

About

Notes for Stan/Numfocus GSOC 2026 project: parallelizing loo

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors