Fórum Ubuntu CZ/SK
Ostatní => Tipy a triky pro Linux => Téma založeno: nettezzaumana 11 Září 2008, 17:31:14
-
ahoj ..
dnes jsem v praci testoval rychlost zapichu na ruzna zarizeni (disk, disk v raidu, flash) na nekolika zarizenich .. zkuste to taky ;)
postup ::
a) vlezte do adresare kam je pripojeno dane zarizeni (aka cd /tmp // pro root disk, cd /media/disk // pro flashku) ..
b) spustte prikaz ::
time (dd if=/dev/zero of=xx.file bs=1048576 count=1000 && sync) // vytvori v aktualnim adresari soubor xx.file o velikosti 1 gb a vypise nejake info o prubehu
z toho se dale (viz. nize) spocitaji vysledky rychlosti zapisu na disk ..
vysledky jsou u me ::
29Mb/sec na sata 5400rpm 2.5" na disk v ntb // vysledky se mohou lisit dle velikosti blocksize (bs) a filesystemu
12Mb/sec na usb 2.0 flash na tom samem ntb
67Mb/sec na SAS 10000rpm 2.5" na Solaris T5240 serveru
119Mb/sec na SAS 10000rpm 2.5" na Solaris T5240 serveru na RAID+0
Z nasledujiciho vypisu z meho terminalu je naprosto patrne, jak jsem provadel jednotlive testovani ..
nettezzaumana@kokina:/tmp> time (dd if=/dev/zero of=xx.file bs=1048576 count=1000 && sync)
1000+0 records in
1000+0 records out
1048576000 bytes (1.0 GB) copied, 31.074 s, 33.7 MB/s
real 0m34.745s
user 0m0.004s
sys 0m10.569s
nettezzaumana@kokina:/tmp> du -m xx.file
1001 xx.file
nettezzaumana@kokina:/tmp> perl -e 'print 1001 / 34.745 ." Mb\\sec\n";'
28.8099007051374 Mb\sec
timto zpusobem lze otestovat i napriklad propustnost site pomoci nejakeho trivialniho protokolu aka NFSv3, kdy mereni provedeme v pripojenem odresari pres NFS, stejne jako porovnat propustnost na jinych protokolech aka CIFS, FTP aj ..
dale napr. pri pouziti /dev/urandom lze dosahnout pomerne transparentniho benchmarku cpu aka ::
time dd if=/dev/urandom of=/dev/null bs=1048576 count=1000
stejne jako lze opet pomerne hezky transparentne otestovat propustnost sbernice FSB aka ::
time dd if=/dev/zero of=/dev/null bs=1048576 count=1000
ps. muj ntb s AMD Turion(tm) 64 X2 Mobile Technology TL-52 se dostane na
real 4m58.358s // pri benchmarku cpu pomoci /dev/urandom
real 0m1.368s // pri benchmarku propustnosti sbernice via /dev/zero (770Mb/sec)
pps. kdo mate vice nez 1Gb ram muzete provest tento test do vytvoreneho ramdisku .. postnete sem potom prosim vysledek, docela by me zajimal
ppps. rychlost cteni je jasna .. akorat se do if da xx.file a of=/dev/null a vypusti se sync
pppps. stejnym zpusobem lze otestovat treba cteni/zapis Vasi opticke mechaniky (bude neco jako /dev/hdc)
zdravi ntz ;)
-
ps. propustnost sbernice asi bude lepsi otestovat na nejakem vetsim celku aka na 100Gb, stejne jako /dev/urandom asi netreba smazit do 1Gb bloku ::
nettezzaumana@kokina:~/Documents> time dd if=/dev/zero of=/dev/null bs=1048576 count=100000
100000+0 records in
100000+0 records out
104857600000 bytes (105 GB) copied, 71.4543 s, 1.5 GB/s
real 1m11.459s
user 0m0.080s
sys 1m11.224s
nettezzaumana@kokina:~/Documents> time dd if=/dev/urandom of=/dev/null bs=1048576 count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 29.7983 s, 3.5 MB/s
real 0m29.803s
user 0m0.000s
sys 0m29.802s
ad.1) docela by me zajimalo, jak jsou na tom na stejnem zeleze ruzne verze kernelu (neb quejky mi onehda vypravel, jak je 2.6.25+ 2x rychlejsi nez kernel < 2.6.25 ..)
-
70 MB/s na WD Green Power 500 GB SATA s ext3
30 MB/s na externím USB WD MyBook Essential s ext3
Zkusím si vytvořit ramdisk a uvidím jak půjde ten.
Edit: Tak jsem vytvořil 2 GB ramdisk na A-Data Vitesta EE 800+ MHz, chipset AMD 780G.
V KDE to kolísá cca 200-420 MB/s, při nabootování v recovery a dropnutí do shellu je to stabilně 450 MB/s
-
ntz: hele a ten speed, co ti pise dd - je prumernej, nebo top.... protoze kdyby byl prumernej, nemuselo by se to pocitat ne?
-
ntz: hele a ten speed, co ti pise dd - je prumernej, nebo top.... protoze kdyby byl prumernej, nemuselo by se to pocitat ne?
<< rekl bych prumernej .. sak to zkus ne .. a misto planejch kecu radsi uved kofiguraci a vystup z ::
time dd if=/dev/zero of=/dev/null bs=1048576 count=100000
time dd if=/dev/urandom of=/dev/null bs=1048576 count=100
;)
-
:~$ time dd if=/dev/zero of=/dev/null bs=1048576 count=100000
100000+0 záznamov prečítaných
100000+0 záznamov zapísaných
104857600000 skopírovaných bajtov (105 GB), 69,4231 s, 1,5 GB/s
real 1m9.432s
user 0m0.084s
sys 1m8.508s
:~$ time dd if=/dev/urandom of=/dev/null bs=1048576 count=100
100+0 záznamov prečítaných
100+0 záznamov zapísaných
104857600 skopírovaných bajtov (105 MB), 26,8295 s, 3,9 MB/s
real 0m26.843s
user 0m0.000s
sys 0m26.758s
Asus F3KE-AP056
Pri tom teste cpu tam boli dost velke vypadky medzi a pri prepinani jadier, aspon podla screenlets.
-
truhlik@ubuntu-laptop:~$ time dd if=/dev/zero of=/dev/null bs=1048576 count=100000
100000+0 records in
100000+0 records out
104857600000 bytes (105 GB) copied, 5.20016 seconds, 20.2 GB/s
real 0m5.204s
user 0m0.036s
sys 0m5.148s
truhlik@ubuntu-laptop:~$ time dd if=/dev/urandom of=/dev/null bs=1048576 count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 25.5711 seconds, 4.1 MB/s
real 0m25.575s
user 0m0.004s
sys 0m25.210s
Ten prvni vysledek je nejak podezrele dobrej, az se mi to nezda.
ASUS F3Js, Intel C2D T5600, 1GB RAM, Ubuntu 7.10 - 2.6.22-15
-
radek@PC1:~$ time dd if=/dev/zero of=/dev/null bs=1048576 count=100000
100000+0 vstoupivších záznamů
100000+0 vystoupivších záznamů
104 857 600 000 bajtů (105 GB) zkopírováno, 68,7185 s, 1,5 GB/s
real 1m8.748s
user 0m0.100s
sys 1m5.876s
radek@PC1:~$ time dd if=/dev/urandom of=/dev/null bs=1048576 count=100
100+0 vstoupivších záznamů
100+0 vystoupivších záznamů
104 857 600 bajtů (105 MB) zkopírováno, 30,6549 s, 3,4 MB/s
real 0m30.659s
user 0m0.000s
sys 0m29.626s
radek@PC1:~$
AMD64 3000+, 2x512 RAM, Ubuntu 8,04
-
Tak pro zajímavost jeden starší šrot: P III 866 MHz, 384 MB RAM, HH 8.04, 2.6.24-19
jirka@ubuntu:~$ time dd if=/dev/zero of=/dev/null bs=1048576 count=1000
1000+0 vstoupivších záznamů
1000+0 vystoupivších záznamů
1 048 576 000 bajtů (1,0 GB) zkopírováno, 5,68723 s, 184 MB/s
real 0m5.697s
user 0m0.028s
sys 0m5.492s
jirka@ubuntu:~$ time dd if=/dev/urandom of=/dev/null bs=1048576 count=10
10+0 vstoupivších záznamů
10+0 vystoupivších záznamů
10 485 760 bajtů (10 MB) zkopírováno, 7,62621 s, 1,4 MB/s
real 0m7.636s
user 0m0.004s
sys 0m7.472s
jirka@ubuntu:~$
-
zuzka@X2:/tmp$ time (dd if=/dev/zero of=xx.file bs=1048576 count=1000 && sync)
1000+0 záznamov prečítaných
1000+0 záznamov zapísaných
1048576000 skopírovaných bajtov (1,0 GB), 33,0222 s, 31,8 MB/s
real 0m34.591s
user 0m0.000s
sys 0m4.632s
zuzka@X2:/tmp$
-
ntz, ok tak nekecam a posilam: :P
c2duo t5250 @ 1500MHz, 3GB RAM, Seagate Momentus 5400.3 SATA, komp v podpisu... trosku sem pri tom sefoval a delal blbosti, ale to asi takovou roli nehraje... Kubuntu 8.04.1
starenka@kosmik1:~$ time (dd if=/dev/zero of=xx.file bs=1048576 count=1000 && sync)
1000+0 records in
1000+0 records out
1048576000 bytes (1.0 GB) copied, 28.9916 s, 36.2 MB/s
real 0m31.781s
user 0m0.012s
sys 0m5.684s
starenka@kosmik1:~$ time dd if=/dev/urandom of=/dev/null bs=1048576 count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 28.8507 s, 3.6 MB/s
real 0m28.858s
user 0m0.000s
sys 0m28.662s
starenka@kosmik1:~$ time dd if=/dev/zero of=/dev/null bs=1048576 count=100000
100000+0 records in
100000+0 records out
104857600000 bytes (105 GB) copied, 20.548 s, 5.1 GB/s
real 0m20.554s
user 0m0.052s
sys 0m20.401s
starenka@kosmik1:~$ uname -a
Linux kosmik1 2.6.24-19-generic #1 SMP Wed Aug 20 22:56:21 UTC 2008 i686 GNU/Linux
-
... trosku sem pri tom sefoval a delal blbosti, ale to asi takovou roli nehraje...
Kdyby ses u toho tak neklepal, tak bys měl lepší výsledky.
-
Toshiba T5500/1.66GHz, 2GB RAM, HDD SATA 120GB...
pepe999@pepe999-laptop:/tmp$ time (dd if=/dev/zero of=xx.file bs=1048576 count=1000 && sync)
1000+0 records in
1000+0 records out
1048576000 bytes (1.0 GB) copied, 31.6959 s, 33.1 MB/s
real 0m38.712s
user 0m0.008s
sys 0m4.188s
pepe999@pepe999-laptop:/tmp$ time dd if=/dev/urandom of=/dev/null bs=1048576 count=1000
1000+0 records in
1000+0 records out
1048576000 bytes (1.0 GB) copied, 258.011 s, 4.1 MB/s
real 4m18.014s
user 0m0.012s
sys 4m17.700s
pepe999@pepe999-laptop:/tmp$ time dd if=/dev/zero of=/dev/null bs=1048576 count=100000
100000+0 records in
100000+0 records out
104857600000 bytes (105 GB) copied, 17.3544 s, 6.0 GB/s
real 0m17.359s
user 0m0.036s
sys 0m17.301s
-
hmm .. koukam ze me dvoujadrove amd opravdu nejni proti intelu nejaky rychlik ..
-
debian@debian-desktop:~$ cd /media/sdb5
debian@debian-desktop:/media/sdb5$ time (dd if=/dev/zero of=xx.file bs=1048576 count=1000 && sync)
1000+0 vstoupivších záznamů
1000+0 vystoupivších záznamů
1 048 576 000 bajtů (1,0 GB) zkopírováno, 23,3456 s, 44,9 MB/s
real 0m24.195s
user 0m0.008s
sys 0m2.396s
debian@debian-desktop:/media/sdb5$ time dd if=/dev/urandom of=/dev/null bs=1048576 count=1000
1000+0 vstoupivších záznamů
1000+0 vystoupivších záznamů
1 048 576 000 bajtů (1,0 GB) zkopírováno, 194,78 s, 5,4 MB/s
real 3m14.782s
user 0m0.004s
sys 3m6.356s
debian@debian-desktop:/media/sdb5$ time dd if=/dev/zero of=/dev/null bs=1048576 count=1000
1000+0 vstoupivších záznamů
1000+0 vystoupivších záznamů
1 048 576 000 bajtů (1,0 GB) zkopírováno, 0,630561 s, 1,7 GB/s
real 0m0.633s
user 0m0.004s
sys 0m0.628s
debian@debian-desktop:/media/sdb5$
sestava athlon 64 3500+ single-core, 1GB RAM
disky Seagate, jeden IDE, dva SATA, 7200rpm
-
sol10-nb:/tmp # time dd if=/dev/zero of=/dev/null bs=1048576 count=100000
100000+0 records in
100000+0 records out
104857600000 bytes (105 GB) copied, 65.9059 s, 1.6 GB/s
real 1m5.914s
user 0m0.120s
sys 1m1.972s
sol10-nb:/tmp # time dd if=/dev/urandom of=/dev/null bs=1048576 count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 35.9165 s, 2.9 MB/s
real 0m35.919s
user 0m0.004s
sys 0m33.822s
sol10-nb:/tmp # cat /proc/cpuinfo | grep model
model : 6
model name : Intel(R) Celeron(R) D CPU 3.06GHz
<< jaktoze je tenhle intel pomalejsi nez moje amd?
-
t5240:/opt/OV/tomcat/jakarta-tomcat-4.0.4/bin# time dd if=/dev/zero of=/dev/null bs=1048576 count=100000
100000+0 records in
100000+0 records out
real 0m36.308s
user 0m0.404s
sys 0m35.905s
t5240:/opt/OV/tomcat/jakarta-tomcat-4.0.4/bin# time dd if=/dev/urandom of=/dev/null bs=1048576 count=100
0+100 records in
0+100 records out
real 0m0.038s
user 0m0.003s
sys 0m0.036s
t5240:/opt/OV/tomcat/jakarta-tomcat-4.0.4/bin#
<< hmm. 16ti procesorovej server od sunu za ctvrt mega
-
Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz
CPU:
time dd if=/dev/urandom of=/dev/null bs=1048576 count=1000
1000+0 records in
1000+0 records out
1048576000 bytes (1,0 GB) copied, 145,434 s, 7,2 MB/s
real 2m25.449s
user 0m0.010s
sys 2m25.430s
FSB:
time dd if=/dev/zero of=/dev/null bs=1048576 count=1000
1000+0 records in
1000+0 records out
1048576000 bytes (1,0 GB) copied, 0,144593 s, 7,3 GB/s
real 0m0.148s
user 0m0.000s
sys 0m0.150s
-
nazdar DuckD .. dlouho jsem Te nevidel skodit na zdejsim webu ;) .. nicmene oprav svuj prispevek vystupem z ::
time dd if=/dev/zero of=/dev/null bs=1048576 count=100000
time dd if=/dev/urandom of=/dev/null bs=1048576 count=100
.. a ne z toho, co jsi poslal ;)
zdravi ntz
-
Deska: Intel S5000PSLSASR, 2x Xeon 5410, 2x 3,5" SAS 15000 rpm HDD v LVM nad sw Raid 1
mkiklhorn@astra:/tmp$ time (dd if=/dev/zero of=xx.file bs=1048576 count=1000 && sync)
1000+0 records in
1000+0 records out
1048576000 bytes (1.0 GB) copied, 8.09101 s, 130 MB/s
real 0m10.715s
user 0m0.000s
sys 0m2.564s
mkiklhorn@astra:/tmp$ time dd if=/dev/urandom of=/dev/null bs=1048576 count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 16.3229 s, 6.4 MB/s
real 0m16.325s
user 0m0.000s
sys 0m16.325s
mkiklhorn@astra:/tmp$ time dd if=/dev/zero of=/dev/null bs=1048576 count=100000
100000+0 records in
100000+0 records out
104857600000 bytes (105 GB) copied, 9.97202 s, 10.5 GB/s
real 0m9.974s
user 0m0.016s
sys 0m9.965s
mkiklhorn@astra:/tmp$ uname -a
Linux astra 2.6.24-1-amd64 #1 SMP Sat May 10 09:28:10 UTC 2008 x86_64 GNU/Linux
mkiklhorn@astra:/tmp$
mkiklhorn@astra:/tmp$ cat /proc/cpuinfo | grep model
model : 23
model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz
model : 23
model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz
model : 23
model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz
model : 23
model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz
model : 23
model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz
model : 23
model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz
model : 23
model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz
model : 23
model name : Intel(R) Xeon(R) CPU E5410 @ 2.33GHz
// upraven popis sestavy
-
4 kikihorn :: hmm .. jak jsem drive psal, zajimavej kousek HW .. co to je za masinu a k cemu slouzi?
-
bash-3.2# time (dd if=/dev/zero of=xx.file bs=1048576 count=1000 && sync)
1000+0 vstoupivších záznamů
1000+0 vystoupivších záznamů
1 048 576 000 bajtů (1,0 GB) zkopírováno, 24,0976 s, 43,5 MB/s
real 0m25.409s
user 0m0.007s
sys 0m2.070s
bash-3.2# time dd if=/dev/urandom of=/dev/null bs=1048576 count=100
100+0 vstoupivších záznamů
100+0 vystoupivších záznamů
104 857 600 bajtů (105 MB) zkopírováno, 12,0129 s, 8,7 MB/s
real 0m12.016s
user 0m0.003s
sys 0m12.013s
bash-3.2# time dd if=/dev/zero of=/dev/null bs=1048576 count=100000
100000+0 vstoupivších záznamů
100000+0 vystoupivších záznamů
104 857 600 000 bajtů (105 GB) zkopírováno, 7,29311 s, 14,4 GB/s
real 0m7.296s
user 0m0.017s
sys 0m7.270s
bash-3.2#
sestava viz. nize
-
4 kiklhorn :: hmm .. jak jsem drive psal, zajimavej kousek HW .. co to je za masinu a k cemu slouzi?
Mám tři tyhle kousky (4U rack, cena bez zdrojů @40.000,-). Měly by nahradit dvě staré P4 (klasické PC) s MS 2003 doménou (AD, dns, file, print, exchange, IIS, SharePoint, MSSQL)
Staré P4 jsem rošiřoval o HW raidy s pár TB kapacity, takže ty skončí jako iSCSI targety.
Na jeden nový přijde MS - Exchange, SharePoint, MSSQL (bohužel jsou nakoupené licence, jinak bych raději kupoval linuxový PostPath (http://www.postpath.com/))
Na druhý Linux - Bind, FreeRadius, Samba, Asterisk, Jabber, MySQL, Apache
Třetí se mi snad podaří ještě rozšířit o nějakou RAM a budu se snažit o virtualizaci (asi XEN) s tím že bych rád kombinaci MS + OSS.
Samozřejmě že se rozvržení může změnit - závisí na výkonu, kritický bude Asterisk a Exchange a také uvidím jak se osvědčí virtualizace.
-
ukate vystup z nasledujiciho .. cele to cutnete a pastnete do terminalu ;)
cat << EOF >version-check.sh
#!/bin/bash
export LC_ALL=C
# Simple script to list version numbers of critical development tools
bash --version | head -n1 | cut -d" " -f2-4
echo "/bin/sh -> `readlink -f /bin/sh`"
echo -n "Binutils: "; ld --version | head -n1 | cut -d" " -f3-
bison --version | head -n1
if [ -e /usr/bin/yacc ]; then echo "/usr/bin/yacc -> `readlink -f /usr/bin/yacc`";
else echo "yacc not found"; fi
bzip2 --version 2>&1 < /dev/null | head -n1 | cut -d" " -f1,6-
echo -n "Coreutils: "; chown --version | head -n1 | cut -d")" -f2
diff --version | head -n1
find --version | head -n1
gawk --version | head -n1
if [ -e /usr/bin/awk ]; then echo "/usr/bin/awk -> `readlink -f /usr/bin/awk`";
else echo "awk not found"; fi
gcc --version | head -n1
/lib/libc.so.6 | head -n1 | cut -d" " -f1-7
grep --version | head -n1
gzip --version | head -n1
cat /proc/version
make --version | head -n1
patch --version | head -n1
sed --version | head -n1
tar --version | head -n1
makeinfo --version | head -n1
EOF
bash version-check.sh
u me :
> bash version-check.sh
bash, version 3.2.39(1)-release
/bin/sh -> /bin/bash
Binutils: (GNU Binutils; openSUSE 11.0) 2.18.50.20080409-11.1
bison (GNU Bison) 2.3
/usr/bin/yacc -> /usr/bin/yacc
bzip2, Version 1.0.5, 10-Dec-2007.
Coreutils: 6.11
diff (GNU diffutils) 2.8.7-cvs
find (GNU findutils) 4.4.0
GNU Awk 3.1.5h
/usr/bin/awk -> /bin/gawk
gcc (SUSE Linux) 4.3.1 20080507 (prerelease) [gcc-4_3-branch revision 135036]
GNU C Library stable release version 2.8
GNU grep 2.5.2
gzip 1.3.12
Linux version 2.6.25.16-0.1-pae (geeko@buildhost) (gcc version 4.3.1 20080507 (prerelease) [gcc-4_3-branch revision 135036] (SUSE Linux) ) #1 SMP 2008-08-21 00:34:25 +0200
GNU Make 3.81
patch 2.5.9
GNU sed version 4.1.5
tar (GNU tar) 1.19
makeinfo (GNU texinfo) 4.11
-
debian@debian-desktop:~$ bash version-check.sh
bash, version 3.2.39(1)-release
/bin/sh -> /bin/bash
Binutils: (GNU Binutils for Debian) 2.18.0.20080103
bison (GNU Bison) 2.3
/usr/bin/yacc -> /usr/bin/bison.yacc
bzip2, Version 1.0.5, 10-Dec-2007.
Coreutils: 6.10
diff (GNU diffutils) 2.8.1
find (GNU findutils) 4.4.0
GNU Awk 3.1.5
/usr/bin/awk -> /usr/bin/gawk
gcc (Debian 4.3.1-9) 4.3.1
GNU C Library stable release version 2.7,
GNU grep 2.5.3
gzip 1.3.12
Linux version 2.6.26-1-amd64 (Debian 2.6.26-4) (waldi@debian.org) (gcc version 4.1.3 20080623 (prerelease) (Debian 4.1.2-23)) #1 SMP Thu Aug 28 11:13:42 UTC 2008
GNU Make 3.81
patch 2.5.9
GNU sed version 4.1.5
tar (GNU tar) 1.20
makeinfo (GNU texinfo) 4.11
debian@debian-desktop:~$
-
[slamik@myhost ~]$ bash version-check.sh
bash, version 3.2.39(1)-release
/bin/sh -> /bin/bash
Binutils: (GNU Binutils) 2.18.0.20080610
bison (GNU Bison) 2.3
/usr/bin/yacc -> /usr/bin/yacc
bzip2, Version 1.0.5, 10-Dec-2007.
Coreutils: 6.12
diff (GNU diffutils) 2.8.1
find (GNU findutils) 4.4.0
GNU Awk 3.1.6
awk not found
gcc (GCC) 4.3.2
GNU C Library stable release version 2.8,
GNU grep 2.5.3
gzip 1.3.12
Linux version 2.6.26-ARCH (root@T-POWA-LX) (gcc version 4.3.2 (GCC) ) #1 SMP PREEMPT Tue Sep 9 09:56:28 UTC 2008
GNU Make 3.81
patch 2.5.9
GNU sed version 4.1.5
tar (GNU tar) 1.20
makeinfo (GNU texinfo) 4.13
-
4quejky :: haha .. az na jeden pripad to pokud nemame stejny, tak mam novejsi verze .. njn. i ten debian testing laguje ;)
4*buntaci :: no .. vy to zase mate trocha novejsi temer vse nez ja
-
no mě nevadí že to mám starší pokud to funguje 8)
a vzhledem k tomu, že jsem zatím neměl jediný problém, mi nevadí, že mám od některých věcí trošku starší verze..
-
[palo@localhost ~]$ bash version-check.sh
bash, version 3.2.19(2)-release
/bin/sh -> /bin/bash
Binutils: version-check.sh: line 8: ld: command not found
version-check.sh: line 9: bison: command not found
yacc not found
bzip2, Version 1.0.5, 10-Dec-2007.
Coreutils: 6.10
diff (GNU diffutils) 2.8.7
GNU find version 4.2.33
GNU Awk 3.1.5
/usr/bin/awk -> /bin/gawk
version-check.sh: line 19: gcc: command not found
GNU C Library stable release version 2.7,
GNU grep 2.5.3
gzip 1.3.12
Linux version 2.6.24.7-desktop-1mnb (qateam@titan.mandriva.com) (gcc version 4.2.3 (4.2.3-6mnb1)) #1 SMP Mon Jul 28 15:12:10 EDT 2008
version-check.sh: line 24: make: command not found
patch 2.5.9
GNU sed version 4.1.5
tar (GNU tar) 1.19
version-check.sh: line 28: makeinfo: command not found
[palo@localhost ~]$
nieco tam asi hapruje... :(
-
II včetně dnešních aktualizací
xenie@san1:~# uname -a
Linux san1 2.6.27-6-server #1 SMP Tue Oct 7 05:00:08 UTC 2008 i686 GNU/Linux
xenie@san1:~# bash version-check.sh
bash, version 3.2.39(1)-release
/bin/sh -> /bin/dash
Binutils: (GNU Binutils for Ubuntu) 2.18.93.20081009
bison (GNU Bison) 2.3
/usr/bin/yacc -> /usr/bin/yacc
bzip2, Version 1.0.5, 10-Dec-2007.
Coreutils: 6.10
diff (GNU diffutils) 2.8.1
find (GNU findutils) 4.4.0
GNU Awk 3.1.6
/usr/bin/awk -> /usr/bin/mawk
gcc (Ubuntu 4.3.2-1ubuntu10) 4.3.2
GNU C Library development release version 2.8.90,
GNU grep 2.5.3
gzip 1.3.12
Linux version 2.6.27-6-server (buildd@palmer) (gcc version 4.3.2 (Ubuntu 4.3.2-1ubuntu9) ) #1 SMP Tue Oct 7 05:00:08 UTC 2008
GNU Make 3.81
patch 2.5.9
GNU sed version 4.1.5
tar (GNU tar) 1.20
makeinfo (GNU texinfo) 4.11
-
test na starém P4 (HT) - disk je super rychlý na to že jdu proti iSCSI na PC s jen 100mbit síťovkou
root@asterisk:/mnt/testdisk# time (dd if=/dev/zero of=xx.file bs=1048576 count=1000 && sync)
1000+0 records in
1000+0 records out
1048576000 bytes (1,0 GB) copied, 87,0218 s, 12,0 MB/s
real 1m31.048s
user 0m0.000s
sys 0m6.110s
root@asterisk:/mnt/testdisk# time dd if=/dev/urandom of=/dev/null bs=1048576 count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 23,8612 s, 4,4 MB/s
real 0m23.892s
user 0m0.010s
sys 0m23.860s
root@asterisk:/mnt/testdisk# time dd if=/dev/zero of=/dev/null bs=1048576 count=100000
100000+0 records in
100000+0 records out
104857600000 bytes (105 GB) copied, 20,5372 s, 5,1 GB/s
real 0m20.540s
user 0m0.030s
sys 0m20.510s
root@asterisk:/mnt/testdisk# uname -a
Linux asterisk.vu2508.cz 2.6.24-19-server #1 SMP Wed Aug 20 23:54:28 UTC 2008 i686 GNU/Linux
root@asterisk:/mnt/testdisk# cat /proc/cpuinfo | grep model
model : 4
model name : Intel(R) Pentium(R) 4 CPU 3.00GHz
model : 4
model name : Intel(R) Pentium(R) 4 CPU 3.00GHz
root@asterisk:/mnt/testdisk#
//edit:
a ještě PC s gigovou síťovkou
alfa:/mnt/testdisk# time (dd if=/dev/zero of=xx.file bs=1048576 count=1000 && sync)
1000+0 records in
1000+0 records out
1048576000 bytes (1.0 GB) copied, 2.02291 seconds, 518 MB/s
real 0m15.707s
user 0m0.000s
sys 0m2.420s
alfa:/mnt/testdisk# du -m xx.file
1001 xx.file
alfa:/mnt/testdisk# perl -e 'print 1001 / 15.707 ." Mb\\sec\n";'
63.7295473355829 Mb\sec
na tomhle vidím jak šílený je IP stack ve Windows kde se proti stejnému targetu při opakovaných testech pohybuji v rozmezí 27-36MB/s
Target je 2x Raptor WD74 v SW Raid1, nad tím LVM a nad tím IET iSCSI vrstva a formátovaný ext3.
-
A když jsme u toho měření rychlosti - prokletí mého HW raid řadiče LSI MegaRAID SATA 300-8X
Zkusil jsem si udělat další target s sedmi disky v HW raid5 na uvedeném řadiči (koupen někdy na přelomu 2004/2005, dnes v cenících kolem 10.000,-). Při měření jsem se dostával pouze na jednotky MB/s (Raid 1 je OK, viz minulý příspěvek) a začal jsem hledat kde může být chyba.
HW raid 5 jsem zrušil, vytvořil jsem na úrovni řadiče 7x samostatný logický disk a následně jsem z nich vytvořil softwarový Raid 6
Zápis na SW Raid 6 více než desetinásobně rychlejší (81MB/s) oproti HW Raid 5.
Chtěl jsem také otestovat chování při chybách disků tak jsem jeden z disků dočasně odpojil a znovu připojil abych dostal rozsynchronizované pole, v průběhu synchronizace jsem odpojil jiný disk - takže se pole nachází ve stavu
Active & degraded & recovering & synchronizing - a na tomto jsem opět spustil test. 35 MB/s
Zatížení procesoru (HT P4/3GHz) se v tomto stavu osciluje kolem 90% (počítá toho celkem dost - stav pole a je to raid 6)
Následně jsem našel testy tohoto řadiče, jeho XOR procesor hrubě nestíhá ani při nedegradovaném raid 5.
testy zde: http://www.xbitlabs.com/articles/storage/display/lsi-megaraid300-8x_20.html
Takže ne vždy se dá věřit údajům výrobce a ne vždy je HW Raid výhrou.
-
4 kikihorn .. hmm .. mas opravdu po vsech smerech pozoruhodne kousky zeleza ;)
ad.1) zkousel jsem to delat ve vice vlaknech (teda ty propustnosti sbernic a hlavne proc) a tam jsou vysledky taky pomerne zajimave ..
na x86 pod linuxem ve 20ti vlaknech jsem to co normalne v jednom trva minutu asi po pul hodine musel pozabijet .. totalni konec ..
na sparcu (t5240) na Solarisu to same probehlo asi s 20% spozdenim, pricemz jedno vlakno melo vykonovy pokles asi o pouhych 10% ..
ps. delal jsem to takhle ::
time for ((x=0;x<20;x++)) { foo() &; } // pricemz ve foo() jsem si jeste jednotlive cykly logoval pomoci `tee` i zvlast
-
Linux alfa 2.6.18.8-xen #1 SMP Tue Sep 30 07:53:31 CEST 2008 x86_64 GNU/Linux
Mám osm jader, udělám si nějaké testy, celkovou propustnost spočítám poctivě ze všech výsledků (z důvodu délky všechny nevypisuji)
Tak jedno vlákno
time dd if=/dev/urandom of=/dev/null bs=1048576 count=100 &
104857600 bytes (105 MB) copied, 15.1978 seconds, 6.9 MB/s
jedno vlákno: = 6,9 MB/s
dvě: 2x3,7 = 7,4 MB/s
tří: 3x2,5 = 7,5 MB/s
čtyři: 5,8 MB/s
pět: 4,9 MB/s
šest: 4,7 MB/s
pustím to na sedmi
time for ((x=0;x<7;x++)) { dd if=/dev/urandom of=/dev/null bs=1048576 count=100 & }
104857600 bytes (105 MB) copied, 119.541 seconds, 877 kB/s
104857600 bytes (105 MB) copied, 188.816 seconds, 555 kB/s
104857600 bytes (105 MB) copied, 188.76 seconds, 556 kB/s
104857600 bytes (105 MB) copied, 203.095 seconds, 516 kB/s
104857600 bytes (105 MB) copied, 203.233 seconds, 516 kB/s
104857600 bytes (105 MB) copied, 204.967 seconds, 512 kB/s
104857600 bytes (105 MB) copied, 205.266 seconds, 511 kB/s
4 MB/s
Je to dlouhé, zkusím s menším objemem dat, přesnost klesne ale nemělo by to mít velký vliv ?
for ((x=0;x<7;x++)) { dd if=/dev/urandom of=/dev/null bs=1048576 count=10 & }
10485760 bytes (10 MB) copied, 12.2736 seconds, 854 kB/s
10485760 bytes (10 MB) copied, 18.4268 seconds, 569 kB/s
10485760 bytes (10 MB) copied, 18.7979 seconds, 558 kB/s
10485760 bytes (10 MB) copied, 19.1058 seconds, 549 kB/s
10485760 bytes (10 MB) copied, 20.17 seconds, 520 kB/s
10485760 bytes (10 MB) copied, 20.4013 seconds, 514 kB/s
10485760 bytes (10 MB) copied, 20.4878 seconds, 512 kB/s
4 MB/s
Velký vliv to nemá, pustím osm vláken
for ((x=0;x<8;x++)) { dd if=/dev/urandom of=/dev/null bs=1048576 count=10 & }
10485760 bytes (10 MB) copied, 29.4299 seconds, 356 kB/s
10485760 bytes (10 MB) copied, 31.2589 seconds, 335 kB/s
10485760 bytes (10 MB) copied, 30.6556 seconds, 342 kB/s
10485760 bytes (10 MB) copied, 31.2022 seconds, 336 kB/s
10485760 bytes (10 MB) copied, 32.3281 seconds, 324 kB/s
10485760 bytes (10 MB) copied, 32.6528 seconds, 321 kB/s
10485760 bytes (10 MB) copied, 32.2793 seconds, 325 kB/s
10485760 bytes (10 MB) copied, 32.231 seconds, 325 kB/s
~= 2,6MB/s
Pustím to v 40ti vláknech
10485760 bytes (10 MB) copied, 157.93 seconds, 66.4 kB/s
10485760 bytes (10 MB) copied, 162.303 seconds, 64.6 kB/s
..
10485760 bytes (10 MB) copied, 173.421 seconds, 60.5 kB/s
..
10485760 bytes (10 MB) copied, 196.165 seconds, 53.5 kB/s
2,3MB/s
Při tomto počtu vidím už lineární závislost ? - odhadem - 5x více vláken = 5x pomalejší
Je to pravda? Pokud bych pustil 400 vláken tak by to mělo trvat jen něco přes půl hodiny. No zkusím, stejně musím na chvilku pryč.
10485760 bytes (10 MB) copied, 1446.95 seconds, 7.2 kB/s
...
10485760 bytes (10 MB) copied, 1590.4 seconds, 6.6 kB/s
...
10485760 bytes (10 MB) copied, 1930.92 seconds, 5.4 kB/s
= 2,4MB/s
-
hmm .. pozoruhodne vysledky .. no rekl bych, ze to 10ti mego na urandom muze stacit, ale cista generace aka /dev/zero toho vyprodukuje mnohem vic ..
taky to jeste zejtra prozenu ..
-
FSB - Dostávám zajímavé výsledky v závislosti na jádře:
(2PC s identickým HW) počet threadů 1 až 90
for ((x=0;x<90;x++)) { time dd if=/dev/zero of=/dev/null bs=1048576 count=10000 & }
uname -a
Linux alfa 2.6.18.8-xen #1 SMP Tue Sep 30 07:53:31 CEST 2008 x86_64 GNU/Linux
time dd if=/dev/zero of=/dev/null bs=1048576 count=10000
1, 10485760000 bytes (10 GB) copied, 2.99504 seconds, 3.5 GB/s = 3,5 GB/s
2, 10485760000 bytes (10 GB) copied, 4.59596 seconds, 2.3 GB/s = 4,6 GB/s
3, 10485760000 bytes (10 GB) copied, 4.96224 seconds, 2.1 GB/s = 6,2 GB/s
4, 10485760000 bytes (10 GB) copied, 5.77682 seconds, 1.8 GB/s = 7,2 GB/s
5, 10485760000 bytes (10 GB) copied, 6.10528 seconds, 1.7 GB/s = 8,5 GB/s
6, 10485760000 bytes (10 GB) copied, 7.2217 seconds, 1.5 GB/s = 9 GB/s
7, 10485760000 bytes (10 GB) copied, 9.30288 seconds, 1.1 GB/s = 7,7 GB/s
8, 10485760000 bytes (10 GB) copied, 11.1839 seconds, 0,94 = 7.5 GB/s
9, 10485760000 bytes (10 GB) copied, 12.1225 seconds, 0,85 (0.76-0.95) = 7,7 GB/s
90, 10485760000 bytes (10 GB) copied, 127.107 seconds, 0,08 (0.07-0.08) = 7,2 GB/s by woko
uname -a
Linux astra 2.6.26-1-amd64 #1 SMP Wed Sep 10 15:31:12 UTC 2008 x86_64 GNU/Linux
1, 10485760000 bytes (10 GB) copied, 0.995522 s, 10.5 GB/s = 10.5 GB/s
2, 10485760000 bytes (10 GB) copied, 0.994499 s, 10.6 GB/s = 21.2 GB/s
3, 10485760000 bytes (10 GB) copied, 0.977325 s, 10.7 GB/s = 32.1 GB/s
4, 10485760000 bytes (10 GB) copied, 0.99796 s, 8,97 (7,8-10.5) = 35,9 GB/s
5, 10485760000 bytes (10 GB) copied, 0.977671 s, 9,58 (8.1-10,7) = 47,9 GB/s
6, 10485760000 bytes (10 GB) copied, 0.999366 s, 8,93 (8,1-10.5) = 53,6 GB/s
7, 10485760000 bytes (10 GB) copied, 0.999054 s, 8,44 (8,1-10.5) = 59,1 GB/s
8, 10485760000 bytes (10 GB) copied, 1.27825 s, 8.2 GB/s = 65,6 GB/s
9, 10485760000 bytes (10 GB) copied, 1.28976 s, 7,13 (5.9-8,1) = 64,2 GB/s
90, 10485760000 bytes (10 GB) copied, 13.8611 s, 0,74 (0,7-0,8) = 66,6 GB/s by woko
a pro porovnání zopakuji na tomto stroji alespoň jeden minulý test CPU ve 40ti vláknech
for ((x=0;x<40;x++)) { dd if=/dev/urandom of=/dev/null bs=1048576 count=10 & }
10485760 bytes (10 MB) copied, 93.7754 s, 112 kB/s
..
10485760 bytes (10 MB) copied, 94.3177 s, 111 kB/s
= 4,44 MB/s (na 2.6.18-8-xen 2,3MB/s)
-
Tak nakonec místo plánovaného X25-E 64GB (papírově R/W 250/170 MBps), mám úspornější Intel SSD X25-M 80GB (papírově R/W 250/70 MBps)
a3-ntb% hwinfo --disk --short
disk:
/dev/sda INTEL SSDSA2MH08
a3-ntb% time (dd if=/dev/zero of=xx.file bs=1048576 count=1000 && sync)
1000+0 vstoupivších záznamů
1000+0 vystoupivších záznamů
1 048 576 000 bajtů (1,0 GB) zkopírováno, 11,1811 s, 93,8 MB/s
(; dd if=/dev/zero of=xx.file bs=1048576 count=1000 && sync; ) 0,00s user 5,67s system 37% cpu 15,098 total
a3-ntb% echo $((1048576000/15.098/1024/1024)) MB/s
66.233938269969528 MB/s
a3-ntb% time dd of=/dev/null if=xx.file bs=1048576
1000+0 vstoupivších záznamů
1000+0 vystoupivších záznamů
1 048 576 000 bajtů (1,0 GB) zkopírováno, 6,711 s, 156 MB/s
dd of=/dev/null if=xx.file bs=1048576 count=1000 0,01s user 1,41s system 21% cpu 6,717 total
a3-ntb% echo $((1048576000/6.717/1024/1024)) MB/s
148.87598630340926 MB/s
a3-ntb% time dd of=/dev/null if=xx.file bs=1048576
1000+0 vstoupivších záznamů
1000+0 vystoupivších záznamů
1 048 576 000 bajtů (1,0 GB) zkopírováno, 1,59176 s, 659 MB/s
dd of=/dev/null if=xx.file bs=1048576 count=1000 0,00s user 1,20s system 74% cpu 1,597 total
a3-ntb% echo $((1048576000/1.597/1024/1024)) MB/s
626.17407639323733 MB/s
a3-ntb% time dd of=/dev/null if=xx.file bs=1048576
1000+0 vstoupivších záznamů
1000+0 vystoupivších záznamů
1 048 576 000 bajtů (1,0 GB) zkopírováno, 1,14877 s, 913 MB/s
dd of=/dev/null if=xx.file bs=1048576 0,00s user 1,14s system 99% cpu 1,154 total
a3-ntb% echo $((1048576000/1.154/1024/1024)) MB/s
866.55112651646459 MB/s
Zajímavý pohled na opakované čtení...
Že by překonával rychlost sata...
Nebo Linux skvěle cachuje?