~/talk

Accelerate Haskell for GPU and Multicores

Talkat ZuriHac 2022 · on Wednesday, 2022-06-15· [haskell]
slides:none on file

A Haskell EDSL compiles array programs to native kernels via LLVM/CUDA codegen, caches compiled kernels (run/runN) and aggressively fuses combinators so higher‑order code turns into tight loops; LULESH reference CUDA is 3.5s versus Accelerate 6s, OpenMP versions are competitive, and a salt‑marsh Python+OpenCL pipeline (1–1.6s/frame) runs faster after porting. Implementation uses generics for user types, Template Haskell for pattern synonyms, Tracy hooks for source‑level profiling, and ongoing work adds destructive updates, schedulers and automatic differentiation; current GPU backend targets NVIDIA only.

AI-written summary · about

  1. 0:00Start
  2. 0:18Gabriel Keller
  3. 4:33Performance
  4. 7:04Benchmarks
  5. 8:25Formation of Spatial Patterns in Ecosystems
  6. 16:05Index into an Array
  7. 17:41Stencil Operations
  8. 19:24Matrix Matrix Multiplication
  9. 22:11Type Constructor
  10. 27:44Profiling and Debugging
  11. 36:35Haskell's Bidirectional Pattern Synonyms
  12. 41:39Pattern Matching
  13. 55:57An Example of Interference for Deep Neural Network
  14. 56:14Is It Possible To Execute All these Commands on a Gpu without Copying the Results to Cpu
  15. 59:25Linear Types as a Way To Improve the Inner Workings of the Library
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.