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

Investigate performance gains by playing with decoration memory layout

    • Type: Icon: Task Task
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Service Arch
    • 35

      In SERVER-82033 we moved the FTDC controller off of the ServiceContext decorations. As a result, we detected a >5% improvement in 95th percentile latencies by accident in some workloads.

      Our main hypothesis is that the decoration change shifted the memory layout of other decorations on the ServiceContext. That is to say, it changed the cache line "split point" of the structs coming afterwards. As a result, we removed some false sharing scenarios for metrics and this led to a latency drop.

      This ticket is about investigating how much we could gain from playing with the memory layout of decorations. Ideally we should also determine how best to take advantage of this in our codebase.

            Assignee:
            backlog-server-servicearch [DO NOT USE] Backlog - Service Architecture
            Reporter:
            jordi.olivares-provencio@mongodb.com Jordi Olivares Provencio
            Votes:
            0 Vote for this issue
            Watchers:
            10 Start watching this issue

              Created:
              Updated: