Under Construction
Verwenden des NX (gzip) Accelerator mit xgzip
Die direkteste Möglichkeit den NX (gzip) Accelerator zu nutzen, ist über die Kommandos xgzip und xgunzip. Diese können über das Fileset xgzip.rte installiert werden. Das Fileset kann von der IBM Website AIX Web Download Pack Programs heruntergeladen werden.
Nach dem Download kann das Fileset ganz einfach mit „installp“ installiert werden:
# installp -acXYd xgzip.rte all
+-----------------------------------------------------------------------------+
Pre-installation Verification...
+-----------------------------------------------------------------------------+
Verifying selections...done
Verifying requisites...done
Results...
...
Installation Summary
--------------------
Name Level Part Event Result
-------------------------------------------------------------------------------
xgzip.rte 4.0.20.0 USR APPLY SUCCESS
#
Hinweis: Die Option “-Y” ist notwendig, da den Lizenzbestimmungen von IBM zugestimmt werden muss!
Bei der Installation werden automatisch Links unter /bin für die beiden Kommandos xgzip und xgunzip angelegt. Der Suchpfad der Shell muss daher nicht angepasst werden.
Um den Unterschied zwischen Komprimierung und Entkomprimierung mit, als auch ohne, Hardware Beschleunigung durch den NX (gzip) Accelerator zu ermitteln, haben wir eine ca. 1.5 GB große Test-Datei bereit gestellt:
$ ls -l file1.tar
-rw-r--r-- 1 user staff 1535078400 Mar 22 19:25 file1.tar
$
Die Datei wird für jeden Test einmal komprimiert und anschließend entkomprimiert. Dabei wird jeweils die Zeitdauer ermittelt. Es werden verschiedene Kompressionsstufen („-1“, „-5“ und „-9“) getestet. Hier ein Beispiellauf mit xgzip und xgunzip:
$ time xgzip -9 file1.tar
real 0m7.108s
user 0m0.191s
sys 0m1.683s
$ ls -l file1.tar.gz
-rw-r--r-- 1 user staff 1286050485 Mar 22 19:32 file1.tar.gz
$ time xgunzip file1.tar.gz
real 0m6.240s
user 0m0.630s
sys 0m1.338s
$
In der nachfolgenden Tabelle sind die Werte aller Tests aufgeführt:
| gzip -1 | xgzip -1 |
| gzip -5 | xgzip -5 |
| gzip -9 | xgzip -9 |
|
real | 0m54.576s | 0m5.277s | 10.34 | 1m9.851s | 0m5.132s | 13.61 | 1m36.966s | 0m5.147s | 18.84 |
user | 0m16.692s | 0m0.196s | 85.16 | 0m21.483s | 0m0.190s | 113.07 | 0m30.153s | 0m0.191s | 157.87 |
sys | 0m0.979s | 0m1.358s | 0.72 | 0m1.009s | 0m1.333s | 0.76 | 0m0.990s | 0m1.338s | 0.74 |
size | 1180456728 | 1286050485 |
| 1157685954 | 1286050485 |
| 1155742624 | 1286050485 |
|
| gunzip | xgunzip |
| gunzip | xgunzip |
| gunzip | xgunzip |
|
real | 0m17.745s | 0m6.229s | 2.85 | 0m18.763s | 0m6.298s | 2.98 | 0m17.403s | 0m6.235s | 2.79 |
user | 0m4.575s | 0m0.630s | 7.26 | 0m4.421s | 0m0.629s | 7.03 | 0m4.398s | 0m0.630s | 6.98 |
sys | 0m1.121s | 0m1.337s | 0.84 | 0m1.213s | 0m1.346s | 0.90 | 0m1.153s | 0m1.336s | 0.86 |
Was an den Werten für xgzip sofort auffällt, ist das die Zeitdauer für die Kompression unabhängig von der Optimierungsoption ist und dass die komprimierte Datei in allen Fällen gleich groß ist. Die Hardware-Kompression unterstützt also ganz offensichtlich nicht verschiedene Optimierungs-Level. Es gibt nur die Möglichkeit Hardware-Kompression zu verwenden oder nicht. Außerdem fällt auf das die Software-Kompression in allen Fällen eine höhere Komprimierung erzielt.
Der Unterschied zwischen xgzip und gzip ist in etwa eine 10 fach kürzere Laufzeit (Werte für Optimierungs-Level „-1“). Die Nutzung der CPU (user Mode) ist bei Software-Komprimierung in etwa 85 Mal so hoch wie mit Hardware-Komprimierung. D.h. die Hardware-Komprimierung ist deutlich schneller und verbraucht deutlich weniger CPU-Zeit. Allerdings geht dies zu Lasten der erreichten Komprimierung, diese ist bei Software-Kompression in etwas 10% höher (d.h. deutlich kleinere komprimierte Datei).