Bug #2288
openRandom IO performance loss introduced since January 1st
0%
Description
Running pgbench I found that performance had dropped by 13%. To figure out the reason I did some sysbench io tests (see below). All tests were run using the same test files, same hardware etc etc 3 times in a row. As the results were consistent I am only pasting the result of the last run of each set.
The cause for the performance loss must have been introduced some time between Jan 1st and Jan 23rd.
2.12:
atom# sysbench --test=fileio --file-num=8 --file-total-size=6G --file-test-mode=rndrd --max-requests=0 --max-time=300 run
sysbench 0.4.12:  multi-threaded system evaluation benchmark
Running the test with following options:
Number of threads: 1
Extra file open flags: 0
8 files, 768Mb each
6Gb total file size
Block size 16Kb
Number of random requests for random IO: 0
Read/Write ratio for combined random IO test: 1.50
Periodic FSYNC enabled, calling fsync() each 100 requests.
Calling fsync() at the end of test, Enabled.
Using synchronous I/O mode
Doing random read test
Threads started!
Time limit exceeded, exiting...
Done.
Operations performed:  50389 Read, 0 Write, 0 Other = 50389 Total
Read 787.33Mb  Written 0b  Total transferred 787.33Mb  (2.6244Mb/sec)
  167.96 Requests/sec executed
Test execution summary:
    total time:                          300.0027s
    total number of events:              50389
    total time taken by event execution: 299.7273
    per-request statistics:
         min:                                  0.02ms
         avg:                                  5.95ms
         max:                                 77.80ms
         approx.  95 percentile:              12.05ms
Threads fairness:
    events (avg/stddev):           50389.0000/0.00
    execution time (avg/stddev):   299.7273/0.00
2.13 g47f97 (new year's eve):
atom# sysbench --test=fileio --file-num=8 --file-total-size=6G --file-test-mode=rndrd --max-requests=0 --max-time=300 run
sysbench 0.4.12:  multi-threaded system evaluation benchmark
Running the test with following options:
Number of threads: 1
Extra file open flags: 0
8 files, 768Mb each
6Gb total file size
Block size 16Kb
Number of random requests for random IO: 0
Read/Write ratio for combined random IO test: 1.50
Periodic FSYNC enabled, calling fsync() each 100 requests.
Calling fsync() at the end of test, Enabled.
Using synchronous I/O mode
Doing random read test
Threads started!
Time limit exceeded, exiting...
Done.
Operations performed:  50037 Read, 0 Write, 0 Other = 50037 Total
Read 781.83Mb  Written 0b  Total transferred 781.83Mb  (2.6061Mb/sec)
  166.79 Requests/sec executed
Test execution summary:
    total time:                          300.0040s
    total number of events:              50037
    total time taken by event execution: 299.7070
    per-request statistics:
         min:                                  0.02ms
         avg:                                  5.99ms
         max:                                104.73ms
         approx.  95 percentile:              12.06ms
Threads fairness:
    events (avg/stddev):           50037.0000/0.00
    execution time (avg/stddev):   299.7070/0.00
2.13 (from Jan 23rd incl. the sili/ahci fix):
atom# sysbench --test=fileio --file-num=8 --file-total-size=6G --file-test-mode=rndrd --max-requests=0 --max-time=300 run
sysbench 0.4.12:  multi-threaded system evaluation benchmark
Running the test with following options:
Number of threads: 1
Extra file open flags: 0
8 files, 768Mb each
6Gb total file size
Block size 16Kb
Number of random requests for random IO: 0
Read/Write ratio for combined random IO test: 1.50
Periodic FSYNC enabled, calling fsync() each 100 requests.
Calling fsync() at the end of test, Enabled.
Using synchronous I/O mode
Doing random read test
Threads started!
Time limit exceeded, exiting...
Done.
Operations performed:  39898 Read, 0 Write, 0 Other = 39898 Total
Read 623.41Mb  Written 0b  Total transferred 623.41Mb  (2.078Mb/sec)
  132.99 Requests/sec executed
Test execution summary:
    total time:                          300.0038s
    total number of events:              39898
    total time taken by event execution: 299.7377
    per-request statistics:
         min:                                  0.02ms
         avg:                                  7.51ms
         max:                                 61.00ms
         approx.  95 percentile:              12.27ms
Threads fairness:
    events (avg/stddev):           39898.0000/0.00
    execution time (avg/stddev):   299.7377/0.00
       Updated by lentferj over 13 years ago
      Updated by lentferj over 13 years ago
      
    
    - Status changed from New to Feedback
- Priority changed from High to Low
I tried to reproduce it and although I am still sure my initial testing was done correct I can't. I will put this on a hold for now, because of lack of time.
I will try to return to it later
       Updated by tuxillo almost 13 years ago
      Updated by tuxillo almost 13 years ago
      
    
    - Priority changed from Low to Normal
Jan,
Do you think we can have this checked again? Didn't you run this tests automatically?
Cheers,
Antonio Huete