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

Reply via email to