Wie kann die rsync-Ausführungszeit unter OmniOS (basierend auf illumos) verbessert werden?

Wie kann die rsync-Ausführungszeit unter OmniOS (basierend auf illumos) verbessert werden?

Ich teste illumos in einigen seiner Varianten, derzeit OmniOS.

Beim Benchmarking von E/A-gebundenen Prozessen fiel mir auf, dass diese rsyncim Vergleich zu meinem Referenzmodell FreeBSD 12-CURRENT deutlich langsamer waren.

Verwenden Sie die gleiche Hardware, den gleichen Befehl und die gleichen Quell- und Zielfestplatten:

In OmniOS r151026 habe ich gemessen,

test@omniosce:~# time rsync -aPt /zarc/images /home/test/

real    17m25.428s
user    28m33.792s
sys     2m46.217s

In FreeBSD 12-CURRENT:

test@freebsd:~ % time rsync -aPt /zarc/images /home/test/

374.651u 464.028s 11:30.63 121.4%   567+210k 791583+780083io 2pf+0w

(Beachten Sie, dass FreeBSD 12-CURRENT Debug-Schalter enthält und daher langsamer läuft als zukünftige RELEASE-Versionen).

  • Ich bemerkte, dass unter FreeBSD rsync3 Prozesse liefen, alle mit nice=0, zwei davonKonstant 50 bis 70 % der CPU-Zeit nutzen.

  • Unter OmniOS rsynclief es auch als 3 Prozesse, ebenfalls mit nice=0, aberjeweils nie mehr als 3%.

Ist die CPU-Auslastung der Grund, warum die Ausführungszeit auf derselben Hardware unter FreeBSD und illumos so unterschiedlich ist?

Wenn ja, nicewarum lässt illumos keine höhere CPU-Auslastung zu, da es auf beiden Betriebssystemen gleich war?

Wie könnte man rsyncdie Ausführungszeit auf einem auf illumos basierenden Betriebssystem verbessern?

Vielen Dank im Voraus.


02.06.2018 bearbeiten:

  • Präzisierte Frage, um sie spezifischer zu machen. Danke an @rui-f-ribeiro

  • Antwort an @roaima:

    1. Die Quell- und Zieldateisysteme sind beide lokale Festplatten
    2. Dies ist kein einmaliger Durchlauf für jedes Betriebssystem, ich habe diese rätselhafte Situation mit vielen Wiederholungen getestet
    3. Bei jedem Test stelle ich sicher, dass der Zielverzeichnisbaum vollständig frei von Dateien ist, die mit denen in der Quelle übereinstimmen.

Antwort1

Das Rätsel wurde endlich gelöst, indemOmniOS rsync auf 64-Bit umstellen und Optimierung aktivieren. Dadurch wird die Geschwindigkeit des Prüfsummencodes mehr als verdoppelt.

Bei exakt derselben Hardware ist rysnc unter OmniOS sogar etwas schneller als unter FreeBSD.

Vielen Dank an alle hier und danke an die hervorragenden OmniOS-Entwickler, die so schnell und umfassend geholfen haben.

verwandte Informationen