VMware

Ein Ziel der transparenten Paravirtualisierung ist die Ausführung einer einzelnen binären Version des Betriebssystems entweder auf nativer Hardware oder auf einem Hypervisor im Paravirtualisierungsmodus. Dies bedeutet, dass die Unterstützung für Paravirtualisierungsschnittstellen in den Kern kompiliert wird und immer dann vorhanden ist, wenn der Kern auf nativer Hardware ausgeführt wird.

Die folgenden Performance-Daten wurden gesammelt, um die Performance-Auswirkungen der transparenten Paravirtualisierung bei Ausführung auf nativer Hardware zu ermitteln.

Über eine breite Palette von Makro-Benchmarks hinweg zeigen unsere Ergebnisse, dass dieser Performance-Überhang vernachlässigt werden kann.

Test-Einrichtung

Hardware: AMD Dual Core Opteron 270 (vier Kerne), 2,0 GHz, L2 1 MB, 64 KB L1, 5 GB RAM (nicht-PAE-Kern, nur 4 GB genutzt)

Kern:

  • Basis: Ubuntu 2.6.20-5.7-generisch
    • CONFIG_PARAVIRT nicht definiert, CONFIG_VMI nicht definiert
  • Paravirtualisierung: 2.6.20-rc6-ubuntu
    • CONFIG_PARAVIRT=y, CONFIG_VMI=y

Makro-Benchmarks

Bewertung in Sekunden, geringere Werte sind besser. Werte in Klammern stehen für den Durchsatz, höhere Werte sind besser, das Durchsatzverhältnis wird umgekehrt.

Workload

Baseline

Paravirt

Baseline/Paravirt

SpecJBB2005 1.04
(1P)

730.62
(score:9606)

730.98
(score:10424)

0.99
(1.08)

reAIM
(fserver)+

55.52

55.80

0.995

kernel compile
(1P, -j1)

380.45

391.425

0.972

kernel compile
(1P, -j2)

391.60

377.83

1.036

kernel compile
(2P, -j2)

204.075

204.555

0.997

kernel compile
(2P, -j8)

201.425

201.63

0.999

Ogg Encoding*

212.68

213.12

0.998

For SpecJBB2005 workload consider throughput numbers within the brackets as the runtime is fixed. Warehouse 1 was run twice-this is a non-compliant run.
* wave file of track length 48m 24s at 256kbps bitrate, 5 iterations, 1st iteration discarded.
+ fsever workload has been customized to run on tmpfs instead of regular fs.

CPU-Mikro-Benchmarks

Kernparameter: maxcpus=1

SPECPU 2006 verwendet gcc 4.1.2. Werte stehen für ermittelte Laufzeitschätzungen in Sekunden, geringere Werte sind besser. Werte in Klammern stehen für das geschätzte Basisverhältnis. Größere Verhältnisse sind besser. Der Test wurde ohne die erforderliche Kennungsdatei durchgeführt (inkompatibler Lauf).

Workload

Baseline

Paravirt

Baseline/Paravirt

perlbench

948 (10.3)

949 (10.3)

0.998

bzip2

1550 (6.22)

1560 (6.2)

0.993

gcc

913 (8.82)

913 (8.82)

1.000

mcf

1020 (8.91)

1030 (8.90)

0.990

gobmk

991 (10.6)

992 (10.6)

0.999

hmmer

1670 (5.58)

1670 (5.58)

1.000

sjeng

1320 (9.17)

1320 (9.19)

1.000

libquantum

2200 (9.41)

2200 (9.41)

1.000

h264ref

1980 (11.2)

1980 (11.2)

1.000

omnetpp

859 (7.28)

860 (7.27)

0.998

astar

1140 (6.18)

1140 (6.18)

1.000

xalancbmk

1100 (6.26)

1100 (6.26)

1.000



Kern-Mikro-Benchmarks

Kernparameter: maxcpus=1

Bewertung in Sekunden, geringere Werte sind besser.

Workload

Baseline

Paravirt

Baseline/Paravirt

divzero

2.75

3.16

0.87

getppid

0.93

0.94

0.98

segv

3.26

3.33

0.97

Lat_pipe

6.43

7.02

0.91

nforkwait

3.08

3.30

0.93

Switch

3.52

3.67

0.96

