Sophie

Sophie

distrib > Mandriva > 9.1 > i586 > by-pkgid > f1098342ec4a2b28475e34123ce17201 > files > 1167

howto-html-it-9.1-0.5mdk.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
 <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
 <TITLE>Software-RAID HOWTO: Prestazioni</TITLE>
 <LINK HREF="Software-RAID-HOWTO-8.html" REL=next>
 <LINK HREF="Software-RAID-HOWTO-6.html" REL=previous>
 <LINK HREF="Software-RAID-HOWTO.html#toc7" REL=contents>
</HEAD>
<BODY>
<A HREF="Software-RAID-HOWTO-8.html">Avanti</A>
<A HREF="Software-RAID-HOWTO-6.html">Indietro</A>
<A HREF="Software-RAID-HOWTO.html#toc7">Indice</A>
<HR>
<H2><A NAME="s7">7. Prestazioni</A></H2>

<P>Questa parte contiene un certo numero di benchmark di un sistema reale che usa il software RAID.
<P>I benchmark sono stati fatti con il programma <CODE>Bonnie</CODE> e ogni volta con file grandi due o pi&ugrave; volte la dimensione della RAM fisica presente sulla macchina.
<P>I benchmark misurano <EM>solo</EM> la larghezza di banda (bandwidth) in ingresso e in uscita su un solo grande file. Questa &egrave; una cosa interessante da conoscere, se siamo interessati al massimo indice di trasferimento (throughput) per scritture/letture di grandi quantit&agrave; di dati.
In ogni caso, questi numeri ci dicono poco delle prestazioni dell'array se esso fosse usato come un "news spool", un web-server, ecc.
Teniamo sempre in mente, che i numeri dei benchmark sono il risultato dell'esecuzione di un programma ``sintetico''. Pochi dei programmi che appartengono alla vita reale fanno quello che fa <CODE>Bonnie</CODE> e, sebbene questi numeri di I/O siano interessanti da guardare, non sono indicativi delle prestazioni dei programmi reali. Non troppo almeno.
<P>Per ora ho solo i risultati ottenuti sulla mia macchina. Il sistema &egrave;:
<UL>
<LI>Doppio Pentium Pro 150 MHz</LI>
<LI>256 MB RAM (60 MHz EDO)</LI>
<LI>Tre IBM UltraStar 9ES 4.5 GB, SCSI U2W</LI>
<LI>Adaptec 2940U2W</LI>
<LI>Un IBM UltraStar 9ES 4.5 GB, SCSI UW</LI>
<LI>Adaptec 2940 UW</LI>
<LI>Kernel 2.2.7 con le RAID patch</LI>
</UL>
<P>I tre dischi U2W pianterebbero il controller U2W, and il disco UW ingolferebbe il controller UW.
<P>Sembra impossibile instradare pi&ugrave; di 30 MB/s di dati attraverso i bus SCSI del sistema usando o meno il RAID. Quello che credo &egrave; che, siccome il sistema &egrave; piuttosto vecchio, sia la banda passante della memoria a mancare, e questo limita quello che pu&ograve; essere inviato attraverso un controller SCSI.
<P>
<H2><A NAME="ss7.1">7.1 RAID-0</A>
</H2>

<P><B>La lettura</B> &egrave; un <B>"Sequential block input"</B>, e <B>la scrittura</B> &egrave; un <B>"Sequential block output"</B>. La dimensione del file &egrave; stata di 1 GB per tutti i test. I test sono stati fatti in modalit&agrave; singolo utente (single user). Il driver SCSI &egrave; stato configurato per non usare il "tagged command queuing".
<P>
<CENTER><TABLE BORDER><TR><TD>
<BR>
Chunk size </TD><TD> Block size </TD><TD> Read KB/s </TD><TD> Write KB/s </TD></TR><TR><TD>
</TD></TR><TR><TD>
4k </TD><TD> 1k </TD><TD> 19712 </TD><TD> 18035 </TD></TR><TR><TD>
4k </TD><TD> 4k </TD><TD> 34048 </TD><TD> 27061 </TD></TR><TR><TD>
8k </TD><TD> 1k </TD><TD> 19301 </TD><TD> 18091 </TD></TR><TR><TD>
8k </TD><TD> 4k </TD><TD> 33920 </TD><TD> 27118 </TD></TR><TR><TD>
16k </TD><TD> 1k </TD><TD> 19330 </TD><TD> 18179 </TD></TR><TR><TD>
16k </TD><TD> 2k </TD><TD> 28161 </TD><TD> 23682 </TD></TR><TR><TD>
16k </TD><TD> 4k </TD><TD> 33990 </TD><TD> 27229 </TD></TR><TR><TD>
32k </TD><TD> 1k </TD><TD> 19251 </TD><TD> 18194 </TD></TR><TR><TD>
32k </TD><TD> 4k </TD><TD> 34071 </TD><TD> 26976

