19.05.2013 Views

Facoltà di Ingegneria Tesi di laurea ANALISI DELLE TECNOLOGIE ...

Facoltà di Ingegneria Tesi di laurea ANALISI DELLE TECNOLOGIE ...

Facoltà di Ingegneria Tesi di laurea ANALISI DELLE TECNOLOGIE ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

sollecita la creazione e la <strong>di</strong>struzione dei processi, ed effettua in maniera intensiva operazioni<br />

delicate per la virtualizzazione (virtualization-sensitive operations, quali system calls, context<br />

switch, mo<strong>di</strong>fiche <strong>di</strong> page table, creazione <strong>di</strong> spazi <strong>di</strong> in<strong>di</strong>rizzamento), con conseguenti basse<br />

prestazioni rispetto all’esecuzione nativa. Infatti, misurando forkwait, l’host ha richiesto 6.0<br />

secon<strong>di</strong> per creare e <strong>di</strong>struggere 40000 processi; per effettuare le stesse operazioni, il software<br />

VMM ha impiegato 36.9 secon<strong>di</strong>, mentre l’hardware VMM ad<strong>di</strong>rittura 106.4 secon<strong>di</strong>.<br />

Per andare più nello specifico, i due ingegneri <strong>di</strong> VMware hanno scritto una serie <strong>di</strong><br />

“nanobenchmark”, ognuno dei quali testa la performance <strong>di</strong> una singola operazione<br />

virtualization-sensitive; spesso l’operazione è lunga una sola istruzione. Per avere un<br />

controllo preciso sul co<strong>di</strong>ce <strong>di</strong> esecuzione, hanno utilizzato un sistema operativo sviluppato da<br />

VMware per il test degli hypervisor, il FrobOS: questo OS si avvia, stabilisce un minimo<br />

ambiente <strong>di</strong> esecuzione per il co<strong>di</strong>ce C ed esegue una serie <strong>di</strong> operazioni virtualization-<br />

sensitive, ripetendo i test molte volte. I risultati sono visibili in figura; il gran numero <strong>di</strong> cicli<br />

eseguiti sulle operazioni richiede l’uso <strong>di</strong> una scala logaritmica.<br />

Figura 4.3: risultati dei nanobenchmarks<br />

Le operazioni eseguite in questo tipo <strong>di</strong> test sono:<br />

syscall. Questo test misura le transizioni user/supervisor level. Il software VMM<br />

introduce uno strato <strong>di</strong> co<strong>di</strong>ce e un’ulteriore transizione, richiedendo<br />

approssimativamente 2000 cicli in più <strong>di</strong> una system call nativa; nell’hardware VMM,<br />

71

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!