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

Replace wt_epoch with wt_clock where we can

    • Type: Icon: Improvement Improvement
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • Labels:
      None

      While investigating WT-5042 I ran Zoom profiling on a workload. One thing I noticed was that the stack for the worker function was heavily weighed with wt_epoch. Out of a cumulative 360 seconds of time, wt_epoch was 102 seconds. I did a quick replacement of those two start/stop calls in worker to use wt_clock and the next profiling, the wt_clock function only consumed 1.3 seconds out of the 360 seconds, saving us two orders of magnitude.

      All uses of wt_epoch in the codebase should be examined and any that use it in a start/stop/WT_TIMEDIFF manner should replace it with wt_clock and WT_CLOCKDIFF calls.

      There are many such uses in wtperf alone, but worker is the low hanging fruit because that is called on every operation performed. But others like schema_abort and rwlock tests also use it.

            Assignee:
            backlog-server-storage-engines [DO NOT USE] Backlog - Storage Engines Team
            Reporter:
            sue.loverso@mongodb.com Susan LoVerso
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: