![]() |
|
|
|||||||
| Portal | Wiki | IRC-Chat | Registrieren | Benutzerliste | Suchen | Heutige Beiträge | Alle Foren als gelesen markieren |
![]() |
|
|
Themen-Optionen | Thema bewerten | Ansicht |
|
|
#16 |
|
Chuck The Plant
Registrierungsdatum: Nov 2004
Ort: NRW
Beiträge: 511
|
Ich hätte bei der Killer-Nic mehr Empörung hier erwartet und auf keinen Fall, dass irgendwer glaubt, dass man das Ding das ernsthatft unter FreeBSD einsetzen will.
Damit wollte ich die eigentlich Diskussion wiederbeleben, was auch gelungen ist. Um wieder auf das ursprüngliche Thema zurückzukommen: Die Milchmädchenrechnung, dass die CDU-Last der Netzwerkkarten heute keine Rolle mehr spielt, weil die CPUs stark genug sind, möchte ich folgende Punkte entgegenstellen:
__________________
Chuck The Plant is dying |
|
|
|
|
|
#17 | ||||
|
Registered User
Registrierungsdatum: Jun 2005
Beiträge: 388
|
Zitat:
![]() Zitat:
Im Server-Bereich wird von vornherein besseres Material verbaut, dort wirst du keine NIC mit den genannten Schwächen mehr finden. Im High-End-Bereich spielen die Kosten für eine ordentliche NIC eh keine Rolle mehr. Zitat:
Zitat:
|
||||
|
|
|
|
|
#18 |
|
Possessed With Psi Powers
|
Bei der Diskussion um Geschwindkeit, bzw. CPU-Last von Netzwerkkarten, ist der wichtigste Punkt noch nicht genannt: Die Treiber. Damit meine ich nicht Treiber-Bugs und ähnliche Probleme, gerade Intel hat da in der Vergangenheit ja mehrmals tief ins Klo gegriffen, sondern wie gut die Treiber hinsichtlich Performance geschrieben sind.
Man kann die beste Netzwerkhardware unbrauchbar machen, wenn der Treiber schlecht programmiert ist und / oder veraltete Konstrukte nutzt. Umgekehrt kann man selbst schlechte Hardware interessant bekommen, wenn die Treiber okay sind. Mal als ein Beispiel age(4). Als ich ca. 2008 das "Glück" hatte einen Kunden mit einer Menge Maschinen mit age(4) zu übernehmen, hätte ich kotzen können. Dieser Chip triefte vor Hardware-Bugs (z.B. führte das Nutzen von 64-Bit DMA zu Hauptspeicherkorruption), zudem war er grottenlahm. Selbst mit Jumbo-Frames nur ~20mb/s bei hoher CPU-Last. Privat hatte ich einen baugleichen Chip daher durch eine em(4)-Karte ersetzt, dort ging es aber nicht. Also setzten wir uns hin und begannen den Treiber zu überarbeiten: - Es wurde korrektes, modernes IRQ-Handling per MSI / MSI-X implementiert - Das BUSDMA-Interface wurde überarbeitet und korrekt mit den rx- und tx-rings integriert. - Task-Queues schaden auch nie. - Es wurden diverse Hardware-Features und Workarounds um Hardware-Bugs von Linux portiert. - Nutze Zero-Copying wo möglich. Hinterher lief der Treiber wesentlich runder und obwohl an sich unterlegen, musste der Chip sich nicht mehr vor den großen Intel-Karten verstecken. Die Änderungen an miibus(4) in 9.0 brachten noch einmal einen deutlichen Geschwindkeitsschub. Auf einem Phenom II 940 komme ich ohne Jumbo-Frames auf ~90mb/s über eine Gigabit-Verbindung, ohne messbare CPU-Last zu erzeugen. Das ist nahezu optimal und auch wenn deutlich teureren Karten kaum zu toppen. Ich würde zwar age(4) niemals in einem Server einsetzen, wenn es sich vermeiden lässt, aber es zeigt, dass der Treiber wesentlich mehr ins Gewicht fällt als die Hardware. Die Hardware muss es lediglich ermöglichen einen guten Treiber zu implementieren.
__________________
Eure Tastatur verfügt nicht umsonst über zwei Shift-Tasten! Benutzt sie bitte, denn sonst ist es mir fast unmöglich euere Posts zu entziffern. Homepage: http://www.yamagi.org | Yamagi Quake II: http://www.yamagi.org/quake2
|
|
|
|
|
|
#19 |
|
Chuck The Plant
Registrierungsdatum: Nov 2004
Ort: NRW
Beiträge: 511
|
Richtig Yamagi, der Treiber spielt eine sehr grosse Rolle.
Treiber: Von der Hardware alleine wäre lt. Papier sicher die HP NC382T (bce(4)) auf dem ersten Platz und erst dahinter dann die Intel 1000 ET (igb(4)) und dann die Intel 1000 PT (em(4)). Die bce(4) scheinen urspruenglich von Broadcom selbst zu kommen und wurden dann vom FreeBSD-Team gepflegt aber nicht weiter staerker optimiert. Die Intel-Treiber kommen nach meiner Kenntnis von Intel und dem FreeBSD-Team gemeinsam und werden ständig von beiden Seiten gepflegt und optimiert. Meine Tests: Alle Karten habe ich jetzt mal durchgetestet mit größeren Bacula-Recover und alle sind unter FreeBSD unproblematisch. Die Recover-Tests sind zwar keine richtigen sauberen Tests, aber ich meine, dass die igb(4) gut einen Kern ausgelastet hat während die igb(4) immer deutlich im einstelligen Prozentsatz blieb. Entscheidung? Gerade habe ich eher die Tendenz die em(4) durch die igb(4) zu ersetzen, weil sie moderner ist. Anderseits ist die igb(4) deutlich seltener, weil es nur zwei Varianten gibt, während es von der em(4) seit 10 Jahren immer neue Modelle gibt. Was meint ihr, ist der Treiber igb(4) mit dem em(4) von der Qualität vergleichbar?
__________________
Chuck The Plant is dying |
|
|
|
|
|
#20 |
|
Chuck The Plant
Registrierungsdatum: Nov 2004
Ort: NRW
Beiträge: 511
|
Ich habe mal Bilder von den Kandidaten gemacht:
__________________
Chuck The Plant is dying |
|
|
|
|
|
#21 |
|
Possessed With Psi Powers
|
Ich würde sagen, dass sich igb und em nichts nehmen. Das ist beides der "e1000"-Treiber, lediglich mit anderen Hardware-Backends gebaut. Mir ist nicht einmal klar, wieso es überhaupt zwei getrennte Treiber sind. Sieht man auch in den Makefiles gut:
em: http://svnweb.freebsd.org/base/head/...00&view=markup igb: http://svnweb.freebsd.org/base/head/...00&view=markup
__________________
Eure Tastatur verfügt nicht umsonst über zwei Shift-Tasten! Benutzt sie bitte, denn sonst ist es mir fast unmöglich euere Posts zu entziffern. Homepage: http://www.yamagi.org | Yamagi Quake II: http://www.yamagi.org/quake2
|
|
|
|
|
|
#22 |
|
Chuck The Plant
Registrierungsdatum: Nov 2004
Ort: NRW
Beiträge: 511
|
Danke Yamagi.
Dann ist meine Entscheidung, dass ich beim Entreffen des fabrikneuen Exemplars der "Intel Pro 1000 ET Server Dual Port Adapter" igb(4) diese statt der em(4) einbaue. Danke für Eure Hilfe.
__________________
Chuck The Plant is dying |
|
|
|
|
|
#23 |
|
Chuck The Plant
Registrierungsdatum: Nov 2004
Ort: NRW
Beiträge: 511
|
Gerade sehe ich, dass es schon für die "Intel 1000 ET" einen Nachfolger gibt: "Intel i350" aka "Intel 1000 VT" gibt.
Bisher habe ich folgendes dazu gefunden: Hardware: Wenn man die (Marketing-) Datenblätter vergleicht, dann ist der Unterschied nur, dass die VT 5.0 GT/s PCIe 2.0 statt 2.5 GT/s PCIe 2.0 beherrscht. Intel 1000 ET Intel i350 / 1000 VT In Wirklichkeit wird da der Unterschied aber vermutlich größer sein. FreeBSD:
__________________
Chuck The Plant is dying |
|
|
|
|
|
#24 |
|
Chuck The Plant
Registrierungsdatum: Nov 2004
Ort: NRW
Beiträge: 511
|
Die i350 kann im Gegensatz zur 1000 ET noch Direct Memory Access (DMA) Coalescing, was aber nur zum Energiesparen der (Memory-Controller der) CPU nutzt und unter Stromspartechnologie verbucht ist.
Andere Vorteile z.B. auf die Speicherbelastung scheint es nicht zu haben. Als Nachteil steigt die Netzwerklatenz noch mal.
__________________
Chuck The Plant is dying |
|
|
|
|
|
#25 |
|
Possessed With Psi Powers
|
Eventuell interessiert dich dieses Changeset: http://svnweb.freebsd.org/base?view=...evision=235210 Sollte den Durchsatz bei mehreren igb(4) im System leicht erhöhen.
__________________
Eure Tastatur verfügt nicht umsonst über zwei Shift-Tasten! Benutzt sie bitte, denn sonst ist es mir fast unmöglich euere Posts zu entziffern. Homepage: http://www.yamagi.org | Yamagi Quake II: http://www.yamagi.org/quake2
|
|
|
|
|
|
#26 |
|
Chuck The Plant
Registrierungsdatum: Nov 2004
Ort: NRW
Beiträge: 511
|
Interessante Änderung, aber mich wundert etwas, dass das nur bei mehreren Interfaces funktioniert.
DIe Hardware der Netzwerkkarte unterstützt zumindest RSS (Receive Side Scaling) und müsste mit nur einem Port die Last auf mehrere Kerne verlagern. PS: Ich kann grob eine Steigerung bei scp von knapp 10% von em(4) zu igb(4) beobachten. Das hätte ich jetzt nicht erwartet.
__________________
Chuck The Plant is dying |
|
|
|
|
|
#27 |
|
Linux is for Bitches
|
Ich habe mit em so meine Erfahrungen im Tor-Betrieb gesammelt, zugegebenermaßen eine etwas eigensinnige Workload, aber meine Schlussfolgerung ist eher, dass der Treiber Schrott ist. Ich habe das auch länglich mit Leuten auf FreeBSD-Performance@ diskutiert, und da stimmte man mit zu, dass der Treiber an einigen Stellen sehr suboptimal ist.
Leider hatte ich bisher noch keine Chance das ganze mal mit igb oder e1000e zu testen, jedoch würde ich da mehr erwarten. Für eine "normale" Workload wie Samba o.ä. ist aber auch em vollkommen ausreichend.
__________________
http://500px.com/juwi |
|
|
|
|
|
#28 |
|
Chuck The Plant
Registrierungsdatum: Nov 2004
Ort: NRW
Beiträge: 511
|
@yamagi
Gerade ist mir unter aktuellem Linux aufgefallen, dass auch dort das Kernelmodul "igb" der Intel 1000 ET heisst. Wir hatten uns gewundert, wieso es einen igb(4) zusätzlich zur em(4) gibt, obwohl die Sourcen gemeinsam sind. Damit ist gemeint, dass der Treiber der Broadcom unter FreeBSD suboptimal ist?
__________________
Chuck The Plant is dying |
|
|
|
![]() |
| Stichworte |
| em bce broadcom intel |
| Dieses Thema betrachten zurzeit 1 Personen. (0 registrierte Benutzer und 1 Gäste) | |
| Themen-Optionen | |
| Ansicht | Thema bewerten |
|
|
Ähnliche Themen
|
||||
| Thema | Erstellt von | Forum | Antworten | Letzter Beitrag |
| em(4) und WoL (Intel 1000) | rMarkus | FreeBSD - Netzwerk | 4 | 26.11.2011 16:01 |
| Wired LAN - no link - Attansic Technology L1E - ale Treiber | nille | OpenBSD - Allgemein | 3 | 26.06.2011 13:12 |
| OpenBSD auf Intel Board S3000AHLX + QuadNic EXPI9404PT => couldn't map interrupt | plepps | Hardware | 1 | 14.11.2007 08:46 |
| Openbsd 4.0 keine hw.sensors ? | fishbone | OpenBSD - Installation | 4 | 12.03.2007 22:32 |
| Broadcom WLAN, Intel WLAN geht jetzt mit BSD | ouTi | News | 27 | 19.09.2004 21:52 |