2016-05-26 13 views
-1

Ich möchte den schnellsten Weg finden, um eine Datei in Remote-Maschine zu lesen.Der schnellste Weg zum Lesen einer Datei in Remote-Maschine

Der Weg der Remote-I/O, die ich will

enter image description here

Die Anforderungen sind:

  1. Maschine B eine Datei (oder eine Seite) von Diskette A in Maschinen lesen A.
  2. Für schnelle Übertragung, überlappende DiskI/O und Netzwerk-I/O.
  3. Die Dateigröße ist eine Seite (vielleicht ist es 64KB ~ 4MB)
  4. Ich möchte nicht NFS, FTP oder etwas ähnliches verwenden.

Umwelt sind:

  1. Ich habe 100 Maschinen, die in einem Raum sind.
  2. Alle Maschinen sind durch Infiniband verbunden (Bandbreite: 1GB/s ~ 1.5GB/s), also kann ich RDMA verwenden!
  3. Jede Maschine hat Intel PCI-E SSD (sequentielles Lesen Bandbreite 1,0 GB/s ~ 1,5 GB/s)
  4. Betriebssystem ist CentOS 6,4

Gibt es eine Bibliothek oder Implementierung Art und Weise? Ich habe von MPI I/O gehört, aber ich verstehe nicht genau, was es ist.

Bitte helfen Sie mir. Danke

+0

Wie weit entfernt ist die entfernte Maschine? Der gleiche Raum? Gleiches Gebäude? Kontinental? Was ist Ihr Hardwarebudget? –

+1

Es hängt in gewissem Maße von der Größe der Datei ab. Wenn es klein ist, kann NFS am schnellsten sein. Wenn es groß ist, kann FTP am schnellsten sein. –

+0

Bitte ** bearbeiten Sie Ihre Frage **, um es zu verbessern. Siehe meinen vorherigen Kommentar. Gib weitere Details an: Wie weit sind die zwei Computer? Welche genaue Netzwerkverbindung? Welche Betriebssysteme? Welche Art von Computer & Hardware? –

Antwort

-1

Sie normalerweise sollte nicht kümmern. Das (Hardware-) Netzwerk würde immer den Engpass darstellen. Versuchen Sie, die schnellste Netzwerk-Hardware zu haben, die Sie sich leisten können.

Die meisten Netzwerk (Ethernet, Kabel) Verbindungen sind 1Gbit/Sekunde (und das sind die billigen). Sie erhalten diese Geschwindigkeit nur dann, wenn beide Computer physisch in der Nähe sind (gleicher Raum oder Gebäude) und in einem Netzwerk, das sonst nicht geladen wird.

Sie könnten mehrere hundert Euro oder US $ ausgeben, um eine 10Gbit/s-Ethernet-Karte zu kaufen. Sie benötigen zwei (eins auf jeder Seite). Und selbst solch ein schnelles Ethernet ist viel langsamer als Festplatte oder SSD ...

Keine Softwarelösung kann den Netzwerkengpass vermeiden. Eine standardmäßige, gut konfigurierte ftp-Verbindung kann das Netzwerk (innerhalb weniger Prozent) sättigen. Lokale Dateidaten sind oft in der page cache (so etwas mehr RAM könnte etwas Leistung helfen).

MPI ist in Ihrem Fall nicht relevant.

Wenn Sie es sich leisten können, kaufen Sie zwei 10 Gb/s-Ethernet-Karten und verwenden Sie SSDs. Software spielt keine große Rolle. Die Hardware ist der Flaschenhals.

PS. Natürlich sind sie Ausnahmen (z. B. Übertragen einer Datei auf einen Roboter auf dem Mars).Aber Sie müssen immer noch Ihre Einschränkungen in Ihrer Frage erklären.

+1

Ich stimme dieser Art der Vereinfachung nicht zu. Die Antwort trifft Annahmen, die nicht vom OP spezifiziert sind. Es gibt viele Fälle, in denen Software eine Rolle spielt. Betrachten Sie eine interkontinentale Dateiübertragung über einen 10 Gbit/s-Pfad, der Teil des Internets ist. Oder eine Dateiübertragung über eine HPC-Verbindung mit 128 Gbit/s. Oder eine Verbindung, die von Firewalls und Sicherheitsbeschränkungen durchsetzt ist. Oder eine sehr unzuverlässige Verbindung ... in all diesen Fällen ** Software zählt viel ** und 'ftp' wird es nicht schneiden. – Zulan

Verwandte Themen