[GitHub] merlimat commented on issue #1641: Added module to enable CPU affinity
merlimat commented on issue #1641: Added module to enable CPU affinity URL: https://github.com/apache/bookkeeper/pull/1641#issuecomment-437464240 run pr validation This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services
[GitHub] merlimat commented on issue #1641: Added module to enable CPU affinity
merlimat commented on issue #1641: Added module to enable CPU affinity URL: https://github.com/apache/bookkeeper/pull/1641#issuecomment-437434099 > Do you have some preliminary numbers then to show why this change is valuable? @ivankelly This are the numbers on my local tests. It's not using the BK client lib directly, but rather through ManagedLedger (from Pulsar) which has one more thread handoff, to have callbacks serialized to 1 thread hashed on topic name. Conditions: * Client/server on same machine with TCP connection * Tested on a bare-metal node * Client sends 1K rps (size 1KB) and waits for response * Multiple request outstanding, responses in order * Latency measured in millis | 50pct | 95pct | 99pct | 99.9pct | 99.99pct | 99.999pct | max -- | -- | -- | -- | -- | -- | -- | -- Regular queue | 0.078 | 0.092 | 0.110 | 0.152 | 0.232 | 0.430 | 0.538 Spin-Wait Journal | 0.065 | 0.073 | 0.087 | 0.132 | 0.428 | 0.483 | 0.819 Spin-Wait Workers | 0.049 | 0.059 | 0.066 | 0.095 | 0.449 | 0.465 | 0.466 Spin-Wait IO Threads | 0.036 | 0.047 | 0.052 | 0.075 | 0.436 | 0.445 | 0.452 Disable HyperThread | 0.029 | 0.038 | 0.041 | 0.054 | 0.204 | 0.388 | 0.396 CPU-Affinity | 0.029 | 0.037 | 0.040 | 0.050 | 0.066 | 0.090 | 0.104 The remaining bulk of the median latency I think is related to SO_BUSY_POLL (netty/netty#8268) being ineffective on loopback interface. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services
[GitHub] merlimat commented on issue #1641: Added module to enable CPU affinity
merlimat commented on issue #1641: Added module to enable CPU affinity URL: https://github.com/apache/bookkeeper/pull/1641#issuecomment-437148304 @ivankelly @eolivelli @sijie Please take another look. > However, I think we need an overarching document for these "performance" improvements, with benchmark results, detailed instructions to show how to reproduce the scenario in which performance changes, and the overall goals and approach for the perf improvements. This is just the underlying implementation. I will work on the docs and instructions when the whole busy-wait change set is ready. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services
[GitHub] merlimat commented on issue #1641: Added module to enable CPU affinity
merlimat commented on issue #1641: Added module to enable CPU affinity URL: https://github.com/apache/bookkeeper/pull/1641#issuecomment-422111812 Ping. Please take a look again. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services