Hi Marco,
we had a similar issue (our use case is very sensible to latencies).
I confirm you that the this_thread::sleep_for() under Windows has (unacceptably) high duration, preventing the scheduler policy to work properly.
We tried implementing a few solutions, with the following results:
A. a yeld() based implementation provides better reactiveness but still with relatively high CPU loads
B. another custom micro-sleep() based implementation, providing sleep times <40us, also provides good reactiveness but still with high CPU loads
C. an implementation using mutex on enqueing and wait_for() on scheduler provides the best compromise, but reducing the maximum throughput.
We are still investigating and benchmarking solution C in order to understand if is a viable alternative solution for better addressing low-latency requirements. We are also investigating some techniques from http://calvados.di.unipi.it/fastflow.
Tullio Menga
Da: actor-f...@googlegroups.com [mailto:actor-f...@googlegroups.com]
Per conto di Marco Leclerc
Inviato: martedì 2 maggio 2017 14:20
A: actor-framework <actor-f...@googlegroups.com>
Oggetto: [caf] work stealing / performance / latency
--
You received this message because you are subscribed to the Google Groups "actor-framework" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
actor-framewo...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
This message contains confidential information and is intended only for the individual(s) addressed in the message. Please refer to DISCLAIMER for important disclaimers and the firm's regulatory position.