ywkaras edited a comment on pull request #7382:
URL: https://github.com/apache/trafficserver/pull/7382#issuecomment-746589841


   When I run 'perf top' on the TS process, for baseline TS, with the above 
h2load command running, this is what I get:
   ```
     16.62%  [kernel]             [k] 0xffffffffbb12539f                        
                                  ◆
      5.41%  [kernel]             [k] 0xffffffffbb003387                        
                                  ▒
      5.11%  [kernel]             [k] 0xffffffffbb109484                        
                                  ▒
      4.39%  [kernel]             [k] 0xffffffffbb90c72e                        
                                  ▒
      2.03%  traffic_server       [.] read_from_net                             
                                  ▒
      1.64%  traffic_server       [.] UnixNetVConnection::load_buffer_and_write 
                                  ▒
      1.61%  libc-2.17.so         [.] __memcpy_ssse3                            
                                  ▒
      1.33%  libpthread-2.17.so   [.] pthread_getspecific                       
                                  ▒
      0.82%  [kernel]             [k] 0xffffffffbb222920                        
                                  ▒
      0.72%  [kernel]             [k] 0xffffffffbb1d85af                        
                                  ▒
      0.63%  [kernel]             [k] 0xffffffffbb222934                        
                                  ▒
      0.44%  [kernel]             [k] 0xffffffffbb0edd65                        
                                  ▒
      0.44%  libtscore.so.10.0.0  [.] freelist_new                              
                                  ▒
      0.41%  libc-2.17.so         [.] memchr                                    
                                  ▒
      0.41%  traffic_server       [.] HttpTransact::update_size_and_time_stats  
                                  ▒
      0.40%  traffic_server       [.] mime_hdr_field_find                       
                                  ▒
      0.37%  [kernel]             [k] 0xffffffffbb27b6fc                        
                                  ▒
      0.34%  [kernel]             [k] 0xffffffffbb734b61                        
                                  ▒
      0.34%  traffic_server       [.] HttpSM::set_next_state                    
                                  ▒
      0.34%  traffic_server       [.] HttpSM::handle_api_return                 
                                  ▒
      0.31%  libstdc++.so.6.0.19  [.] 
__cxxabiv1::__vmi_class_type_info::__do_dyncast                             ▒
      0.31%  traffic_server       [.] CacheVC::openReadStartHead                
                                  ▒
      0.30%  traffic_server       [.] thread_alloc                              
                                  ▒
      0.29%  ld-2.17.so           [.] __tls_get_addr                            
                                  ▒
      0.27%  libc-2.17.so         [.] __libc_writev                             
                                  ▒
      0.26%  libtscore.so.10.0.0  [.] freelist_free                             
                                  ▒
      0.26%  traffic_server       [.] HdrHeap::destroy
   ```
   If I run it with `--disable_freelist` this is what I get:
   ```
      5.78%  [kernel]             [k] 0xffffffffbb109484                        
                                  ▒
      4.41%  [kernel]             [k] 0xffffffffbb003387                        
                                  ▒
      4.22%  [kernel]             [k] 0xffffffffbb90c72e                        
                                  ▒
      2.03%  traffic_server       [.] read_from_net                             
                                  ▒
      1.77%  traffic_server       [.] UnixNetVConnection::load_buffer_and_write 
                                  ▒
      1.66%  libc-2.17.so         [.] __memcpy_ssse3                            
                                  ▒
      1.25%  libpthread-2.17.so   [.] pthread_getspecific                       
                                  ▒
      0.96%  [kernel]             [k] 0xffffffffbb222920                        
                                  ▒
      0.89%  libc-2.17.so         [.] _int_malloc                               
                                  ▒
      0.79%  [kernel]             [k] 0xffffffffbb1d85af                        
                                  ▒
      0.67%  [kernel]             [k] 0xffffffffbb222934                        
                                  ▒
      0.58%  libc-2.17.so         [.] _int_free                                 
                                  ▒
      0.48%  [kernel]             [k] 0xffffffffbb0edd65                        
                                  ▒
      0.45%  traffic_server       [.] HttpTransact::update_size_and_time_stats  
                                  ▒
      0.41%  libc-2.17.so         [.] memchr                                    
                                  ▒
      0.40%  traffic_server       [.] mime_hdr_field_find                       
                                  ▒
      0.35%  traffic_server       [.] HttpSM::set_next_state                    
                                  ▒
      0.34%  traffic_server       [.] LogObject::_checkout_write                
                                  ▒
      0.33%  traffic_server       [.] HttpSM::handle_api_return                 
                                  ▒
      0.33%  ld-2.17.so           [.] __tls_get_addr                            
                                  ▒
      0.33%  [kernel]             [k] 0xffffffffbb734b61                        
                                  ▒
      0.32%  libstdc++.so.6.0.19  [.] 
__cxxabiv1::__vmi_class_type_info::__do_dyncast                             ▒
      0.32%  libc-2.17.so         [.] malloc                                    
                                  ▒
      0.32%  libc-2.17.so         [.] free                                      
                                  ▒
      0.30%  traffic_server       [.] CacheVC::openReadStartHead                
                                  ▒
      0.29%  [kernel]             [k] 0xffffffffbb27b6fc 
   ```
   These results don't seem to indicate there would be a huge payoff from 
optimizing memory allocation.  But, the total percentage for 
`freelist_new/free` is 0.67, and the total percentage for `[__int_]malloc/free` 
is 2.11 .  I think @bryancall got significantly different results, running on 
bare metal rather than in docker.  Bare metal seems more likely to be 
trustworthy.


----------------------------------------------------------------
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:
[email protected]


Reply via email to