Uploaded image for project: 'WiredTiger'
  1. WiredTiger
  2. WT-2086

Add a statistic for in-memory splits

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: WT2.7.0
    • Labels:
      None
    • # Replies:
      3
    • Last comment by Customer:
      true

      Description

      I was running the wtperf parallel populate btree job and noticed that sometimes we get lots of true returns for {__wt_page_can_split} per page split that gets executed.

      The less "spins" on splitting the page the more efficient multi-threaded append workloads can be.

        Issue Links

          Activity

          Hide
          alexander.gorrod Alexander Gorrod added a comment -

          For example, if I run an extended version of the wtperf parallel-populate-btree workload, gathering stats every 5 seconds I see:

          $ grep "in-memory page" WT_TEST/WiredTigerStat*
          Sep 04 16:31:25 81 WT_TEST cache: in-memory page splits
          Sep 04 16:31:25 497499 WT_TEST cache: in-memory page passed criteria to be split
          <snip>
          Sep 04 16:32:55 78 WT_TEST cache: in-memory page splits
          Sep 04 16:32:55 625 WT_TEST cache: in-memory page passed criteria to be split
          Sep 04 16:33:00 78 WT_TEST cache: in-memory page splits
          Sep 04 16:33:00 15055 WT_TEST cache: in-memory page passed criteria to be split
          

          The first occurrence is the most dramatic, but there are peaks later as well. i.e: In the first 5 seconds we returned true from can split over 6000 times per in-memory split.

          Show
          alexander.gorrod Alexander Gorrod added a comment - For example, if I run an extended version of the wtperf parallel-populate-btree workload, gathering stats every 5 seconds I see: $ grep "in-memory page" WT_TEST/WiredTigerStat* Sep 04 16:31:25 81 WT_TEST cache: in-memory page splits Sep 04 16:31:25 497499 WT_TEST cache: in-memory page passed criteria to be split <snip> Sep 04 16:32:55 78 WT_TEST cache: in-memory page splits Sep 04 16:32:55 625 WT_TEST cache: in-memory page passed criteria to be split Sep 04 16:33:00 78 WT_TEST cache: in-memory page splits Sep 04 16:33:00 15055 WT_TEST cache: in-memory page passed criteria to be split The first occurrence is the most dramatic, but there are peaks later as well. i.e: In the first 5 seconds we returned true from can split over 6000 times per in-memory split.
          Hide
          xgen-internal-githook Githook User added a comment -

          Author:

          {u'username': u'agorrod', u'name': u'Alex Gorrod', u'email': u'alexg@wiredtiger.com'}

          Message: WT-2086 Add a statistic to track when can_evict sees splittable pages.
          Branch: develop
          https://github.com/wiredtiger/wiredtiger/commit/87078eb00a4053266b7efd472850b72bac3f6bf6

          Show
          xgen-internal-githook Githook User added a comment - Author: {u'username': u'agorrod', u'name': u'Alex Gorrod', u'email': u'alexg@wiredtiger.com'} Message: WT-2086 Add a statistic to track when can_evict sees splittable pages. Branch: develop https://github.com/wiredtiger/wiredtiger/commit/87078eb00a4053266b7efd472850b72bac3f6bf6
          Hide
          xgen-internal-githook Githook User added a comment -

          Author:

          {u'username': u'michaelcahill', u'name': u'Michael Cahill', u'email': u'michael.cahill@mongodb.com'}

          Message: Merge pull request #2175 from wiredtiger/stat-splittable-pages

          WT-2086 Add a statistic to track when can_evict sees splittable pages.
          Branch: develop
          https://github.com/wiredtiger/wiredtiger/commit/39a69ec79cdb04e0f9286212e86d0c038db87b92

          Show
          xgen-internal-githook Githook User added a comment - Author: {u'username': u'michaelcahill', u'name': u'Michael Cahill', u'email': u'michael.cahill@mongodb.com'} Message: Merge pull request #2175 from wiredtiger/stat-splittable-pages WT-2086 Add a statistic to track when can_evict sees splittable pages. Branch: develop https://github.com/wiredtiger/wiredtiger/commit/39a69ec79cdb04e0f9286212e86d0c038db87b92

            People

            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:
                Days since reply:
                1 year, 33 weeks, 5 days ago
                Date of 1st Reply: