You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficserver.apache.org by GitBox <gi...@apache.org> on 2021/03/04 02:28:16 UTC

[GitHub] [trafficserver] ywkaras commented on issue #7546: LogObject::_checkout_write using a lot of CPU on many core servers

ywkaras commented on issue #7546:
URL: https://github.com/apache/trafficserver/issues/7546#issuecomment-790235752


   I've been able to cause a bottleneck in LogObject::_checkout_write() on the AMD host, using open source TS (commit 5c65bcb4d0739cbadd09fab3d836110d529d48d2).  I had to set proxy.config.exec_thread.autoconfig.scale to 2.0 .  I ran TS (without manager) with this command:
   ```
   TS_ROOT=$PWD LD_LIBRARY_PATH=$PWD/lib bin/traffic_server -f -F &
   ```
   To see the bottleneck, I have to start with a empty log directory.  I have to run 10 h2load processes at once with this script:
   ```
   do_h2()
   {
   /home/wkaras/h2load --h1 -t 64 -D 60 -c 512 http://localhost:80$1/fake > ~/80$1.log &
   }
   
   rm -f ~/80*.log
   
   for P in $( seq 81 90 )
   do
     do_h2 $P
   done
   ```
   "fake" is 1024 byte object that I create with a PUSH.  When I run "perf top", I see about 95% of CPU time being spent in _checkout_write.  But, the bottleneck gradually disappears, the % of CPU time drops (as squid.log gets full?).
   
   For unknown reasons, I sometimes see the (disappearing) bottleneck in HttpTransact::OriginDead() instead of LogObject::_checkout_write().


----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org