Optymalizacje SETI - liczenie na CPU i GPU jednocześnie

Zaczęty przez Voice1980, 06 Luty 2009, 10:05

Voice1980

Jest ciekawa dyskusja na temat działających już modów.
http://lunatics.kwsn.net/gpu-crunching/ak-v8-cuda-mb-team-work-mod.0.html

AK V8 + CUDA -> simultaneous SETI MB processing on CPU and GPU on the same host.

Postanowiłem zgłębić tajemnicę tej optymalizacji. Wydaje mi się, że udało mi się poprawnie wszystko zainstalować.
Mam 5 procesorów w cc_config.
Jest również 5 jednoczesnych procesów liczenia próbek w menadżerze ale przy żadnym nie ma dopisku CUDA.

Chciałbym się upewnić, że jeden z nich to faktycznie proces liczony na GPU. Wcześniej sądziłem że niemożliwe jest takie liczenie.

poniżej przykładowe zadania enhanced policzone po wgraniu tej optymalizacji.
http://setiathome.berkeley.edu/result.php?resultid=1152124118
http://setiathome.berkeley.edu/result.php?resultid=1152098721
http://setiathome.berkeley.edu/result.php?resultid=1152098720
http://setiathome.berkeley.edu/result.php?resultid=1150618655

Menadżer zadań windows pokazuje
5 procesów AK_v8b_win_SSSE3x_GPU_CPU_team.exe ( z czego 1 z nich zabiera 00 czasu CPU  i tylko 2232k pamięci)
1 proces MB_6.08_mod_CPUteam_CUDA.exe

co "piąta" próbka jest liczona o wiele szybciej. ok 2,5 minuty. Jednak jest to tylko czas pokazywany przez menadżera. Faktycznie liczy się dłużej. Niemniej czas jest o wiele krótszy niż pozostałych próbek.

Troll81


Voice1980

Optymalki można ściągnąć pod odnośnikiem lunatics.. jaki podałem.

Pierwsza wypowiedź usera Raistmer ma w stopce pliki (z możliwością pobrania po zalogowaniu się)

instalowałem paczkę Raistmer's_opt_package_V8a_CPU_GPU_team.rar

wymagane najnowsze sterowniki nvidia 181.22, plik cc_config z cpux5

pierwsza reakcja nie była zbyt pozytywna ..wszystkie wcześniej ściągnięte zadania przeliczał w kilka sekund wywalając błąd. Jak już wszystkie "zniszczył"....zaczął liczyć normalnie jak opisałem wcześniej.

Zaraz instaluje to na drugim quadzie bo wygląda mi to ...dobrze  8)


Troll81

A jhak zalicza ci wyniki tych obliczeń? I na jakie procki jest przeznaczona ta optymalka? na moim 6550 dwujajowcu pociągnie? (mam sse3x ale już 4 ani 4.1 nie mam)

[PBT] Horpah

tak tak fajnie liczy, ale jest jeden mały problem GRANTED CREDIT 0

Voice1980

#5
zadania, które podałem wcześniej mają jeszcze status pending

tu jest podobne po przyznaniu pkt
http://setiathome.berkeley.edu/result.php?resultid=1152640724

niestety są też i errory
http://setiathome.berkeley.edu/result.php?resultid=1152640737
w menadżerze wygląda to tak:
2009-02-06 16:05:30|SETI@home|Starting 06ja09ae.9154.25021.9.8.78_1
2009-02-06 16:05:30|SETI@home|Starting task 06ja09ae.9154.25021.9.8.78_1 using setiathome_enhanced version 608
2009-02-06 16:05:31|SETI@home|Computation for task 06ja09ae.9154.25021.9.8.78_1 finished
2009-02-06 16:05:31|SETI@home|Output file 06ja09ae.9154.25021.9.8.78_1_0 for task 06ja09ae.9154.25021.9.8.78_1 absent
co jakiś czas są próbki "VLAR WU" z którymi jest problem.


Voice1980

Cytat: Troll81 w 06 Luty 2009, 12:32
A jhak zalicza ci wyniki tych obliczeń? I na jakie procki jest przeznaczona ta optymalka? na moim 6550 dwujajowcu pociągnie? (mam sse3x ale już 4 ani 4.1 nie mam)

Tak - wpiera SSSE3,SSE3,SSE2
próbki z GPU, pomimo znacznie krótszego czasu liczenia, punktują bardzo podobnie jak te z CPU czyli 42-53pkt.


Jak teraz widzę, od instalacji errorem zakończyły się 23 WU. Poprawnie zakończone 45 sztuk.


