ESXi 6.7u3 TrueNAS 12.0-U2 VM mit Optane P4800X (PCIe Passthrough) extrem langsam

0xsepa

Experte
Thread Starter
Mitglied seit
03.03.2017
Beiträge
97
Hi,
ich habe hier zwei ThinkSystem SR550 Systeme mit folgender Konfiguration:
2 x Xeon 4110, 256 GB RAM
6x WD Ultrastar DC HC520 12TB SAS

ThinkSystem 430-16i HBA (PCI-E x8)
Intel X722 2x10GbE SFP+ LOM
Intel X710 2x10GbE SFP+ (PCI-E x8)
Intel Ethernet Server Adapter I350-T4 (PCI-E x4)
Intel Optane DC P4800X 375GB (PCI-E Gen 3 x16), neu und frisch aus der Verpackung

Beide Systeme nutzen 6.7.0 Update 3 (Build 17167734).

Eine TrueNAS 12.0-U2 VM hat via PCIe Passthrough des ThinkSystem 430-16i HBA volle Kontrolle über die SAS Platten. Der Pool besteht aus eine 3-Way Mirror, und ein Dataset wird via NFS an den ESXi als Datastore zurück geshared.

Ziel ist die Optane als SLOG zu verwenden.

Das Verhalten ist wie folgt:
Versuch #1:
PCIe Passthrough der Intel Optane DC P4800 an TrueNAS VM. Die Optane wird als /dev/nvd0 eingebunden.
Das nvd0 device wird in zwei Partitionen (30 GB und 340 GB) aufgeteilt.
Erweitert man den pool um das nvd0 als LOG und CACHE (das Hinzufügen dauert schon unheimlich lang), dann bricht die Performance des pools komplett zusammen. NFS Shares sind dann nicht mehr benutzbar.

Benchmark auf die Optane ohne Partitionen:
Code:
root@freenas2[~]# diskinfo -wS /dev/nvd0
/dev/nvd0
        512             # sectorsize
        375083606016    # mediasize in bytes (349G)
        732585168       # mediasize in sectors
        0               # stripesize
        0               # stripeoffset
        INTEL SSDPED1K375GA     # Disk descr.
        PHKS946300WB375AGN      # Disk ident.
        Yes             # TRIM/UNMAP support
        0               # Rotation rate in RPM

Synchronous random writes:
         0.5 kbytes: 565183.6 usec/IO =      0.0 Mbytes/s
           1 kbytes: 571708.0 usec/IO =      0.0 Mbytes/s
           2 kbytes: 570867.1 usec/IO =      0.0 Mbytes/s
           4 kbytes: 572223.4 usec/IO =      0.0 Mbytes/s
           8 kbytes: 572238.0 usec/IO =      0.0 Mbytes/s
          16 kbytes: 570809.7 usec/IO =      0.0 Mbytes/s
          32 kbytes: 572155.9 usec/IO =      0.1 Mbytes/s
          64 kbytes: 572457.3 usec/IO =      0.1 Mbytes/s
         128 kbytes: 572408.1 usec/IO =      0.2 Mbytes/s
         256 kbytes: diskinfo: AIO write submit error: Operation not supported

Fazit: Katastrophal (milde ausgedrückt)

Versuch #2:
Die Optane DC P4800 wird als lokaler ESXi VMFS Datastore verwendet. Der TrueNAS VM werden zwei VMDKs (30 GB und 340 GB), auf dem Optane Datastore verweilend, hinzugefügt.

Benchmark auf die VMDK:
Code:
root@truenas2[~]# diskinfo -wS /dev/da1
/dev/da1
        512             # sectorsize
        32212254720     # mediasize in bytes (30G)
        62914560        # mediasize in sectors
        0               # stripesize
        0               # stripeoffset
        3916            # Cylinders according to firmware.
        255             # Heads according to firmware.
        63              # Sectors according to firmware.
        VMware Virtual disk     # Disk descr.
                        # Disk ident.
        No              # TRIM/UNMAP support
        0               # Rotation rate in RPM
        Not_Zoned       # Zone Mode

