Hi Lawrence,
See this document:
https://www.intel.com/content/dam/www/public/us/en/documents/product-briefs/optane-persistent-memory-200-series-brief.pdf, which
indicatesthat the write bandwidth for the 256 GB parts is much higher than that for the 128 GB or 512 GB parts.
Exactly WHY this happens is a question for Intel, of course.
On Fri, 30 Apr 2021 01:56:13 -0700 (PDT), Lawrence Benson <
lawrence...@gmail.com> wrote:
>Hey,
>
>while running some measurements on PMem, I came across some interesting
>performance numbers for sequential writes. The workload represents a
>"logging" workload, in which each thread sequentially writes to its own log
>file. We are using 8 threads, each writing ~4 GiB (30 GiB in total) in 1024
>Byte chunks. Each chunk consists of 16x 64 Byte ntstores (using
>_mm512_stream_si512). After each chunk, we perform an sfence (_mm_sfence)
>to ensure the completion of the chunk. So far, this is pretty standard as
>done in various benchmarking papers. We run all threads on the same socket
>using numactl.
>
>However, we get (significantly) different results on two different PMem
>servers (see server configuration below). On our server with 128 GB DIMMs,
>we get ~11.7 GB/s while we get ~15.7 GB/s on our server with 256 GB DIMMs.
>As most work I am aware of reports numbers around 12 GB/s, the results on
>our 256 GB server confuse me slightly. I've verified the numbers our
>application reports with VTune, as shown in the images below.
>
>*128 GB DIMM Results:*
>[image: 128-dimm.png]
>
>*256 GB DIMM Results:*
>[image: 256-dimm.png]
>
>We have one server with 128 GB DIMMs (fully stocked, i.e., 2 sockets x 6
>DIMMs), and an Intel Xeon Gold 5220S with 18 Cores @ 2.7 GHz. The second
>server has fully stocked 256 GB DIMMs and an Intel Xeon Gold 6240L with 18
>Cores @ 2.6 GHz. Otherwise, both servers are running Ubuntu 20.04 with a
>5.4 Kernel and memory speed is set to 2666 MT/s.
>
>The main difference between the servers is the CPU and the DIMMs, which
>makes it hard to exactly pinpoint the cause for the performance difference.
>One major difference is that the 128 GB server has 4 NUMA nodes, i.e., two
>smaller ones per CPU while the 256 GB server has only 2 NUMA nodes, i.e.,
>one per CPU. Also, as we are using AVX-512 instructions for the ntstores,
>the 256 GB server has 2 AVX-512 FMA units
><
https://en.wikichip.org/wiki/intel/xeon_gold/6240l>, while the 128 GB
>server only has one <
https://en.wikichip.org/wiki/intel/xeon_gold/5220s>
>according to
wikichip.org.
>
>So my main question is: *Why are we seeing this major performance
>difference?* Is it because the DIMMs are actually better, is it because
>the CPU is better, or is it a combination of both? I'd appreciate any help
>in investigating this or maybe some links to official performance
>specification from Intel (which I have not really found yet). I'm mainly
>comparing to results published in research papers.
>
>As a side note: We are also seeing performance differences for other
>workloads (e.g., random reads), but the logging one was the first that we
>started investigating in detail.
>
>I'm happy to provide any additional information if this helps.
>
>Best,
>Lawrence
------------
Steve Heller