mmap 

205.21

210.96

0.97



E/A-Benchmarks

Client-Maschine: Dell 1600C P4 Xeon 2 x 2,4 GHz, 1 GB RAM, Win2K Professional SP4

Einrichtung: Das Client-System wird über ein Crossover-Kabel und Auto-Negotiating mit Gigabit-Verbindungsgeschwindigkeit mit dem Testsystem verbunden.

Kernparameter: maxcpus=1

Netperf

Standard: netperf -H $1 -l 60 -t TCP_STREAM -- -m 8192 -M 8192 -s 4096 -S 8192

Optimiert: netperf -H $1 -l 60 -t TCP_STREAM -- -m 8192 -M 8192 -s 32768 -S 65536

Werte stehen für den Durchsatz in Mbps, im Durchschnitt vier Läufe, höhere Werte sind besser.

Workload

Baseline

Paravirt

Paravirt/Baseline

send,default

418.10

416.16

0.995

send,tuned

932.42

926.33

0.993

recv, default

227.40

226.555

0.996

recv, tuned

945.11

944.78

0.999



IOMeter

IOMeter 2006_07_27-RC3, Ein Arbeits-Thread

Regulär (O_DIRECT)

Werte stehen für den Durchsatz in IOPS, höhere Werte sind besser. Werte in Klammern stehen für den Durchsatz in MBps.

Workload

Baseline

Paravirt

Paravirt/Baseline

4K sequential read

11823.98 (46.18)

12345.57 (48.22)

1.044

16K sequential read

4571.101 (71.43)

4576.95 (71.51)

1.001

32K sequential read

2331.338 (72.85)

2333.80 (72.93)

1.001

4K sequential write

11480.75 (44.84)

11842.80 (46.26)

1.031

16K sequential write

4008.865 (62.64)

4011.06 (62.67)

1.000

32K sequential write

1942.484 (60.70)

1946.50 (60.82)

1.002

4K random read

252.96 (0.98)

252.076 (0.98)

0.996

16K random read

242.577 (3.79)

242.098 (3.78)

0.998

32K random read

229.32 (7.16)

228.90 (72.15)

0.998

4K random write

841.58 (3.28)

842.54 (3.291)

1.001

16K random write

552.13 (8.62)

545.06 (8.51)

0.987

32K random write

626.61 (19.58)

626.41 (19.57)

0.999



3D-Benchmarks

System: Dell Precision 390, Intel Core 2 Duo 6400mit 2,13 GHz, 2 GB RAM, Nvidia Quadro NVS 285,

Distribution: Ubuntu Feisty Fawn Herd-3 Desktop i386, Nvidia-Treiber Build 1.0-9746.

Kern:

  • Basis: 2.6.20-rc6-ubuntu1
    • CONFIG_VMI nicht definiert, CONFIG_PARAVIRT nicht definiert
  • Paravirtualisierung: 2.6.20-rc6-ubuntu:
    • CONFIG_PARAVIRT=y, CONFIG_VMI=y,

Test: SPECviewperf-9.0.3

Werte stehen für Frames pro Sekunde (FPS), höhere Werte sind besser.

Workload

Baseline

Paravirt

Paravirt/Baseline

3dsmax-04

6.882

6.930

1.006

catia-02

8.860

8.843

0.998

ensight-03

4.648

4.638

0.997

light-08

9.047

9.052

1.000

maya-02

15.48

15.47

0.999

proe-04

7.139

7.122

0.997

sw-01

8.948

8.940

0.999

ugnx-01

1.085

1.083

0.998

tcvis-01

1.600

1.605

1.003

NVidia Quadro NVS is a business desktop class graphics card, scores are low


Mit Nvidia Geforce 7600GT:

Werte stehen für Frames pro Sekunde (FPS), höhere Werte sind besser.

Workload

Baseline

Paravirt

Paravirt/Baseline

3dsmax-04

10.77

10.67

0.990

catia-02

11.49

11.53

1.003

ensight-03

9.060

9.040

0.997

light-08

10.01

10.09

1.007

maya-02

28.64

28.64

1.000

proe-04

9.593

9.694

1.010

sw-01

17.29

17.34

1.002

ugnx-01

3.066

3.065

0.999

tcvis-01

3.918

3.918

1.000