AccelerateHS / AccelerateHS/accelerate

Sequential array operations

Open
#147 9 comments 0 reactions 0 assignees View on GitHub
language nested parallelism
Dominant language
Haskell
Stars
1k
Forks
135
PR merge metrics
No merged PRs in 30d

Description

We have already got `sfoldl`, but we need more sequential array operators. In particular, we also need to be able to produce arrays in sequential code — e.g., we should have `smap` and `szipwith`. (I'm not convinced this is the best naming scheme, though.)

This leads to having `Exp` computations that are array-valued. The main conceptual problem with those is that we need to be able to statically track the size of these arrays (after all, an array-valued `Exp` result may be the result of a `map`). This may be possible with the type-level naturals that should be coming with GHC 7.8. They are not very powerful yet (reasoning-wise), but I think we can already do a lot with some very simple constraints. Our main cases seem to be that a function preserves the size or collapses an array to a singleton.

This might also be helpful for #142 as it would give us array stencils with static sizes.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.