Optimalizace SETI/BOINC
Chtěl bych upozornit všechny z vás, kteří počítají
SETI/BOINC a nemají ještě optimalizovanou verzi
setiathome.exe, že zbytečně máte příliš dlouhou dobu výpočtu, což je škoda jak pro vás (máte méně kreditu), ale i pro váš tým (nižší skóre a případné pořadí) a nakonec i pro SETI projekt (méně vypočtených jednotek).

Takže o co jde. Oficiálně dodávané boinc.exe a setiathome.exe jsou udělané tak, aby běhali pokud možno na všech procesorech a z toho vyplívá, že nemohou být příliš optimalizované pro konkrétní hardware a nemohou tak využít jeho výhody.
Linuxáci znají výhody kompilace nějakých programů, když si některý překompilují na svém procesoru.
Naštěstí nemusíte stahovat zdrojáky SETI a BOINCu a kompilovat si je sami ve Visual Studiu, někdo to už udělal za vás

. Existuje sada různých
boinc.exe a
setiathome.exe, které jsou překompilované za použití různých kompilátorů a na různých procesorech.

Co musíte udělat. Měli byste si zjistit, co máte za procesor, jakou má instrukční sadu, podle toho zvolit správné soubory a nahradit je za stávající.

Tady máte kompletní návod, jak na to, není to příliš složité.
- mejte verzi boincu 4.45, at nejsou pripadne problemy
- dejte No more work/ Nestahovat dalsi jednotky pro SETI
- nechte jednotky v zasobe dopocitat a vsimnete si jejich casu a vysledku benchmarku
- stahnete si
CPUZ a zjistete, jakou instrukcni sadu ma vas procesor, napr ja mam: MMX, SSE, SSE2
- na strance
http://www.marisan.nl/seti/index.htm/ stahnete ze sekce "Compiled with Intel C++ using IPP library" R7 verzi pro vas procesor (ty R7 jsou podle zkusenosti nejrychlejsi)
- pak si tady sosnete boinc.exe pro vas procesor
http://boinc.truxoft.com/
- vypnete boinc
- zazalohujte si adresar boincu !!!
- rozbalte soubory
app_info.xml a
setiathome_4.11_windows_intelx86.exe do adresare BOINC/Projekty/Seti/
- pokud v tom adresari mate setiathome_4.18_windows_intelx86.exe, nechte ho tam, pokud tam mate 4.09, smazte jej
- nahradte boinc.exe tim optimalizovanym v adresari boincu
- spustte boinc (version change 4.45 -> 4.68) a okamzite resetujte SETI projekt
- pote se vam stahnou workunity pro verzi 4.11, ackoliv boinc manager vam stale muze v zalozce 'work' psat 4.18, to je jedno, to poznate na rychlosti vypoctu
- no a nechte to pocitat a hodte sem vysledky (spolu s vasim procesorem)
Je to opravdu tak jednoduche a stoji to za tu trochu prace! Je skoda, ze tolik clenu tymu pocita s neoptimalizovanou verzi, mame tak zbytecne horsi vysledky.
Mé výsledky - doba výpočtu SETI:
- Pentium 4 celeron Northwood 2.4 GHz MMX, SSE, SSE2
původně 8.5 - 9 h
po optimalizaci
2 - 2.5h
- Pentium 3 E Coppermine 800 MHz MMX, SSE
původně 8.5 - 9 h
po optimalizaci
4.7 - 6 h
- Pentium 3 celeron 1.3@1.43 GHz MMX, SSE
původně 7 - 8 h
po optimalizaci
3 - 3.5 h
Všimněte si těch rozdílů - s normálním SETI počítá P4 celeron 2.4 GHz pomaleji, než můj domácí P3 celeron na 1.3 GHz a stejně jako P3 na 800 MHz !!!!!!!!!!!!!!!!!!!!!!
Není to nářez?

Nebojte se toho, stojí to za to
Na závěr ještě patří poděkování forestovi, truxovi a honzovi z boinc fóra.