• Type: Icon: Sub-task Sub-task
    • Resolution: Fixed
    • Priority: Icon: Unknown Unknown
    • 6.14.0
    • Affects Version/s: None
    • Component/s: None
    • 0
    • Not Needed
    • Not Needed
    • Hide

      1. What would you like to communicate to the user about this feature?
      2. Would you like the user to see examples of the syntax and/or executable code and its output?
      3. Which versions of the driver/connector does this apply to?

      Show
      1. What would you like to communicate to the user about this feature? 2. Would you like the user to see examples of the syntax and/or executable code and its output? 3. Which versions of the driver/connector does this apply to?

      Use Case

      As a... (who is this for)
      I want... (what is the desired change)
      So that... (why is the change desired)

      Dev Experience

      • Allows for easier grouping of benchmarks into performance contexts

      Dependencies

      • None

      Risks/Unknowns

      • Will the range of values for the normalized throughput be easy to work with or is there a better way to compute it?

      Acceptance Criteria

      Implementation Requirements

      • Update primes benchmark task size to bring primes benchmark result to 10^0 order of magnitude to make normalized throughputs easy to work with.
      • Mark the following benchmark results with the alerting-benchmark tag
        • ping
        • aggregateAMillionDocumentsAndToArray
        • aggregateAMillionTweetsAndToArray
        • findOne
        • findManyAndToArray
        • findManyAndEmptyCursor
        • smallDocInsertOne
        • largeDocInsertOne
        • smallDocBulkInsert
        • largeDocBulkInsert
        • ldjsonMultiFileUpload
        • gridfsMultiFileDownload
        • gridfsMultiFileUpload
        • gridFsUpload
        • gridFsDownload
        • runCommand
      • Mark the following benchmarks with the spec-benchmark tag
        • findOne
        • findManyAndToArray
        • findManyAndEmptyCursor
        • smallDocInsertOne
        • largeDocInsertOne
        • smallDocBulkInsert
        • largeDocBulkInsert
        • ldjsonMultiFileUpload
        • gridfsMultiFileDownload
        • gridfsMultiFileUpload
        • gridFsUpload
        • gridFsDownload
        • runCommand
        • singleBench
        • readBench
        • writeBench
        • parallelBench
        • multiBench
        • driverBench
        • bsonBench
      • Add a new measurement to the ping benchmark called normalized_throughput that is calculated as (throughput of ping benchmark in megabytes per second)/(throughput of primes benchmark in megabytes per second)
      • Add a new measurement to all other benchmarks called normalized throughput that is calculated as (throughput of benchmark in megabytes per second) /(throughput of ping benchmark in megabytes_per_second)
      • Add relevant tags to each benchmark
        • cursor-benchmark
        • read-benchmark
        • write-benchmark
        • alerting-benchmark

      Testing Requirements

      • Manually verify in CI that the tags have been added correctly
      • Manually verify in CI that the normalized_throughput values are being added correctly

      Documentation Requirements

      • Add test readme note about the perf contexts and tags we use

      Follow Up Requirements

      • None

            Assignee:
            warren.james@mongodb.com Warren James
            Reporter:
            warren.james@mongodb.com Warren James
            Neal Beeken
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: