on master help sign in
Move the roadmap items from github wiki
commit014f93b584dfdf2c9e6a6762a9d9afe313069a9b authorHarendra Kumar <harendra@composewell.com> dateWed 16 Jun 2021, 15:30 (5 years ago) parent0302170
1 file changed+36
design/roadmap.md+36
design/roadmap.mdnew file+36
@@ -0,0 +1,36 @@
1+# Roadmap
2+
3+Some of these items may be present in the issues as well, but this file
4+lists larger areas, experimental areas and organizes items by areas. We can
5+also use the areas listed here as labels (aspect:topic) on issues.
6+
7+## Scheduling
8+
9+* Free applicative and Free Alternative, batched Alternative (push
10+ scheduling instead of pull scheduling)
11+* N-ary operations e.g. real balanced interleave
12+* Scheduling: Coalescing of tasks based on programmer defined criteria
13+ * Batching based on the target host
14+ * Batching/chunking for parallel/distributed execution
15+ * Batching iterations
16+
17+## Concurerncy
18+
19+* Controlled parallelism:
20+ * Control based on the level in the tree
21+ * Control based on the CPU/IO utilization based pacing
22+ * Utilize non-blocking IO
23+* Performance: Measure lock/CAS contention overhead, an option to
24+ dequeue work and run in batches instead of one at a time to reduce lock
25+ contention?
26+* Cross thread recursion
27+
28+## Persistence
29+
30+* Pause and resume using something like
31+ [monad-recorder](https://hackage.haskell.org/package/monad-recorder)
32+* Save internal buffered state during a pause?
33+
34+## Testing
35+
36+* improve coverage