AccelerateHS / AccelerateHS/accelerate
Loop-invariant code motion
未關閉
frontend
new feature
- 主要語言
- Haskell
- 星號
- 1k
- 分支
- 135
- PR 合併指標
- 30 天內沒有已合併 PR
描述
We don't have any form of loop-invariant code-motion implemented. At the scalar level we could assume that the backend compiler (CUDA / LLVM) will do that for us, but at the array level we are on our own (given the current approach of compiling each collective operation individually).
In the mean time, the following little hack will force a thing to be executed before moving on:
``` haskell
licm :: (Arrays a, Arrays b) => Acc a -> (Acc a -> Acc b) -> Acc b
licm x f = (id >-> f) x
```
貢獻指南
這個儲存庫沒有索引到貢獻指南
評估
這個 Issue 還沒有評估資料。