arch - centrino?[OT - narzekania]

The Undefined undefine w aramin.net
Sob, 19 Cze 2004, 01:37:31 CEST


On Fri, Jun 18, 2004 at 11:25:37PM +0200, Cezary Krzyżanowski wrote:
> No ok ok, ale również w tym wątku wysunięto empirycznie sprawdzone 
> numery, w stylu i386 działające szybciej, niż i586. Z czego takie numery 
> wynikają? Z dyskusji ogólnie mam wrażenie, że optymalizacja jest takim 
> picem na fotomontaż...robi się ją, choć tak na prawdę nie ma znaczenia 
> (kodu gotowego, nie przy pisaniu). Te testy chętnie bym też obejrzał, bo 
> jak już pisałem wcześniej, że spodziewałbym się, że na architekturach 
> i586 kod pod tęże architekturę będzie działał lepiej....
moj "test"?
1. robie chrooty pod architektury (standardowe arch z pld, bo nie chce
mi sie za wiele kompilować)
[undefine w router test]$ ls
athlon        athlon.tar.gz  i386        i386.tar.gz  i586.rpmqa   i686 i686.tar.gz  p.conf.rpmqa  test.sh~  t.sh~
athlon.rpmqa  dane           i386.rpmqa  i586         i586.tar.gz i686.rpmqa  p.conf       test.sh       t.sh

w każdym mam pliczek test.sh(link twardy), katalog dane jest wspólny
(podmontowany z -o bind), zawartość t.sh:

[undefine w router test]$ cat t.sh
for i in i386 i586 i686 athlon; do
 (echo $i; time chroot $i bash test.sh ) 2>&1 |xargs
done

no i teraz sobie robię testy ;)
ot, na przykład sprawdźmy kompresję gzip ;)
robimy testowy pliczek w katalogu dane:
[undefine w router test]$ sudo dd if=/dev/urandom of=dane/test bs=1M
count=10; ls -l dane
10+0 rekordów wczytanych
10+0 rekordów zapisanych
razem 10240
-rw-r--r--    1 root     root     10485760 2004-06-19 00:19 test
i go będziemy kompresować:
[undefine w router test]$ cat test.sh
#!/bin/bash
gzip -9 </dane/test >/dev/null

efekt?
[undefine w router test]$ sudo bash t.sh
i386 real 0m0.923s user 0m0.920s sys 0m0.010s
i586 real 0m0.923s user 0m0.910s sys 0m0.010s
i686 real 0m0.904s user 0m0.880s sys 0m0.030s
athlon real 0m0.806s user 0m0.780s sys 0m0.020s

jak widać między i386 a i586 różnicy niet, i686 nieco szybszy, athlon
najszybszy - i różnica większa między i686<>athlon większa niż i386<>i686

no to bzip2:
[undefine w router test]$ cat test.sh
#!/bin/bash
bzip2 -9 </dane/test |bzip2 -d>/dev/null

i386 real 0m10.467s user 0m10.430s sys 0m0.040s
i586 real 0m10.355s user 0m10.340s sys 0m0.020s
i686 real 0m10.155s user 0m10.150s sys 0m0.000s
athlon real 0m10.394s user 0m10.380s sys 0m0.010s

hm.. tutaj ciekawe - athlon jest wolniejszy niż i{56}86 a i586 szybszy niż i386 :/

no to.. na przykład kompilacja ;)
biorę testowy pliczek qb2c.c z pakietu qb2c (mój ulubiony bo się
kompiluje około 10sekund i zżera tyle ram że pierwsza maszynka gdzie
próbowałem go zbudować się wywaliła ;), wrzucam do dane i kompiluję:
[undefine w router test]$ cat test.sh
#!/bin/bash
cd /dane
rm -f qb2c
gcc -O2 -o qb2c qb2c.c -lm
rm -f qb2c

efekty?
[undefine w router test]$ sudo bash t.sh
i386 real 0m8.862s user 0m8.670s sys 0m0.190s
i586 real 0m9.167s user 0m8.990s sys 0m0.170s
i686 real 0m9.005s user 0m8.850s sys 0m0.130s
athlon real 0m8.494s user 0m8.330s sys 0m0.160s

i cóż widzimy? ;)
athlon prowadzi.. zaraz za nim... i386(?). potem i686, i na końcu i586

i tak się można bawić...
kiedyś wydawało mi się że "odstawanie" i586 było widoczne, teraz jednak
tego nie widać. Nie wiem, może mi sie wydawało, albo też inaczej się
bawiłem... lub też coś się zmieniło w ac od tego czasu.. (dzisiaj przed
testami zrobiłem distupgrade w chrootach) lub też coś się zmieniło w ac
od tego czasu.. (dzisiaj przed testami zrobiłem distupgrade w chrootach)
lub też coś się zmieniło w ac od tego czasu.. (dzisiaj przed testami
zrobiłem distupgrade w chrootach) lub też coś się zmieniło w ac od tego
czasu.. (dzisiaj przed testami zrobiłem distupgrade w chrootach)
wiem że sposób robienia testów marny, powinny być kilka razy powtórzone
ale mi się nie chce uśredniać wyników ;) Ogólnie testy robiłem kilka
razy i brałem ostatni wynik, o ile nie było jakiś znaczących odchyłów od
normy (bo akurat np mail przyszedł ;)
różnice generalnie były na drugim miejscu po przecinku, tendencja w
ramach tego samego testu taka sama.
acha - pakiety z ac z main, serwer athlon 2500+, 1gb ram, 512kb cache,
wsio na nforce.
Obciążenie - praktycznie brak

jak ktoś chce chrooty testowe mogę spakować i udostępnić, chociaż to
akurat żadna filozofia by sobie samemu zrobić...

-- 
Andrzej 'The Undefined' Dopierała
UNIX && Linux administrator, Adam Mickiewicz University WMiI
PLD Linux Developer             HomePage: http://aramin.net/
JID: undefine w piastlan.net    e-mail: undefine w pld-linux.org



Więcej informacji o liście dyskusyjnej pld-devel-pl