• Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • WT10.0.1, 5.2.0, 5.0.5
    • Affects Version/s: None
    • Component/s: None
    • Labels:

      In general are three options to investigate:

      1. Store different levels of the LSM tree on different devices
      2. Split the WT cache across DRAM and NVRAM
      3. Make the block manager hierarchical, so that we can use NVRAM as a block-level cache

      The first option was explored in detail in related work, and since LSM is not the dominant focus of WiredTiger, we will not pursue this goal.

      The second option is challenging to do programmatically, so we investigate how to accomplish it using a transparent hardware mechanism Intel Memory Mode that allows to use NVRAM as a volatile extension of system DRAM. We describe our results in the attached document (MM-vs-NVCache.pdf).

      To explore the third option, we built a NVCache – a component of WiredTiger that caches disk blocks in NVRAM. It is described in the other attached document (NVCache.pdf).

        1. MM-vs-NVCache.pdf
          227 kB
        2. NVCache.pdf
          652 kB

            sasha.fedorova@mongodb.com Sasha Fedorova
            jocelyn.del-prado@mongodb.com Jocelyn del Prado
            0 Vote for this issue
            5 Start watching this issue