Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-19445

Performance regression in Mongo-Perf mms tests with wiredTiger

    • Fully Compatible
    • ALL
    • Hide

      In the shell

      var setupMMS = function( collection ) {
          collection.drop();
      
          var base = { _id: 0, a: 0, h: {}, z: 0 };
          for (var i = 0; i < 24; i++) {
              base.h[i] = {};
              for (var j = 0; j < 60; j++) {
                  base.h[i][j] = { n: 0, t: 0, v: 0 };
              }
          }
          collection.insert(base);
      };
      use test0
      setupMMS(db.Update_MmsIncShallow10)
      benchRun({"ops":[{"op":"update","query":{"_id":0},"update":{"$inc":{"a":1}},"ns":"test0.Update_MmsIncShallow10","safe":false,"w":0,"j":false,"writeCmd":true}],"seconds":10,"host":"127.0.0.1:27017","parallel":1})
      

      The update line in the output shows the update throughput.

      Show
      In the shell var setupMMS = function( collection ) { collection.drop(); var base = { _id: 0, a: 0, h: {}, z: 0 }; for ( var i = 0; i < 24; i++) { base.h[i] = {}; for ( var j = 0; j < 60; j++) { base.h[i][j] = { n: 0, t: 0, v: 0 }; } } collection.insert(base); }; use test0 setupMMS(db.Update_MmsIncShallow10) benchRun({ "ops" :[{ "op" : "update" , "query" :{ "_id" :0}, "update" :{ "$inc" :{ "a" :1}}, "ns" : "test0.Update_MmsIncShallow10" , "safe" : false , "w" :0, "j" : false , "writeCmd" : true }], "seconds" :10, "host" : "127.0.0.1:27017" , "parallel" :1}) The update line in the output shows the update throughput.

      Running mongo-perf test Update.MmsIncShallow1 and the other mms tests shows a large regression (~90%) from master to 3.0.4. On evergreen, 3.1.5 gets 1100 ops/s and 3.0.4 gets 11,434.

      The following data captures both runs. The first run (A to B) is with 3.0.4. The second run (C to D) is with 3.1.5.

      In particular, there appears to be a lot of eviction traffic in the second case, but not the first. The test is 5 seconds long and the server was started immediately before the test.

            Assignee:
            michael.cahill@mongodb.com Michael Cahill (Inactive)
            Reporter:
            david.daly@mongodb.com David Daly
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: