Unter Linux wird NVRAM über das Dateisystem bereitgestellt und die Anwendungen können dann Dateien mit mmap in den Adressraum einblenden. Auf den Knoten die NVRAM haben wird der Zugriff im Dateisystem durch das Verzeichnis /mypmemfs bereitgestellt. Hier kann jeder Benutzer Dateien erzeugen und seine Dateien lesen, schreiben und loeschen (die Berechtigungen entsprechend denen im /tmp Verzeichnis).

Der Persistent Memory Development Kit (PMDK) mit gcc etc. wird durch folgenden Singularity Container bereitgestellt: /software/container/pmem.sif. Um diesen zu nutzen kann eine Shell im Container gestartet werden. Hierbei ist es wichtig, dass /mypmemfs mit dem Bind-Parameter gemountet wird.

student@node83:~$ singularity shell --bind /mypmemfs /software/container/pmem.sif

Wenn Sie diesen Container erweitern möchten können Sie sich die Datei /software/container/definitions/pmem.def herunterladen und zu Hause einen eigenen erweiterten Container zusammenbauen. Dies geht nicht direkt auf dem Cluster.

Charakteristika unseres NVRAMs


Wir haben 128 GB Intel Optane DIMMs, jeweils pro Knoten 1 DIMM Modul.

Die Messungen wurden mit pmem-perf-sweep (siehe hier) auf node83 durchgeführt.

Bandbreiten:

Latenzen:

Weitere Messungen in der in einer for-Schleife in Array (1.000.000 uint_8t Elemente) sequentiell in Pmem geschrieben wird.