Zainstalowałem na następnym q6600  (wcześniej miał optymalki Cruncher'a) Jego reakcja była zupełnie inna niż podczas pierwszej instalacji. Kontynuuje liczenie wcześniej ściągniętych próbek

Poprzedni komputer,taki samym quad, (miał optymalki lunatics,) - kończył takie WU błędem i dopiero jak ściągnął nowe liczył poprawnie.

Bilans jest na plusie, będę obserwował drugą maszynę i poczytam w końcu coś o tych VLAR WU, które się wysypały...a może ktoś coś wie? :)


Voice1980

Tak, w ciągu niespełna doby, na 3 quadach, wysypało się tylko 11 WU.

Problem z VLAR WU udało się twórcom moda mocno ograniczyć. Należało jedynie wgrać nową wersję aplikacji, która odpowiada w tej optymalizacji za wysyłanie jednostek na GPU.
Po prostu jednostki VLAR są wysyłane na CPU.

Nie działa to jeszcze w 100% niestety. Jest to jednak bardzo aktywny projekt i twórcy pracują niemalże na żywo (forum lunatics)

Na tyle dodatkowych WU przeliczonych dzięki tej optymalizacji na GPU, te 11 błędnych jednostek to szczegół.

Na 3 maszynach na dobę to kropla w morzu w punktach zdobytych "bonusowo".

Przykładowo, obrazowo napiszę, że liczę jednocześnie np:
1x AP
3x enhanced 6.08
1x enhanced 6.08 (CUDA)

równie dobrze może być:
1x AP
1x AP
1x AP
1x AP
1x enhanced 6.08 (CUDA)

(Optymalka dla Astro pulse jest w komplecie optymalizacji o której cały czas tu piszę)

to na tyle mojego monologu  8) czas na rewolucję  :attack:


Pigu


Voice1980

Odpaliłem to na trzech maszynach. Dwie mają 8800gt, trzecia 8800gts

buri

Dobra z uwagi, że mi się nudzi  XD


.......... dobra za głupie pytanie zadałem, już zrobione, wujek google pomógł  :P

buri

Lekkie odświeżenie, jak liczy na karcie to widać? Pytam bo niby liczy mi te 3 procesy, ale obciążenie karty graficznej minimalne ...

Może gdzieś się ustawia albo ja nie kumam co tam się robi. To będzie już z moje 4 podejście do tego moge rzec, że najbardziej udane bo wcześniejsze wywaliły mi wszystkie próbki, a teraz jakoś się liczy.

Może nie mam potwora jeśli chodzi o karte, ale nikt nie mówi, że nie może sobie liczyć - zawsze to 1 zadanko więcej co jakis czas.

Voice1980

Chętnie tobie pomogę. Jest też równoległy wątek "problem z liczeniem seti na gpu" w dziale Boinc Manager - tak w razie czego :) ... a widzę, że już tam byłeś

nic więcej oprócz pliku cc_config nie ustawiasz. Wpisujesz liczbę rdzeni cpu jakie masz +1. Sam proces jest widoczny jedynie w menadżerze zadań -  ma dopisek CUDA.
Bezpośrednio w BOINC manager widzisz procesy bez dopisku "CUDA".

Jeżeli chodzi o obciążenie grafiki przez CUDA - u mnie jest to niewidoczne. Odkąd zainstalowałem najnowsze sterowniki do grafy żadnych problemów. Wcześniej potrafił łapać jakieś "zacinki"

buri

Właśnie słabo, że tak marnie wykorzystuje moje GPU bo jest słabe i trza by go na maksa cisnąć :/

Obecnie rezygnuje z tego bo próbka 6h to za długo na GPU, patrząc jak CPU miecie w 1:30h.

Może jeszcze do tego wróce, ale narazie mówie papa SETI na jakieś 2-3 miesiące.

Voice1980

Aż nie chce mi się wierzyć że może być taka różnica w czasie liczenia próbki na GPU. Moje czasy to ok 2,50... minuty/GPU (czas pokazany w Boinc manager i na stronie po odesłaniu próbki - w rzeczywistości jest to ciut dłużej..ale nie 6h). Może wersja sterowników? Sprawdzałeś inne?

KrzychuP

buri, ja też nie mam jakiejś wypasionej karty, a liczy mi jedną próbkena GPU o 30-50% szybciej niż na CPU

Voice, ten czas o którym piszesz, że Ci pokazuje, to czas CPU z którego dana jednostka korzystała mimo liczenia GPU,

buri

Nie wiem, może u mnie jest coś nie tak ... ???

Ehh wiecie wróce jeszcz raz do tego, ale tak na weekendzie, kurde bo wasze wyniki powalają.

Moje stery 182.05 DOX i raczej nie zmienie, ponieważ gry chodzą na nich bosko.

---------------------------------
Aby nie było posta pod postem.
Przeprowadziłem powtórny test i ... tak jak wcześniej GPU liczy próbke około 6h, więc kupa.
Moja karta to chyba za słaba jest, albo nie wiem co jest nie tak.
Rezygunje z dalszej zabawy i jak mówiłem żegnam się z SETI ...