royguo opened a new issue, #3166: URL: https://github.com/apache/brpc/issues/3166
I am using brpc as my storage system's main runtime, and I believe people like us could probably have the same problem of slow signal cross different task group. The use case is: 1. User request bthread submit an async IO (iouring for example), and then bthread::wait 2. IO Polling thread (pthread) handle cqe and signal the bthread 3. the bthread tid will be placed to a random task group's remote_rq (under high pressure) The problem is, remote_rq signal wakeup is not fast enough (under heavy workloads, it could take> 10ms or even worse). So I was wondering, is there any plan that allow users have a fast path of signalling? For example: ``` user_bthread->fast_wait(); // will be wake up soon, remember current task group ...... cqe_handler->fast_signal(bthread_id); // wake up the bthread in its original task group, avoid remote_rq lock. ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
