A quick intro to NVDIMM-F

Introduction

I’ll give a quick intro to NVDIMM-F in this blog post. I am doing this for completeness sake as we look at some different PMEM implementations over a series of blog posts. We have already looked at NVDIMM-N and later we’ll look at the future of PMEM with NVDIMM-P and Storage Class Memory.

A quick intro to NVDIMM-F

NVDIMM-F is basically a PMEM module that contains only flash and resides on a DIMM slot (DDR-4 bus). There is is no DRAM on an NVDIMM-F module. The main advantage is that it comes in bigger capacities than NVDIMM-N. Flash can be bigger than RAM. The DDR bus speed is excellent and allows for low latency. The most obvious drawback is that it is a lot slower than NVDIMM-N. Sure they surely leverage SLC, but still, compared with DRAM this is significantly slower.

My interpretation of NVDIMM-F

The memory is system mapped flash. So it is slower but is persistent as the reading/writing is done Flash. RAM is not system mapped but it can be used as a cache to speed up IO The RAM cache actually is a risk during power loss as this will not be persisted.

All this means that the speed and latency (10-100us) are flash-like, so not a great. The good news is the capacity can be that large as well so from 128GB to potentially many TB.

The limitations

  • NVDIMM-F provides larger flash-like capacity (128GB – xTB) but with higher latencies (10s of ms).
  • It is not byte addressable only block-level access to the memory-mapped flash. There is a proprietary driver between NVDIMM-F and the cache in main memory.
  • Caching in main memory (DRAM) is required to hide latencies but prevents 100% persistence.
  • The copying of data between cache in system RAM and NVDIMM-F NAND puts a burden on the channel bandwidth.

The benefits

  • NVDIMM-F provides large capacity NVDIMM not limited to DRAM sizes
  • it allows for immediate persistence of data in the NVDIMM-F modules without the overhead of moving it to NVMe or SSD at the cost of some temporary latency. Remember that NVDIMM-F is not trying to replace or act as memory in any way.

Use cases and futures

If you have a workload where avoiding PCIe/SAS latencies is important this could be an option. But with the excellent performance of NVMe over PCIe this has been reduced. What if you wanted 4TB of high-speed storage for a Very Large Memory database some years ago? NVDIMM-F was a proposed solution.

With the advent of NVDIMM-P & other Persistent Memory / Storage Class Memory offerings and the new media (3DXP, NRAM, …), I do not think NVDIMM-F is going places anymore. Those will offer capacity and speed. While NVDIMM-N will have some use cases where the absolute lowest latency is needed and the size limitation is not a show stopper, not so for NVDIMM-F. Storage Class Memory and NVDIMM-P will take over the reins.

Diabolo Technologies that made an NVDIMM-F back in the day does not even exist anymore. Maybe that could be a sign as well.

Diabolo Technologies NVDIMM-F (Diablo Memory 1 module)

A quick intro to NVDIMM-N

Introduction

In this blog post, I’ll provide you with a quick intro to NVDIMM-N. NVDIMM-N is a form of persistent memory (PMEM). It is actually, at the time of writing, the most readily available PMEM type. You can get it from you favorite OEM right now online. Other PMEM offerings are not there yet or only got there recently with some limitations.

So now we need to explain PMEM. PMEM is a solid-state high-performance byte-addressable memory device that resides on the memory bus (today at least, new buses are coming). In other words, PMEM has DRAM-like access to data at almost the same speed & latency of DRAM but is persistent like NAND flash

A quick intro to NVDIMM-N.

NVDIMM-N Combines DRAM & NAND to deliver persistent storage in a DIMM slot.

DELL EMC NVDIMM-N module

NVDIMM-N also happens to be the fasted at the moment as works at the speed of DRAM. The flash in NVDIMM-N is only used to persist the data when the power goes down or is lost, It is also used to retrieve the data from at boot time. Nothing else, it literally is only used to persist the data when powered down and to reload it into RAM at boot time.

Image courtesy of SNIA Persistent Memory and NVDIMM Special Interest Group

NVDIMM-N requires an external battery pack (supercapacitors) to deliver the power to persist all the data from DRAM to Flash when power is lost.

You can see the reloading of the data at boot time in the BIOS startup menu. It adds to the start-up time and is needed to make sure the data is in the NVDIMM-N DRAM ready for use by the time the OS is running

Restoring data, arming NVDIMM-N at boot time

The actual data is only created, read, updated, deleted and consumed or used in the DRAM part. Hence it is very fast.

It also means it is rather small as the biggest DRAM modules you’ll find are 128 GB and those are very rare. Normally you’ll find 16 GB, 32 GB, and 64 GB. In NVDIMM-N the most common ones seem 16 GB.

