WeSearch

Accelerate

·5 min read · 0 reactions · 0 comments · 10 views
#haskell#high-performance computing#parallel arrays#gpu computing#functional programming
Accelerate
⚡ TL;DR · AI summary

Data.Array.Accelerate is an embedded language in Haskell for high-performance computing using multi-dimensional arrays. It supports collective operations like maps, reductions, and permutations, which can be compiled and executed on various architectures including GPUs. The library includes backends for CPUs and CUDA-enabled GPUs, along with tools for interoperability and performance optimization.

Key facts
Original article
GitHub
Read full at GitHub →
Opening excerpt (first ~120 words) tap to expand

High-performance parallel arrays for Haskell Data.Array.Accelerate defines an embedded language of array computations for high-performance computing in Haskell. Computations on multi-dimensional, regular arrays are expressed in the form of parameterised collective operations (such as maps, reductions, and permutations). These computations are online-compiled and executed on a range of architectures. For more details, see our papers: Accelerating Haskell Array Codes with Multicore GPUs Optimising Purely Functional GPU Programs (slides) Embedding Foreign Code Type-safe Runtime Code Generation: Accelerate to LLVM (slides) (video) Streaming Irregular Arrays (video) There are also slides from some presentations on Accelerate: Embedded Languages for High-Performance Computing in Haskell GPGPU…

Excerpt limited to ~120 words for fair-use compliance. The full article is at GitHub.

Anonymous · no account needed
Share 𝕏 Facebook Reddit LinkedIn Threads WhatsApp Bluesky Mastodon Email

Discussion

0 comments

More from GitHub