</TD></TR></TABLE></CENTER>
<P>a questo, sembra che la dimensione del chunk non faccia molta differenza. Comunque, la dimensione del blocco dell'ext2fs dovrebbe essere pi&ugrave; grande possibile, quindi 4 KB (ovvero la dimensione della pagina) sui sistemi IA-32.
<P>
<H2><A NAME="ss7.2">7.2 RAID-0 con TCQ</A>
</H2>

<P>Questa volta il driver SCSI &egrave; stato configurato per utilizzare il "tagged command queuing", con una profondit&agrave; della coda di 8. Per il resto tutto come prima.
<P>
<CENTER><TABLE BORDER><TR><TD>
<BR>
Chunk size </TD><TD> Block size </TD><TD> Read KB/s </TD><TD> Write KB/s </TD></TR><TR><TD>
</TD></TR><TR><TD>
32k </TD><TD> 4k </TD><TD> 33617 </TD><TD> 27215

</TD></TR></TABLE></CENTER>
<P>Nessun altro test &egrave; stato fatto. TCQ sembra incrementare un poco le prestazioni in scrittura, ma in realt&agrave; non &egrave; che ci sia poi tutta questa differenza.
<P>
<H2><A NAME="ss7.3">7.3 RAID-5</A>
</H2>

<P>L'array &egrave; stato configurato per lavorare in modalit&agrave; RAID-5, dei test simili ai precedenti sono stati fatti.
<P>
<CENTER><TABLE BORDER><TR><TD>
<BR>
Chunk size </TD><TD> Block size </TD><TD> Read KB/s </TD><TD> Write KB/s </TD></TR><TR><TD>
</TD></TR><TR><TD>
8k </TD><TD> 1k </TD><TD> 11090 </TD><TD> 6874 </TD></TR><TR><TD>
8k </TD><TD> 4k </TD><TD> 13474 </TD><TD> 12229 </TD></TR><TR><TD>
32k </TD><TD> 1k </TD><TD> 11442 </TD><TD> 8291 </TD></TR><TR><TD>
32k </TD><TD> 2k </TD><TD> 16089 </TD><TD> 10926 </TD></TR><TR><TD>
32k </TD><TD> 4k </TD><TD> 18724 </TD><TD> 12627

</TD></TR></TABLE></CENTER>
<P>Ora, sia la dimensione del chunk che quella del blocco del filesystem sembrano effettivamente fare la differenza.
<P>
<H2><A NAME="ss7.4">7.4 RAID-10</A>
</H2>

<P>Un array RAID-10 &egrave; composto da ``mirrored stripes'', ovvero, un array RAID-1 di due array RAID-0. La chunk-size &egrave; la dimensione del chunk sia dell'array RAID-1 che di quello RAID-0. Non ho compiuto dei test nel caso in cui le due dimensioni del chunk differiscano, per quanto sia perfettamente lecito.
<P>
<CENTER><TABLE BORDER><TR><TD>
<BR>
Chunk size </TD><TD> Block size </TD><TD> Read KB/s </TD><TD> Write KB/s </TD></TR><TR><TD>
</TD></TR><TR><TD>
32k </TD><TD> 1k </TD><TD> 13753 </TD><TD> 11580 </TD></TR><TR><TD>
32k </TD><TD> 4k </TD><TD> 23432 </TD><TD> 22249

</TD></TR></TABLE></CENTER>
<P>Nessun altro test &egrave; stato fatto. La dimensione del file era 900MB, perch&eacute; le quattro partizioni coinvolte erano da 500 MB ognuna, il che non permetteva di avere spazio per un file da 1 GB in questa configurazione (RAID-1 su due array da 1000MB).
<P>
<P>
<HR>
<A HREF="Software-RAID-HOWTO-8.html">Avanti</A>
<A HREF="Software-RAID-HOWTO-6.html">Indietro</A>
<A HREF="Software-RAID-HOWTO.html#toc7">Indice</A>
</BODY>
</HTML>