On Thursday, 31 October 2024 at 16:43:09 UTC, Kyle Ingraham wrote:
This approach increased requests processed per events emitted/waited from 1:1 to 10:1. This had no impact on event loop overhead however. The entire program still spends ~50% of its runtime in this function: https://github.com/vibe-d/eventcore/blob/0cdddc475965824f32d32c9e4a1dfa58bd616cc9/source/eventcore/drivers/posix/cfrunloop.d#L38. I'll see if I can get images here of my profiling. I'm sure I'm missing something obvious here.

I forgot to add that once you add delays to my demonstrator and a program using vibe.d's web framework the two have similar performance numbers. Adding a 10ms sleep resulted in 600 req/s for my demonstrator and 630 req/s for vibe.d.

It's encouraging to see the benefit of vibe.d's concurrency system with delays added. I'd like to be able to use it without drastically affecting throughput for no-delay cases however.

Reply via email to