-
Notifications
You must be signed in to change notification settings - Fork 257
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update moodycamel to control MAX_SEMA_SPINS #56
Comments
References: #56 Tests: протестировано CI Relates: TAXICOMMON-5485
We've updated the moodycamel. Now we have three different opinions on MAX_SEMA_SPINS proper value: 0|1, 16, default|10000. We need to do some experiments on production service... |
I feel more like ~1000, but that is based purely on feeling. This definitely requires some experementation, but having a possibility to control that is already a pleasant enhancement, thank you for that! |
I'll close this for now. Experiments with MAX_SEMA_SPINS would be done in a few months |
References: userver-framework#56 Tests: протестировано CI Relates: TAXICOMMON-5485
You see,
moodycamel::BlockingConcurrentQueue
spins here before going to kernel semaphoreand although it's preferable for maximum throughput in benchmarks,
it wastes CPU cycles in some real-life scenarios.
Since this commit there is a way to control this spinning behavior, which was very noticeable in some perfs, remember @apolukhin?
The text was updated successfully, but these errors were encountered: