Jason Volk
|
3e9b830206
|
ircd::ctx::parallel: Block interruption when calling sender().
|
2019-01-25 17:03:29 -08:00 |
|
Jason Volk
|
79dc0955b4
|
ircd::ctx::parallel: Fix counter regressions.
|
2019-01-22 14:25:05 -08:00 |
|
Jason Volk
|
defed2c008
|
ircd::ctx::parallel: Use monotonic counters only; use copy for closure argument.
|
2019-01-21 12:22:50 -08:00 |
|
Jason Volk
|
52e6c28383
|
ircd::ctx::parallel: Simplify internal interface.
|
2019-01-18 14:54:04 -08:00 |
|
Jason Volk
|
8f4fe97286
|
ircd::ctx::parallel: Various cleanup; clarify counting mechanisms.
|
2019-01-17 15:51:41 -08:00 |
|
Jason Volk
|
4871928bfa
|
ircd::ctx: Partial de-inline of dock methods.
|
2019-01-13 13:57:34 -08:00 |
|
Jason Volk
|
84265c3a13
|
ircd::ctx::parallel: Ensure the counters are not affected by exceptions.
|
2019-01-01 21:15:10 -08:00 |
|
Jason Volk
|
7f4bb1a7db
|
ircd::ctx::parallel: Handle case for empty pool by executing receiver immediately.
|
2019-01-01 21:15:10 -08:00 |
|
Jason Volk
|
254e6c287d
|
ircd::ctx: Synchronize workers before rethrowing the eptr.
|
2019-01-01 17:05:15 -08:00 |
|
Jason Volk
|
16ebbbfa8a
|
ircd::ctx: Move and adjust default stack size.
|
2018-12-28 14:07:40 -08:00 |
|
Jason Volk
|
4a47b39298
|
ircd::ctx: Create and use an options structure for ctx::pool.
|
2018-12-28 12:57:32 -08:00 |
|
Jason Volk
|
c9c280c864
|
ircd::ctx: Simplify queue interface; remove access to dock.
|
2018-12-28 12:42:08 -08:00 |
|
Jason Volk
|
364302c212
|
ircd::ctx: Add soft and hard limit logic for submitting to pool.
|
2018-12-27 17:20:42 -08:00 |
|
Jason Volk
|
73459e75ff
|
ircd::ctx: Update assumptions for yielding during pool submit.
|
2018-12-27 16:30:04 -08:00 |
|
Jason Volk
|
4c5891e354
|
ircd::ctx: Block the caller after submit when parallel saturated.
|
2018-12-26 17:35:49 -08:00 |
|
Jason Volk
|
b0d5e5d4c8
|
ircd::ctx: Improve ctx::parallel template.
|
2018-12-26 17:19:03 -08:00 |
|
Jason Volk
|
3d79c94bb2
|
ircd::ctx: Add ctx::parallel device.
|
2018-12-24 18:36:56 -08:00 |
|
Jason Volk
|
9f70ce1b28
|
ircd::ctx: Add pool::min() convenience.
|
2018-12-24 16:20:03 -08:00 |
|
Jason Volk
|
387e8b8eed
|
ircd::ctx: Improve pool loop; improve log msg; add interruption point.
|
2018-12-24 12:06:05 -08:00 |
|
Jason Volk
|
b8fd399bf4
|
ircd::ctx: Remove this export down to ircd::.
|
2018-12-23 15:23:53 -08:00 |
|
Jason Volk
|
29e7fa3515
|
ircd::ctx: Use closure for continuation.
|
2018-12-22 21:03:14 -08:00 |
|
Jason Volk
|
37ba013413
|
ircd::ctx: Simplify continuation; eliminate to_asio derived type.
|
2018-12-22 20:11:00 -08:00 |
|
Jason Volk
|
365cf865d0
|
ircd::ctx: Various improvements/reorg of continuation/to_asio.
|
2018-12-22 17:24:48 -08:00 |
|
Jason Volk
|
d5ffc6b0de
|
ircd::ctx: Improve prof related; add full ticker of counters.
|
2018-12-22 15:17:18 -08:00 |
|
Jason Volk
|
39d4f2fb83
|
ircd::ctx: Expose the profile state struct in the prof:: interface.
|
2018-12-22 13:47:13 -08:00 |
|
Jason Volk
|
a590ad1a03
|
ircd::ctx: Another attempt at using continuation dtor as an interruption point.
|
2018-12-22 13:36:48 -08:00 |
|
Jason Volk
|
f9ee616a9a
|
ircd::ctx::prof: Use a profile instance as a totals counter.
|
2018-12-21 11:55:43 -08:00 |
|
Jason Volk
|
9d7a53ae49
|
ircd::ctx: Move resume-interruption point to this_ctx::wait() suite.
|
2018-12-20 13:27:21 -08:00 |
|
Jason Volk
|
a7b2f76c11
|
ircd::ctx: Add slice_usage_warning device.
|
2018-12-17 16:20:53 -08:00 |
|
Jason Volk
|
4686139f8e
|
ircd::ctx: Rework the prof stack to make a public test interface.
|
2018-12-17 15:24:41 -08:00 |
|
Jason Volk
|
ba10948e9d
|
ircd::ctx: Move principal interruption point into continuation.
|
2018-12-16 18:37:51 -08:00 |
|
Jason Volk
|
2a23d9e6dd
|
ircd::ctx: Add more interface access to pool/queue; various cleanup.
|
2018-12-16 16:27:11 -08:00 |
|
Jason Volk
|
72859c650b
|
ircd::ctx: Convert various name character strings to string_view.
|
2018-12-16 16:27:11 -08:00 |
|
Jason Volk
|
ad46a3e49a
|
ircd::ctx: Relax object permissions.
|
2018-12-15 23:05:48 -08:00 |
|
Jason Volk
|
399198deac
|
ircd::ctx: Add flags for slice and stack usage watchdog exemption.
|
2018-12-13 16:21:54 -08:00 |
|
Jason Volk
|
4a2ad1c186
|
ircd::ctx: Reorg continuation for core wakeup conditions.
|
2018-12-07 12:31:30 -08:00 |
|
Jason Volk
|
9eabd745f5
|
ircd::ctx: Minor cleanup.
|
2018-12-07 12:03:25 -08:00 |
|
Jason Volk
|
3af70e75c3
|
ircd::ctx: Minor cleanup / struct packing / type.
|
2018-12-07 10:13:29 -08:00 |
|
Jason Volk
|
4e01d2c0a4
|
ircd::ctx: Remove local typedef to use outer ircd:: typedef.
|
2018-12-07 10:13:14 -08:00 |
|
Jason Volk
|
ce237e0b10
|
ircd::ctx: Export this_ctx:: to ircd.
|
2018-12-06 19:16:47 -08:00 |
|
Jason Volk
|
0c4e39b023
|
ircd::ctx: Relax assertion.
|
2018-12-05 15:15:36 -08:00 |
|
Jason Volk
|
c74debac01
|
ircd::ctx: Cleanup / fixes for critical assertion related.
|
2018-11-29 16:12:33 -08:00 |
|
Jason Volk
|
c891b82ebd
|
ircd::ctx: Relayout members for package.
|
2018-11-15 18:46:40 -08:00 |
|
Jason Volk
|
48a15e026b
|
ircd::ctx::prof: Convert the settings into conf items.
|
2018-11-14 18:45:10 -08:00 |
|
Jason Volk
|
9222de0b34
|
ircd::ctx: Add access to rdtsc through ctx::prof; minor comments.
|
2018-11-14 16:55:46 -08:00 |
|
Jason Volk
|
fea02ba300
|
ircd::ctx::latch: Minor rename; add explicit move semantic.
|
2018-11-13 19:05:16 -08:00 |
|
Jason Volk
|
67e6c63580
|
ircd::ctx: Add additional shared_mutex timed functionality.
|
2018-11-13 19:05:16 -08:00 |
|
Jason Volk
|
fe45b08f8a
|
ircd::ctx: Refactor mutexes to reuse ctx::dock for queueing.
|
2018-11-13 19:05:16 -08:00 |
|
Jason Volk
|
8cbb354c64
|
ircd::ctx: Fix move assignment semantics.
|
2018-11-13 19:05:16 -08:00 |
|
Jason Volk
|
bbe676a392
|
ircd::ctx: Split this_ctx devices into files; minor interface tweaks.
|
2018-11-11 14:13:37 -08:00 |
|