PDA

View Full Version : Kvm e 64 Bit


Cobra78
28-07-2008, 15:31
Salve a tutti.

Per questioni di testing, esperimenti, comodità varie ho alcune macchine virtuali create usando KVM

Kvm emula sia architetture a 32 bit che a 64 bit (se l'OS Host è a 64 bit).

Attualmente l'unica macchina virtuale che ho a 64 Bit è una Debian Etch minimale che uso come Webserver per testing/demo con CMS vari.

Quello che mi chiedo è se ha senso quello che ho fatto.

Guardando /proc/cpuinfo il processore virtualizzato non supporta le varie sse2 etc etc, quindi di fatto il sistema è compilato con ottimizzazioni non presenti sull'hardware virtualizzato, la cosa è controproducente?

Mi conviene rifare tutto con sistema guesta a 32 bit o tutto sommato posso mantenere la situazione attuale senza averne particolari svantaggi.

Io penso la seconda, ma un consiglio da chi è più esperto non mi dispiacerebbe ;)

ilsensine
29-07-2008, 14:22
Guardando /proc/cpuinfo il processore virtualizzato non supporta le varie sse2 etc etc
Alquanto singolare, visto che il processore è...lo stesso.
L'utility cpuid (apt-gettabile) è dello stesso parere?

Cobra78
29-07-2008, 14:43
Ti sparo un po' di dati va.

marcello@vm-webserver:~$ cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 2
model name : QEMU Virtual CPU version 0.9.1
stepping : 3
cpu MHz : 1995.285
cache size : 2048 KB
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx lm up pni
bogomips : 3998.09
clflush size : 64
cache_alignment : 64
address sizes : 40 bits physical, 48 bits virtual
power management:


e questo l'output di cpuid

Vendor ID: "GenuineIntel"; CPUID level 2

Intel-specific functions:
Version 00000623:
Type 0 - Original OEM
Family 6 - Pentium Pro
Model 2 -
Stepping 3
Reserved 0

Extended brand string: "QEMU Virtual CPU version 0.9.1"
CLFLUSH instruction cache line size: 8

Feature flags 078bfbfd:
FPU Floating Point Unit
DE Debugging Extensions
PSE Page Size Extensions
TSC Time Stamp Counter
MSR Model Specific Registers
PAE Physical Address Extension
MCE Machine Check Exception
CX8 COMPXCHG8B Instruction
APIC On-chip Advanced Programmable Interrupt Controller present and enabled
SEP Fast System Call
MTRR Memory Type Range Registers
PGE PTE Global Flag
MCA Machine Check Architecture
CMOV Conditional Move and Compare Instructions
FGPAT Page Attribute Table
PSE-36 36-bit Page Size Extension
CLFSH CFLUSH instruction
MMX MMX instruction set
FXSR Fast FP/MMX Streaming SIMD Extensions save/restore
SSE Streaming SIMD Extensions instruction set
SSE2 SSE2 extensions

TLB and cache info:
7d: unknown TLB/cache descriptor
30: unknown TLB/cache descriptor
2c: unknown TLB/cache descriptor


E sto usando kvm, anche il modulo del kernel è correttamente caricato e in uso, tant'è che ho rpovato a rmmodarlo, e mi dice che non posso perchè appunto è utilizzato.

ilsensine
29-07-2008, 21:04
Guardando /proc/cpuinfo il processore virtualizzato non supporta le varie sse2 etc etc

marcello@vm-webserver:~$ cat /proc/cpuinfo
model name : QEMU Virtual CPU version 0.9.1
flags : fpu de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx lm up pni

Dov'è il problema, esattamente? :wtf:

Cobra78
29-07-2008, 22:10
Che pensavo alle sse3, ma ho scritto sse2 :P

Empyrium
29-07-2008, 22:43
E' normale, non ti preoccupare: è l'architettura di QEMU a funzionare così.

Non c'è bisogno di modificare la VM, non cambierebbe assolutamente nulla. Se proprio vuoi il massimo delle prestazioni, usa i driver PV... ma sappi che la stabilità ne risentirà un po' (sono ancora leggermente immaturi.

Cobra78
29-07-2008, 23:16
Alla fine non si tratta di un server virtuale vero e proprio da tenere always on, lo accendo solo per test o demo, quindi mi va benissimo com'è ora, la mia era poco più di una curiosità.

Piuttosto riesci a darmi qualche link su questi driver pv? Non penso li userò, ma sono comunque molto curioso, la virtualizzazione è un campo che mi affascina aprecchio :)

Edit: trovati, ma se non ho capito male sono driver per paravirtualizzare la scheda di rete sotto windows, e la macchina virtuale cui mi riferivo è una Debian :P

Empyrium
30-07-2008, 00:54
Ci sono sia per Windows, che per Linux (qui (http://sourceforge.net/project/downloading.php?group_id=180599&use_mirror=kent&filename=kvm-guest-drivers-linux-1.tar.gz&56216911)).

Cobra78
30-07-2008, 07:48
Ci sono sia per Windows, che per Linux (qui (http://sourceforge.net/project/downloading.php?group_id=180599&use_mirror=kent&filename=kvm-guest-drivers-linux-1.tar.gz&56216911)).

Non li avevo trovati allora, grazie mille :P