AccelerateHS / AccelerateHS/accelerate

[Tracking Issue] Implementing (Segmented) Single-Pass Look-Back Scans

未关闭
#523 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
Haskell
星标
1k
派生
135
PR 合并指标
30 天内没有已合并 PR

描述

As described in my thesis, single-pass look-back scans have some performance advantages when dealing with big datasets versus the current implementation in Accelerate. This issue is designed to track the various PRs that will be created, as the code will be split over various PRs across not only this repo but the [AccelerateHS/accelerate-llvm](https://github.com/AccelerateHS/accelerate-llvm) repo as well.

The current plan for PRs is as follows:

- [ ] Create the `SegScan` primitive in this repo, and provide an interpreter implementation
- [ ] Create the GPU implementation for LLVM in [AccelerateHS/accelerate-llvm](https://github.com/AccelerateHS/accelerate-llvm)
- [ ] Create the CPU implementation for LLVM in [AccelerateHS/accelerate-llvm](https://github.com/AccelerateHS/accelerate-llvm)
- [ ] Change the `Prelude` to use the new primitive
- [ ] Change the GPU implementation for non-segmented scans in [AccelerateHS/accelerate-llvm](https://github.com/AccelerateHS/accelerate-llvm)

This should allow for the PRs to still be manageable, instead of dumping a 1000 lines of changed code into a single PR. I hope to submit the first PR soon™

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。