Commit graph

117 commits

Author SHA1 Message Date
Simon Cruanes
223f22a0d9
breaking: move fork-join into sub-library moonpool.forkjoin 2024-02-11 16:39:44 -05:00
Simon Cruanes
cc8860c6e3
split into moonpool.private and moonpool; format; remove DLA 2024-02-11 16:39:43 -05:00
Simon Cruanes
dd9206b5b8
use new tracing support in tests and benchs 2024-01-30 16:12:03 -05:00
Simon Cruanes
16663651d6
update test 2023-11-24 23:12:20 -05:00
Simon Cruanes
b58041153a
add another test 2023-11-24 22:56:33 -05:00
Simon Cruanes
989c012f77 fix warnings 2023-11-08 12:02:13 -05:00
Simon Cruanes
62e8336d84 update tests and benchs for new Fut API 2023-11-08 12:02:13 -05:00
Simon Cruanes
245bfd9b7b test: regression test for bug 2023-11-08 12:02:13 -05:00
Simon Cruanes
72f289af84 refactor: use a fixed size work-stealing deque
if it's full, tasks overflow into the main queue.
2023-11-08 11:36:10 -05:00
Simon Cruanes
928345437a fix tests to use new API 2023-11-08 09:41:57 -05:00
Simon Cruanes
359ec0352b
small change to test 2023-10-27 14:47:59 -04:00
Simon Cruanes
3e614ec992
rename Pool to Ws_pool; deprecated Moonpool.Pool 2023-10-25 23:43:18 -04:00
Simon Cruanes
30035fa67d
fix pool: suspension handler might run from a different thread!
this means we can't reuse the same worker state, it's neither thread
safe nor deadlock-safe (the worker whose state it is might be waiting on
the main queue)
2023-10-25 23:30:04 -04:00
Simon Cruanes
1ed25e5aca
test: make t_ws_deque consume less ram 2023-10-25 22:41:26 -04:00
Simon Cruanes
d9da7844e2
test: run more diverse pools in t_fib_rec 2023-10-25 22:32:57 -04:00
Simon Cruanes
6452ca89d1
rename Simple_pool into Fifo_pool, update doc 2023-10-25 21:55:29 -04:00
Simon Cruanes
e0d3a18562
improve test a bit 2023-10-25 09:57:25 -04:00
Simon Cruanes
78407c495d
more tests for WS_deque 2023-10-25 09:56:56 -04:00
Simon Cruanes
91c0c3f6c1
fix props 2023-10-25 01:01:51 -04:00
Simon Cruanes
3bfc4cdcc7
more test 2023-10-25 00:28:16 -04:00
Simon Cruanes
c03e342178
tests: run some tests on both Pool and Simple_pool 2023-10-25 00:21:07 -04:00
Simon Cruanes
ae5f3a7e97
tests for ws_deque 2023-10-25 00:09:38 -04:00
Simon Cruanes
43eca1d4e2
restore test 2023-10-24 19:56:18 -04:00
Simon Cruanes
fb7cc5d69f
add heavier test for a particular hangup in fork join 2023-10-24 16:56:52 -04:00
Simon Cruanes
9ab9df78c9
update tests a bit 2023-10-24 13:48:23 -04:00
Simon Cruanes
60255c0e95
test: add dep on trace-tef; add new test for scheduling issues
trying to expose that sometimes, some workers might be asleep while
others do several tasks, because they're sleeping on the "wrong" queue
2023-10-24 10:03:46 -04:00
Simon Cruanes
d37733b5bd add tests for Bounded_queue 2023-10-12 22:24:28 -04:00
Simon Cruanes
cfbcc72648
improve a bit the resource test 2023-08-13 22:47:54 -04:00
Simon Cruanes
6c4d2cbc79
test for proper resource handling in Pool.shutdown 2023-08-13 22:24:14 -04:00
Simon Cruanes
d18e88a772
details in test 2023-07-17 10:54:47 -04:00
Simon Cruanes
366d26527c
another test 2023-07-16 23:21:45 -04:00
Simon Cruanes
f7d9e6c0c1
add prop test for Fork_join.map_list 2023-07-16 23:17:16 -04:00
Simon Cruanes
6c0063f9ac
more tests 2023-07-13 12:23:52 -04:00
Simon Cruanes
20240a6190
fix: Fork_join.for_ 0 must not hang 2023-07-13 12:23:25 -04:00
Simon Cruanes
548212ab43
add prop test for fork_join 2023-07-10 23:20:25 -04:00
Simon Cruanes
2326ae0078
modify Fork_join.for_ to avoid the allocator.
The allocator means calling a closure at each step, which means local
a reference will have to be heap allocated (and worse, that floats will
be unboxed). Instead we give the function a pair of low,high bounds for
a local for.
2023-07-10 01:19:16 -04:00
Simon Cruanes
55f831bc8b
add Fork_join.{for_,map_reduce_commutative} 2023-07-10 01:14:16 -04:00
Simon Cruanes
b080c962e1
test: use less aggressive numbers, my poor ram! 2023-07-10 00:01:37 -04:00
Simon Cruanes
e73c1a2966
tests: compat 4.x 2023-07-09 22:07:44 -04:00
Simon Cruanes
27ec0f85e6 test: add more fork-join tests 2023-07-05 21:55:00 -04:00
Simon Cruanes
b346fa03af rename tests 2023-07-05 21:55:00 -04:00
Simon Cruanes
2db2bd9ba2 rename test dir 2023-07-05 21:55:00 -04:00
Simon Cruanes
0f383e877a test: add a parallel quicksort 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
3b9f56a138 add test for fork_join 2023-07-05 21:55:00 -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
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
eab774813d
test: add load test for chans 2023-06-20 22:43:12 -04:00