Simon Cruanes
|
03212e7478
|
fork-join: add both_ignore
|
2023-07-05 21:55:00 -04:00 |
|
Simon Cruanes
|
43487ebe49
|
add Fork_join.all_{list,init}
primitives to fork-join over n tasks
|
2023-07-05 21:55:00 -04:00 |
|
Simon Cruanes
|
45838d9607
|
fix: in fork-join, start sub-tasks within a handler
|
2023-07-05 21:55:00 -04:00 |
|
Simon Cruanes
|
3b9f56a138
|
add test for fork_join
|
2023-07-05 21:55:00 -04:00 |
|
Simon Cruanes
|
309424a58f
|
move fork join into its own module
|
2023-07-05 21:55:00 -04:00 |
|
Simon Cruanes
|
009855ce0d
|
feat: add Pool.fork_join
|
2023-07-05 21:55:00 -04:00 |
|
Simon Cruanes
|
2bbb4185a4
|
readme
|
2023-06-24 15:53:05 -04:00 |
|
Simon Cruanes
|
456a31c939
|
dune
|
2023-06-24 15:06:41 -04:00 |
|
Simon Cruanes
|
9f04d254af
|
feat: Pool.run_wait_block can return a value now
|
2023-06-24 15:06:40 -04:00 |
|
Simon Cruanes
|
e4b159c695
|
fut: fix warnings
|
2023-06-24 15:05:56 -04:00 |
|
Simon Cruanes
|
ab718b22f9
|
add Pool.run_wait_block; rename Pool.run into Pool.run_async
|
2023-06-24 14:50:43 -04:00 |
|
Simon Cruanes
|
ffd37642b9
|
Merge pull request #4 from c-cube/wip-await
await
|
2023-06-20 22:59:08 -04:00 |
|
Simon Cruanes
|
2b6387e388
|
mdx for 5.0 only
|
2023-06-20 22:44:06 -04:00 |
|
Simon Cruanes
|
76ec06942a
|
doc: add more to the readme
|
2023-06-20 22:44:05 -04:00 |
|
Simon Cruanes
|
3676d1e28d
|
test: remove dep
|
2023-06-20 22:43:58 -04:00 |
|
Simon Cruanes
|
1d23d2d7a1
|
rename Fut.await_exn to Fut.await
|
2023-06-20 22:43:33 -04:00 |
|
Simon Cruanes
|
68d3487ca8
|
CI
|
2023-06-20 22:43:15 -04:00 |
|
Simon Cruanes
|
4fd6154b56
|
refactor suspend
do not wrap each step in a new handler; using Effects.Deep we only wrap
the entrypoint of the task, and subsequent `continue` get scheduled
as-is.
|
2023-06-20 22:43:15 -04:00 |
|
Simon Cruanes
|
f98bcf2f08
|
add test for await
|
2023-06-20 22:43:14 -04:00 |
|
Simon Cruanes
|
62777e1112
|
test: add tests for Fut.await
|
2023-06-20 22:43:14 -04:00 |
|
Simon Cruanes
|
e26029ab90
|
feat: add Fut.await and Fut.await_exn for OCaml >= 5.0
this uses suspension (based on `Suspend_`) to wait for completion of the
future.
|
2023-06-20 22:43:13 -04:00 |
|
Simon Cruanes
|
52a04701ed
|
feat: add Suspend_ module, using effects, on OCaml >= 5.0
|
2023-06-20 22:43:13 -04:00 |
|
Simon Cruanes
|
eab774813d
|
test: add load test for chans
|
2023-06-20 22:43:12 -04:00 |
|
Simon Cruanes
|
25e8dcdbce
|
add ocaml-coc
|
2023-06-20 12:33:23 -04:00 |
|
Simon Cruanes
|
1e21157e8a
|
feat: add Chan again
|
2023-06-18 22:09:22 -04:00 |
|
Simon Cruanes
|
22ccb76d66
|
readme
|
2023-06-16 09:18:29 -04:00 |
|
Simon Cruanes
|
67bc47181c
|
fix: in blocking queue, pop works on a non empty closed queue
|
2023-06-15 22:24:58 -04:00 |
|
Simon Cruanes
|
4e112e1591
|
add some property tests
|
2023-06-15 21:34:33 -04:00 |
|
Simon Cruanes
|
7707a7c1ce
|
prepare for 0.2
|
2023-06-15 14:26:28 -04:00 |
|
Simon Cruanes
|
b8588f2d65
|
feat: add Fut.for_list
|
2023-06-15 11:59:10 -04:00 |
|
Simon Cruanes
|
d74c6da3fa
|
fix(fut): fix bug when calling wait_list []
|
2023-06-15 11:58:55 -04:00 |
|
Simon Cruanes
|
39712e7f54
|
test: regression test for bug in wait_list on empty list
|
2023-06-15 11:58:32 -04:00 |
|
Simon Cruanes
|
d60bf3828b
|
fix: join_array on arrays of length=1 had a bound error
|
2023-06-15 11:42:13 -04:00 |
|
Simon Cruanes
|
c8235f463d
|
test: add regression test for bug in join_array
|
2023-06-15 11:42:03 -04:00 |
|
Simon Cruanes
|
fc3d2d2645
|
add around_task to Pool.create
|
2023-06-15 11:23:55 -04:00 |
|
Simon Cruanes
|
b451fde853
|
add Pool.shutdown_without_waiting
|
2023-06-15 10:52:17 -04:00 |
|
Simon Cruanes
|
059ee8a1d5
|
add Pool.num_tasks
|
2023-06-15 10:35:41 -04:00 |
|
Simon Cruanes
|
f76b713556
|
add Fut.is_done
|
2023-06-15 10:24:20 -04:00 |
|
Simon Cruanes
|
f18ed688e9
|
add Blocking_queue.size
|
2023-06-15 10:20:33 -04:00 |
|
Simon Cruanes
|
debdc8fc31
|
add Fut.for_array to easily iterate on an array in parallel
|
2023-06-14 11:38:01 -04:00 |
|
Simon Cruanes
|
826d1f15c8
|
add test
|
2023-06-14 11:34:44 -04:00 |
|
Simon Cruanes
|
dd5a177a5f
|
add Fut.get_or_fail{,_exn}
|
2023-06-14 11:33:24 -04:00 |
|
Simon Cruanes
|
483392986c
|
perf: limit number of work queues in pool
|
2023-06-14 11:21:11 -04:00 |
|
Simon Cruanes
|
1d5e962d87
|
Merge pull request #2 from c-cube/perf-pool-2023-06-12
perf: improve pool
|
2023-06-13 22:03:46 -04:00 |
|
Simon Cruanes
|
b084caea69
|
docs
|
2023-06-13 13:52:22 -04:00 |
|
Simon Cruanes
|
82af5497f8
|
pool: do some spinning in run, not in workers
|
2023-06-13 13:52:22 -04:00 |
|
Simon Cruanes
|
939c6e117c
|
perf: a few retries in the pool
|
2023-06-13 13:52:22 -04:00 |
|
Simon Cruanes
|
bde69ba33f
|
perf: use multiple queues and non-blocking work stealing from them
|
2023-06-13 13:52:22 -04:00 |
|
Simon Cruanes
|
a9a51b08c4
|
test t_tree_futs: env J to set size of pool
|
2023-06-12 23:17:07 -04:00 |
|
Simon Cruanes
|
9a922088fd
|
test t_tree_futs: run GC stats thread, for trace
|
2023-06-12 23:17:07 -04:00 |
|