Synchronous random writes:
         0.5 kbytes:     68.3 usec/IO =      7.1 Mbytes/s
           1 kbytes:     69.0 usec/IO =     14.2 Mbytes/s
           2 kbytes:     69.5 usec/IO =     28.1 Mbytes/s
           4 kbytes:     69.6 usec/IO =     56.1 Mbytes/s
           8 kbytes:     71.0 usec/IO =    110.0 Mbytes/s
          16 kbytes:     74.1 usec/IO =    210.8 Mbytes/s
          32 kbytes:     84.2 usec/IO =    371.3 Mbytes/s
          64 kbytes:    104.1 usec/IO =    600.6 Mbytes/s
         128 kbytes:    251.0 usec/IO =    498.0 Mbytes/s
         256 kbytes:    245.1 usec/IO =   1020.0 Mbytes/s
         512 kbytes:    340.8 usec/IO =   1467.1 Mbytes/s
        1024 kbytes:    581.1 usec/IO =   1720.8 Mbytes/s
        2048 kbytes:   1017.5 usec/IO =   1965.6 Mbytes/s
        4096 kbytes:   1910.4 usec/IO =   2093.7 Mbytes/s
        8192 kbytes:   3642.0 usec/IO =   2196.6 Mbytes/s

Ist halt Blindflug ohne SMART Parameter und mit angezogener Handbremse.

Das Verhalten tritt an beiden Systemen auf. Kann mir jemand einen Tipp geben, warum die Optane P4800X nicht im PCIe Passthrough läuft?
 
Zuletzt bearbeitet:
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Für die Optane 900p musste ich die /etc/vmware/passthru.map editieren und eine Zeile einfügen (die zweite ist ja nur ein Kommentar) und dann den Hypervisor neu starten, damit Passthrough funktionierte.

Code:
# Intel Optane 900P
8086 2700 d3d0 false
 
Danke für den Hinweis! Es lag tatsächlich an der passthru.map. Allerdings benötigt die Optane DC P4800X eine andere Device ID.

Code:
# Intel Optane DC P4800X
8086 2701 d3d0 false

Der Benchmark sagt nun folgendes:

Code:
root@truenas2[~]# diskinfo -wS /dev/nvd0
/dev/nvd0
        512             # sectorsize
        375083606016    # mediasize in bytes (349G)
        732585168       # mediasize in sectors
        0               # stripesize
        0               # stripeoffset
        INTEL SSDPED1K375GA     # Disk descr.
        PHKS9463008A375AGN      # Disk ident.
        Yes             # TRIM/UNMAP support
        0               # Rotation rate in RPM

Synchronous random writes:
         0.5 kbytes:     24.7 usec/IO =     19.8 Mbytes/s
           1 kbytes:     25.2 usec/IO =     38.8 Mbytes/s
           2 kbytes:     25.4 usec/IO =     76.8 Mbytes/s
           4 kbytes:     23.7 usec/IO =    164.8 Mbytes/s
           8 kbytes:     29.6 usec/IO =    263.6 Mbytes/s
          16 kbytes:     45.8 usec/IO =    341.4 Mbytes/s
          32 kbytes:     53.5 usec/IO =    583.9 Mbytes/s
          64 kbytes:     89.0 usec/IO =    701.9 Mbytes/s
         128 kbytes:    138.1 usec/IO =    904.9 Mbytes/s
         256 kbytes:    167.4 usec/IO =   1493.4 Mbytes/s
         512 kbytes:    272.6 usec/IO =   1834.1 Mbytes/s
        1024 kbytes:    503.5 usec/IO =   1986.1 Mbytes/s
        2048 kbytes:    929.6 usec/IO =   2151.6 Mbytes/s
        4096 kbytes:   1813.4 usec/IO =   2205.8 Mbytes/s
        8192 kbytes:   3597.9 usec/IO =   2223.5 Mbytes/s
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh