Futhark by Example

· coding hardware · Source ↗

TLDR

  • Hands-on, example-driven introduction to Futhark, a purely functional data-parallel array language that compiles to GPU and CPU backends.

Key Takeaways

  • Futhark targets high-performance parallel workloads; programs run on GPU or CPU without changing source code.
  • The example collection covers basics through advanced topics: radix sort, automatic differentiation, matrix multiplication, Kahan summation, and literate Futhark with gnuplot plotting.
  • Real projects built in Futhark include Pareas (a compiler), Neptune (Poseidon hash for Filecoin), ray tracers based on Peter Shirley’s books, and a lattice Boltzmann solver.
  • The interpreter supports loading example programs directly for experimentation; “Parallel Programming in Futhark” is the alternative conventional reference.
  • Examples ported from Dex cover Mandelbrot, Monte Carlo pi, Brownian motion, and a multi-step ray tracer, showing cross-language benchmark parity.

Hacker News Comment Review

  • No substantive HN discussion yet.

Original | Discuss on HN