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

Performance degradation with more clients

    XMLWordPrintableJSON

Details

    • Icon: Bug Bug
    • Resolution: Gone away
    • Icon: Major - P3 Major - P3
    • None
    • None
    • Concurrency, WiredTiger
    • None
    • ALL
    • Hide

      Run YCSB/WorkloadC on MongoDB 3.4/3.2 (m4.xlarge).

      Show
      Run YCSB/WorkloadC on MongoDB 3.4/3.2 (m4.xlarge).

    Description

      While doing some benchmarks, I found out strange performance degradation for MongoDB for read only workload on YCSB (WorkloadC). You can see it on the right side of the graph where the number of clients is getting bigger:

      I tried to investigate using perf tool and figured out that the only two metrics that are growing significantly are number of cpu migrations and syscall `sched_yield`. On the next graph you can see the dynamics of cpu migration event, number of `sched_yield` also grew 3 times bigger.

      Judging from source code I can assume that it's somehow related to spin locks, since the only place where I found `sched_yield` is `spin_lock.cpp`.

      Attachments

        1. cpu_migrations.png
          cpu_migrations.png
          23 kB
        2. select_btree_throughput.png
          select_btree_throughput.png
          37 kB
        3. throughput_mongodb.png
          throughput_mongodb.png
          36 kB

        Activity

          People

            kelsey.schubert@mongodb.com Kelsey Schubert
            erthalion Dmitry Dolgov
            Votes:
            0 Vote for this issue
            Watchers:
            15 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: