Alexey Serbin has submitted this change and it was merged. ( 
http://gerrit.cloudera.org:8080/16937 )

Change subject: [util] extra test for MaintenanceManager
......................................................................

[util] extra test for MaintenanceManager

This patch adds a new test for MaintenanceManager to exercise scheduling
and performing many maintenance operations.  In particular, the new test
scenario targets patch [1] that reducing lock contention in
MaintenanceManager::LaunchOp().

This new test scenario produced the following results when running in
RELEASE mode without and with patch [1]:

Before [1]:
  spent 5369 milliseconds to process 1000 operations
After  [1]:
  spent 5308 milliseconds to process 1000 operations

In addition, "perf stat -r 10" and "perf stat -e 'sched:sched_*'"
reported the following:

Before [1]:
  Performance counter stats for './maintenance_manager-test 
--gtest_filter=*ManyOperationsHeavyUp
dateStats*' (10 runs):

       6055.786042 task-clock                #    0.997 CPUs utilized           
 ( +-  0.07% )
             5,900 context-switches          #    0.974 K/sec                   
 ( +-  0.95% )
               430 cpu-migrations            #    0.071 K/sec                   
 ( +- 30.11% )
             7,023 page-faults               #    0.001 M/sec                   
 ( +-  0.93% )
    19,665,826,555 cycles                    #    3.247 GHz                     
 ( +-  0.06% )
    24,194,472,924 instructions              #    1.23  insns per cycle         
 ( +-  0.08% )
     4,673,919,633 branches                  #  771.811 M/sec                   
 ( +-  0.08% )
         4,388,734 branch-misses             #    0.09% of all branches         
 ( +-  2.42% )

             4,362 sched:sched_wakeup                                           
 ( +-  4.38% )
               968 sched:sched_switch                                           
 ( +- 21.21% )
               803 sched:sched_migrate_task                                     
 ( +- 18.48% )
             1,189 sched:sched_stat_wait                                        
 ( +- 22.66% )
             4,360 sched:sched_stat_sleep                                       
 ( +-  4.38% )
            12,268 sched:sched_stat_runtime                                     
 ( +-  2.85% )

========================================================================

After  [1]:
  Performance counter stats for './maintenance_manager-test 
--gtest_filter=*ManyOperationsHeavyUp
dateStats*' (10 runs):

       6018.328330 task-clock                #    0.991 CPUs utilized           
 ( +-  0.05% )
             2,216 context-switches          #    0.368 K/sec                   
 ( +-  0.14% )
                18 cpu-migrations            #    0.003 K/sec                   
 ( +-  4.30% )
             7,136 page-faults               #    0.001 M/sec                   
 ( +-  0.35% )
    19,622,200,306 cycles                    #    3.260 GHz                     
 ( +-  0.15% )
    24,223,357,126 instructions              #    1.23  insns per cycle         
 ( +-  0.17% )
     4,682,684,506 branches                  #  778.071 M/sec                   
 ( +-  0.17% )
         3,618,985 branch-misses             #    0.08% of all branches         
 ( +-  2.16% )

             1,035 sched:sched_wakeup                                           
 ( +-  0.18% )
                 1 sched:sched_switch                                           
 ( +- 45.94% )
                29 sched:sched_migrate_task                                     
 ( +-  2.14% )
                24 sched:sched_stat_wait                                        
 ( +- 12.13% )
             1,033 sched:sched_stat_sleep                                       
 ( +-  0.16% )
             8,269 sched:sched_stat_runtime                                     
 ( +-  0.13% )

========================================================================

[1] https://gerrit.cloudera.org/#/c/16934/

Change-Id: Ia9e71b213583c000d4809dcfc885c1d31b3bb9d5
Reviewed-on: http://gerrit.cloudera.org:8080/16937
Tested-by: Kudu Jenkins
Reviewed-by: Andrew Wong <[email protected]>
---
M src/kudu/util/maintenance_manager-test.cc
M src/kudu/util/maintenance_manager.h
2 files changed, 356 insertions(+), 161 deletions(-)

Approvals:
  Kudu Jenkins: Verified
  Andrew Wong: Looks good to me, approved

--
To view, visit http://gerrit.cloudera.org:8080/16937
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: Ia9e71b213583c000d4809dcfc885c1d31b3bb9d5
Gerrit-Change-Number: 16937
Gerrit-PatchSet: 3
Gerrit-Owner: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Andrew Wong <[email protected]>
Gerrit-Reviewer: Grant Henke <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Tidy Bot (241)

Reply via email to