Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
[Sammelthread]Der 100Gbit Netzwerk Thread, ein bisschen 40gbit und „beyond“ ;)
Zu langsam Beim im 1. Post verlinkten ebay Angebot gibt es keine Karten mehr. Werde die Entwicklung hier mal weiterverfolgen und die Daumen drücken, dass es mal wieder so ein Angebot gibt.
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Also iperf3 nur auf'm Localhost wo die Karte nur im x8-Slot steckt geht sogar bis 70Gbit hoch
Momentan versuche ich gerade, auf dem anderen Rechner ein Live-Linux ans Laufen zu bekommen... Schande auf mein Haupt, aber mit diesem neumodischen Netzwerkstack werde ich noch nicht so richtig warm... ICH WILL MEIN IFCONFIG!
- - - Updated - - -
Man entschuldige meine Ausdrucksweise: YEAH BITCHES!
>40Gbit zwischen Host1 (CentOS) und Host2 (Ubuntu) ohne jegliches Tuning:
Womit sich jetzt die Frage stellt, ob tatsächlich der x8 jetzt limitiert...
Kleiner Zusatztest: ESXi wieder auf dem Pentium mit Solaris 11.3 als VM über vmxnet3-Adapter kommt auf Anhieb mit iperf (nicht iperf3 - hab ich noch nicht unter Solaris installiert bekommen) auf 20gbit.
beim localhost-only ging das evtl. durch das lo-device und nicht durch die Karte. Oder die Erfassung fand innerhalb des Chips statt und ging gar nicht über den PCIe? Ist jedenfalls nicht möglich. Schon theoretisch ist bei 7,8Gb/s Schluss.
kannste mal ethtool {NIC} posten?
Nur dass wir uns da richtig verstehen: ich erwarte von den anderen Käufern hier schon Feedback, ob und ggf. unter welchen Bedingungen bei Euch welche Speed ankommt, gelle?
Sonst muss ich doch noch irgendwo ein zweites System shanghaien...
Ich hab neulich auch mal drüber nachgedacht. Anlass waren bei mir die kommenden Optane NVDIMMs. Warum überrascht es mich nicht, dass ich damit nicht alleine bin und andere, darunter übliche Verdächtige, schon angefangen haben?
So, ich versuche mal in den wenigen Minuten zwischendurch voranzukommen und ergänze diesen Post entsprechend im Verlauf.
Die Karten sind angekommen, wie beschrieben verschweißt und optisch ohne Nutzungsspuren, also tatsächlich neu. Bei StH wurde behauptet, es seien "CX456B"-Modelle, die Mellanox selbst nicht vertreibt. Die von besterino verlinkte PDF zeigt auch als einzige die PSID 3240110033. Spätere Firmwaretabellen zeigen sie nicht mehr. Gleichwohl werde ich später noch ein Crossflash probieren.
TestPC1: Asrock X99E4, E5-2650v4ES, 4x8GB RAM-2133rECC; Installation in x16-Slot. Windows 2012R2 und Ubuntu 18.04 DualBoot.
TestPC2: Dell T630, E5-2630v3, 4x8GB RAM-2133ECC; Installation in x16-Slot. Ubuntu Server 18.04
Aus der Mellanox Firmware-Logik heraus (12.xx.xxxx) ist zumindest schon zu sehen, dass es sich nur um eine ConnectX4 VPI oder EN handeln muss. WinOF2 ist erst ab Firmware 12.23.xxxx vorgesehen, die aktuelle der Karte ist 12.17.2052. Treiber läuft trotzdem, außerdem soll ja eine aktuelle FW später drauf.
Test1: Win2012R2 an Ubuntu Server, 40Gbit QSFP-Module (unbekannter Hersteller leider, Intel-kompatibel) und MTP-Kabel Direktlink
Module werden sofort erkannt und korrekt auf 40Gbit Linkspeed gesetzt.
1) Ubuntu = iperf3 -s; Windows iperf3 -c; Original-Firmware 12.17.2052.
3) Mit -P8, also acht gleichzeitigen Streams bei Iperf3, kommt das auf 30-33Gbit/s. Das ist ja schon allmählich in der Zielgeraden. Außerdem war hierfür die Firmware auf die neuere 12.21.xxxx DELL-Version geflasht.
So. Musste eben nochmal neu Ubuntu auf meinem PC installieren...
Sieht schon ganz anders aus:
4) Ubuntu Desktop 18.10 zu Ubuntu Server 18.04.1 LTS; immer noch die neuer DELL-Firmware
Sichtbar braucht eine der CPUs ein wenig Zeit zum Hochtakten. Evtl ist das unter Windows das Problem bei diesem Test?
Das Ganze nochmal mit MTU 9014 gesetzt:
@danielmayer: wäre Dir dankbar, wenn Du im Zusammenhang mit dem crossflash einmal postest, welche Firmware, device ID usw. Deine Karte vorher (und nachher) hat.
Meine ist aktuell (nur auf aktuelle Dell-FW geflashed):
mlxfwmanager
Code:
c:\Program Files\Mellanox\WinMFT>mlxfwmanager
Querying Mellanox devices firmware ...
Device #1:
----------
Device Type: ConnectX4
Part Number: 00272F_0HWTYK_Ax
Description: Mellanox ConnectX-4 Dual Port 100 GbE QSFP Network Adapter
PSID: DEL3240110033
PCI Device Name: mt4115_pciconf0
Base GUID: [REDACTED]
Base MAC: [REDACTED]
Versions: Current Available
FW 12.21.3012 N/A
PXE 3.5.0305 N/A
UEFI 14.14.0032 N/A
Status: No matching image found
Was mich vor dem crossflash u.a. noch zurückhält ist der Umstand, dass die Dell eigentlich keine Infiniband/Ethernet Kombi-Karte ist, die bei STH angegebene aber schon.
Möchte als ambitionierter Laie nicht trollen, aber wo liegt denn bei den Karten der Flaschenhals, was die realen Transferraten angeht?
Finde die Werte um 20 Gb etwas ernüchternd, wenn ich den Vergleich zu Intel XL710ern (40 GbE) ziehe, die ohne RDMA (würde bei Intel iWARP heißen) bei Systemen mit E3-Xeons etwa 30 Gb bringen (unter Windows über SMB).
besterino hat soweit Recht, dass mit der original-Dell-Firmware Infiniband deaktiviert ist. Die Optionen "LINK_TYPE_P1" bzw. "P2" sind nicht verfügbar. Alle Infiniband-Tools zeigen zwar die Ports an, jedoch mit Link_Layer "Ethernet". Also mal das Flashen auf CX456A-ECAT durchführen und schauen.
Crossflashing ist unter Linux mit dem Befehl "flint -d /dev/mst/mt4115_pciconf0 -i fw-ConnectX4-rel-12_23_1020-MCX456A-ECA_Ax-UEFI-14.16.17-FlexBoot-3.5.504.bin -allow_psid_change burn" eine einfache Sache gewesen. Nach einen Reboot sieht die Karte tatsächlich schon etwas anders aus:
Und man sehe: Beide Ports sind jetzt per Standard auf "Infiniband" gesetzt.
Mit dem Befehl "mlxconfig -d /dev/mst/mt4115_pciconf0 set LINK_TYPE_P1=2" lässt sich nun jeder Port wieder auf Ethernet setzen (=1 wäre Infiniband).
Ich lasse mal einen so und den anderen so:
CA 'mlx5_0'
CA type: MT4115
Number of ports: 1
Firmware version: 12.23.1020
Hardware version: 0
Node GUID: 0x248a070300b597a2
System image GUID: 0x248a070300b597a2
Port 1:
State: Down
Physical state: Disabled
Rate: 40
Base lid: 0
LMC: 0
SM lid: 0
Capability mask: 0x04010000
Port GUID: 0x268a07fffeb597a2
Link layer: Ethernet
CA 'mlx5_1'
CA type: MT4115
Number of ports: 1
Firmware version: 12.23.1020
Hardware version: 0
Node GUID: 0x248a070300b597a3
System image GUID: 0x248a070300b597a2
Port 1:
State: Down
Physical state: Polling
Rate: 10
Base lid: 65535
LMC: 0
SM lid: 0
Capability mask: 0x2650e848
Port GUID: 0x248a070300b597a3
Link layer: InfiniBand
oben hatte ich die Ports noch verwechselt, nach einem Umstecken des Transceivers sieht das nun mit "ibstatus" so aus:
Code:
Infiniband device 'mlx5_0' port 1 status:
default gid: fe80:0000:0000:0000:268a:07ff:feb5:97a2
base lid: 0x0
sm lid: 0x0
state: 4: ACTIVE
phys state: 5: LinkUp
rate: 40 Gb/sec (4X QDR)
link_layer: Ethernet
Infiniband device 'mlx5_1' port 1 status:
default gid: fe80:0000:0000:0000:248a:0703:00b5:97a3
base lid: 0xffff
sm lid: 0x0
state: 1: DOWN
phys state: 3: Disabled
rate: 10 Gb/sec (4X SDR)
link_layer: InfiniBand
Da die andere Karte im Ubuntu Server noch auf altem DELL-Stand ist, kann ich jetzt einen "cross-iperf" durchführen:
Die Schwankungen führe ich soweit erst mal auf den benutzten CPU-Kern zurück, da mit meiner Workstation und der Engeneering-Sample-CPU die Taktfrequenzen schon eher bei 1200MHz liegen als darüber...
Das Crossflashing hat jedenfalls funktioniert und keinen negativen Einfluss auf Ethernet / Workstation. Daher nun Flash auf dem Server...
Code:
root@server:/usr/src# flint -d /dev/mst/mt4115_pciconf0 -i fw-ConnectX4-rel-12_23_1020-MCX456A-ECA_Ax-UEFI-14.16.17-FlexBoot-3.5.504.bin -allow_psid_change burn
Current FW version on flash: 12.21.3012
New FW version: 12.23.1020
You are about to replace current PSID on flash - "DEL3240110033" with a different PSID - "MT_2190110032".
Note: It is highly recommended not to change the PSID.
Do you want to continue ? (y/n) [n] : y
Mit einem "mlxfwreset -d /dev/mst/mt4115_pciconf0 r" lädt die neue Firmware auch ohne Server-Reboot.
Auch hier wieder "mlxconfig -d /dev/mst/mt4115_pciconf0 set LINK_TYPE_P1=2" für Ethernet auf Port 1, danach der gerade genannte mlxfwreset, danach ein ifconfig enp4s0f0 (so der Name auf dem Server) auf IP 192.168.6.230 und der Ethernet-Link mit 40Gb ist wieder online.
Aber Port 2 bei beiden nun auf Infiniband.
Mit iperf3 komme ich von Workstation (ES-CPU...) -> Server mit -P8 auf 30Gbit, von Server -> Workstation mit -P8 auf etwa 38Gbit.
Weil die Serverkarte ohne Slotblende auskommen muss, und daher das Umstecken des Transceivers ungünstig ist, habe ich auf beiden Rechnern eben mal Port 1 von ETH -> IB umkonfiguriert, wie oben beschrieben.
Und:
Code:
root@server:/usr/src# opensm -B
-------------------------------------------------
OpenSM 3.3.20
Command Line Arguments:
Daemon mode
Log File: /var/log/opensm.log
-------------------------------------------------
root@server:/usr/src# ibstat
CA 'mlx5_0'
CA type: MT4115
Number of ports: 1
Firmware version: 12.23.1020
Hardware version: 0
Node GUID: 0x248a070300b5979a
System image GUID: 0x248a070300b5979a
Port 1:
State: Active
Physical state: LinkUp
Rate: 40
Base lid: 1
LMC: 0
SM lid: 1
Capability mask: 0x2651e84a
Port GUID: 0x248a070300b5979a
Link layer: InfiniBand
CA 'mlx5_1'
CA type: MT4115
Number of ports: 1
Firmware version: 12.23.1020
Hardware version: 0
Node GUID: 0x248a070300b5979b
System image GUID: 0x248a070300b5979a
Port 1:
State: Down
Physical state: Disabled
Rate: 10
Base lid: 65535
LMC: 0
SM lid: 0
Capability mask: 0x2651e848
Port GUID: 0x248a070300b5979b
Link layer: InfiniBand
Läuft. Tests dann demnächst, ich mache jetzt Heia.
... und dann mit htop die CPU-Auslastung auf dem i3-Server beobachtet: der i3 ist sofort bei 100% CPU mit allen 4 Threads und die kombinierte Bandbreite liegt irgendwo bei 56gbit...
Da scheint also (momentan) der Bottleneck zu sein. Kann das sein?
naja, und, dass der i3 die Karte nur mit PCIex8 angeschlossen hat. Da sind 60Gbit schon ziemlich gut.
Bei Ubuntu 18.10 meldet dmesg etwas ausführlicher als bei 18.04. U.a., dass meine Bandbreite x16 mit ca 126Gbit Kapazität definiert wird.
Ihr könntet das Ganze noch mit DPDK und den entsprechenden mlx4 Pollmode driver testen. Auf dpdk.org gibt es Beispielprogramme mit Benchmarks. Interrupt driven bzw. ohne RDMA sehe ich wenig Chancen auf 100 Gbits Realdurchsatz.
Ja, richtig. Bislang waren das die out-of-the-box Tests. RDMA ist m.E. ohnehin Pflicht, schon bei der CX2 10Gbit war die entsprechende Firmware für RDMA@Windows Pflicht.
Vielleicht für euch ganz interessant: Linus hat auch gerade mit den CX4 rumgespielt: 10 GIGABYTES a SECOND?? - HOLY $H!T - YouTube
Der Windows Explorer macht bei 4 Gigabyte/s zu und schafft nicht mehr über SMB, was ne Schande^^
Danke, aber irgendwie typisch für Video: zu wenig Details - wie immer.
Der crossflash hat bei mir übrigens das UEFI-Bios der NICs disabled. Hat mich irgendwie genervt und wollte das wieder haben. Man muss das manuell wieder anschalten für beide Ports mit (commando für ESXi nativ):
mlxconfig -d mt4115_pciconf0 set EXP_ROM_UEFI_x86_ENABLE=1
mlxconfig -d mt4115_pciconf0.1 set EXP_ROM_UEFI_x86_ENABLE=1
Und zum Thema SR-IOV unter dem freien ESXi:
Lässt sich zwar aktivieren:
ABER:
Fehler beim Einschalten der virtuellen Maschine ZZY_Ubuntu18.04. Aufgrund einer Lizenzbeschränkung kann dieser Vorgang nicht ausgeführt werden. Entweder die Lizenzedition des ESXi-Hosts unterstützt diesen Vorgang nicht, oder das vCenter Server-System, das den Host verwaltet, verfügt über eine Lizenz, die diesen Vorgang über eine Direktverbindung mit diesem Host beschränkt. Überprüfen Sie die lizenzierten Funktionen für den Host oder stellen Sie eine Verbindung mit vCenter Server her und wiederholen Sie den Vorgang. Klicken Sie hier, um weitere Informationen zu erhalten. - schließen
Zwischeninfo: Bei mir stört sich die Geschwindigkeit definitiv an der CPU der Workstation (ES-CPU... ;(), da iperf3 single-threaded und bei ca 20Gbit zu 100% ausgelastet ist. iperf2 ist dagegen multi-threading-fähig. Dort mit iperf -P8 landen in 10 Sekunden 39,6Gbit (46GBytes). Also volle Geschwindigkeit. JETZT bräuchte ich die 100G-Transceiver
@ besterino: iperf-2.0.13a-win.exe ist das executable... bei Ubuntu i.d.R. bereits als 2.0.10 o.ä. installiert. Sollte >= 2.0.8 sein wegen Bugs.