Strong points

  • It is very fast, the closest to pure RAM as you’ll find.
  • Latency is at 10s of ns
  • Allows for block mode or byte access to the memory-mapped DRAM
  • It is readily available.
  • As the flash is only written to when the device shuts down or boots, the flash is not in danger of wearing out fast.

Weak points

  • It requires an external battery pack.
  • The capacity is rather small and DRAM sizes are not growing significantly.
  • It is expensive per GB as the capacity is delivered by NAND.

Note that both BIOS and OS support is required. Ideally, the applications also support DAX to leverage PMEM optimally. And, depending on the type of PMEM, the same goes for some of the related hardware (CPU, memory bus).

Use cases

Any workload that can benefit from extreme speeds but doesn’t require too much capacity. Database logging is one such example as is journaling.

So if you have a need for the fastest possible PMEM you could be using or looking at NVDIMM-N today. But due to the size limitations, you’ll be addressing any ultra-high-speed storage needs that require more capacity with different variants of PMEM in the very near future. NVDIMM-P or Storage Class Memory are two solutions that deliver similar characteristics in a somewhat different manner but at higher capacity and a better price point. I’ll discuss these in later posts.

Note: I present on the topic of PMEM and target IT professionals and developers that want to understand persistent memory a bit better. Help put it into context and learn about the benefits. Reach out via my contact page if this interests you.

Renewed as Microsoft MVP for 2019-2020

Renewed as Microsoft MVP for 2019-2020

I am renewed as Microsoft MVP for 2019-2020! Yesterday, Juli 1st 2019 while reading my e-mail in the afternoon, one just more just arrived. What’s good about that? This is 2019 and many (still) struggle with too much e-mail. So that this one more is hardly blog post worthy. But still, this one is important. This e-mail announced that I am renewed as Microsoft MVP for 2019-2020 in Cloud & Datacenter Management.

This is great news to get on a Monday. This calls for a celebration. On the 4th of July we are having small party at night with a buddy form North America so we’ll combine both festivities.

One more year

I count myself lucky to be part of this program. I look forward to working with the product managers again and heading back over to Redmond in 2020. Thank you Microsoft for the trust, the insights, the two-way feedback that will ultimately lead to better decisions and products.

In the end this ties in to Microsoft’s mission which is to empower every person and organization on the planet to achieve more. We live in a world where things change fast. As a side effect, sometimes things don’t last very long. In such an environment a continuous feedback and decision loop is one of the necessities to make progress without getting lost. I will happily contribute to that.

Hyper-V Server 2019 is available

Introduction

Windows Server 2019 went RTM on October 3rd 2018. Ever since we have been waiting for the Hyper-V Server 2019 edition. It has been sadly missing in action until now. Hyper-V Server 2019 is available since June 14th 2019. We’ll kindly distract the time for which Windows Server 2019 went AWOL for a month after RTM due to certain issues and bugs. It became available again on November 13th 2018. That means we had to wait 214 days ( 7 months, 2 days) to get it Hyper-V Server 2019. This makes the time it took to get the evaluation ISO of Windows Server 2019 look short (January 2019).

You can download Hyper-V Server 2019 here on the Windows Server Evaluations page.

Grab the Hyper-V Server 2019 bits!

What is Hyper-V Server?

Microsoft Hyper-V Server is a free product that delivers the same enterprise-class virtualization you get with Windows Server 2019. Hosters of Linux servers and VDI deployments are prime customers. Any one looking for the best performing hypervisor for free is interested in this version. It comes a “core only”and does not support any any other roles and features bar what is necessary to make Hyper-V work. Basically it is the hypervisor and not the rest of Windows. Which is fine!

Why does this matter?

The fact that it is here now is a big deal. The fact that it was missing so long sent many on speculations about the reasons for this. It fed the rumors that Hyper-V is dead to Microsoft and the Windows Server doesn’t matter anymore. Taking away the free version had people guessing that Microsoft was not even interested anymore in competing with VMware on this front.

Now, the IT landscape is changing and we’ll see the next generation hyper-visors appear that are tailored for and specialized in modern workloads. But sending of Hyper-V to the pastures already would be a huge mistake. Just like missing or incomplete features are hurting the product. Servers are going to be around for may years still and we need a modern, capable and reliable product to serve those needs for a long time.

Not having that is sending the wrong message and is a breach of trust. Trust is important. With trust you feel confident to rely on a technology and build on it. knowing. Only focusing on the new, which evolves ever faster and lasts ever less, is not how one builds long term customer loyalty. In this regards the fact that Hyper-V Server 2019 is here is hopefully enough to put the minds of people that rely on it at easy.