Replace nextCanonicalDouble with integer-based sampling

XMLWordPrintableJSON

    • Product Performance
    • Fully Compatible
    • 0
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Summary

      nextCanonicalDouble() is called in two per-operation code paths for probabilistic sampling decisions: slow-op logging (shouldLogSlowOpWithSampling) and interrupt tracking (CurOp::startTime). On ARM (Graviton), this triggers logl() via std::uniform_real_distribution, which operates on 128-bit quad-precision long double - entirely software-emulated with no hardware floating-point support.

      Profiling shows __logl_finite consuming 5.2% of CPU on a Graviton instance running YCSB 100 read.

            Assignee:
            Daniel Hill
            Reporter:
            Jawwad Asghar
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: