On 06/24/2015 10:46 AM, Ingo Molnar wrote:
> So I'd suggest to first compare preemption behavior: does the workload 
> context-switch heavily, and is it the exact same context switching rate and 
> are 
> the points of preemption the same as well between the two kernels?

If I read this correctly, the answer is yes.

First the 'stable' flock02 test:

perf stat --repeat 5  --pre 'rm -rf /tmp/a' ~/src/lockperf/flock02 -n 128 -l 64 
/tmp/a
0.008793148
0.008784990
0.008587804
0.008693641
0.008776946

 Performance counter stats for '/home/wagi/src/lockperf/flock02 -n 128 -l 64 
/tmp/a' (5 runs):

         76.509634      task-clock (msec)         #    3.312 CPUs utilized      
      ( +-  0.67% )
                 2      context-switches          #    0.029 K/sec              
      ( +- 26.50% )
               128      cpu-migrations            #    0.002 M/sec              
      ( +-  0.31% )
             5,295      page-faults               #    0.069 M/sec              
      ( +-  0.49% )
        89,944,154      cycles                    #    1.176 GHz                
      ( +-  0.66% )
        58,670,259      stalled-cycles-frontend   #   65.23% frontend cycles 
idle     ( +-  0.88% )
                 0      stalled-cycles-backend    #    0.00% backend  cycles 
idle   
        76,991,414      instructions              #    0.86  insns per cycle    
    
                                                  #    0.76  stalled cycles per 
insn  ( +-  0.19% )
        15,239,720      branches                  #  199.187 M/sec              
      ( +-  0.20% )
           103,418      branch-misses             #    0.68% of all branches    
      ( +-  6.68% )

       0.023102895 seconds time elapsed                                         
 ( +-  1.09% )


And here posix01 which shows high variance:

perf stat --repeat 5  --pre 'rm -rf /tmp/a' ~/src/lockperf/posix01 -n 128 -l 64 
/tmp/a
0.006020402
32.510838421
55.516466069
46.794470223
5.097701438

 Performance counter stats for '/home/wagi/src/lockperf/posix01 -n 128 -l 64 
/tmp/a' (5 runs):

       4177.932106      task-clock (msec)         #   14.162 CPUs utilized      
      ( +- 34.59% )
            70,646      context-switches          #    0.017 M/sec              
      ( +- 31.56% )
            28,009      cpu-migrations            #    0.007 M/sec              
      ( +- 33.55% )
             4,834      page-faults               #    0.001 M/sec              
      ( +-  0.98% )
     7,291,160,968      cycles                    #    1.745 GHz                
      ( +- 32.17% )
     5,216,204,262      stalled-cycles-frontend   #   71.54% frontend cycles 
idle     ( +- 32.13% )
                 0      stalled-cycles-backend    #    0.00% backend  cycles 
idle   
     1,901,289,780      instructions              #    0.26  insns per cycle    
    
                                                  #    2.74  stalled cycles per 
insn  ( +- 30.80% )
       440,415,914      branches                  #  105.415 M/sec              
      ( +- 31.06% )
         1,347,021      branch-misses             #    0.31% of all branches    
      ( +- 29.17% )

       0.295016987 seconds time elapsed                                         
 ( +- 32.01% )


BTW, thanks for the perf stat tip. Really handy!

cheers,
daniel
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to