Using "Program shaping" and algorithmic skeletons (...)
summary
Uses program shaping plus algorithmic skeletons to refactor an Erlang evolutionary multi‑agent system so parallelism becomes a library call instead of hand‑written spawn/send code. Implements rewrite refactorings in Wrangler and a skeleton library scale, builds concurrent and hybrid versions, and measures super‑linear speedups — over 70× on a 64‑core shared‑memory machine. Cuts parallel code from hundreds to ~100 lines and developer effort from days to about one day.
AI-written summary · about
chapters (18)
- 0:00Intro
- 1:45What are we trying to achieve?
- 2:53Key Software Engineering Challenges
- 4:07The RePhrase Approach
- 7:23Refactoring for Parallelism
- 9:10Algorithmic Skeletons
- 10:29Example Skeletons
- 13:41Skel Example
- 15:18Evolutionary Multi-Agent Systems (EMAS)
- 15:29EMAS - Basic Structure
- 16:15EMAS Code
- 16:44Parallelising EMAS
- 17:48Program Shaping Refactorings
- 18:09EMAS - Program Shaping
- 19:52Optimization Benchmark
- 20:06Speedups for Rastrigin Function
- 20:45Speedups for LABS
- 21:40Conclusions








