PRP jako dodatek do projketu miesiąca

Zaczęty przez stiven, 31 Maj 2012, 12:56

stiven

Taka nieśmiała propozycja: ktoś chce policzyć przy okazji WCG dodatkowo trochę zadań z PRP (project staging area).
Moje doświadczenia pokazują, że razem się to ładnie zgrywa (ze względu na specyfikę aplikacji WCG). Andy101fah niedawno się podpiął i w 3 dni 3 pierwszaki złapał:
http://u-g-f.de/PRPNet/user_search?uid=Jerzy_Przytocki

Wyniki drużyny jakoś tak blado wyglądają:
http://u-g-f.de/PRPNet/team_search?tid=BOINC@POLAND
można podgonić.

Podprojekt wymaga oddzielnej aplikacji (nie działa pod boinc) ale jest ona prosta w obsłudze.

simonic


Podprojekt wymaga oddzielnej aplikacji (nie działa pod boinc) ale jest ona prosta w obsłudze.
[/quote]

Aplikacja prosta jest. Niestety samo dołączenie do drużyny i wybranie co chcemy liczyć wymaga przynajmniej podstawowej znajomości angielskiego...

PS. Uwaga na wielkość liter w nazwach itp. podawanych w aplikacji PRPNet, Boinc@poland to dla aplikacji coś zupełnie innego niż boinc@poland :(


stiven

Myślę, że większość użytkowników tego forum nie będzie miała problemów z wpisaniem w pliku master_prpclient.ini nicka, maila i drużyny oraz uruchomieniem dwóch batchy (do tego sprowadza się obsługa). Readme jest napisane tak, że prościej się nie da. Bariera językowa wydaje mi się znikoma. Jak będą chętni to mogę przygotować przewodnik po polsku.

Co do wielkości liter to podałem teamid=BOINC@POLAND ale wygląda, że już sobie z tym poradzili bowiem
http://u-g-f.de/PRPNet/team_search?tid=BOINC@POLAND
http://u-g-f.de/PRPNet/team_search?tid=boinc@poland
http://u-g-f.de/PRPNet/team_search?tid=Boinc@poland
dają te same wyniki.

stiven

Wygląda na to, że samotnie ale dołączyłem do wyścigu. Nie wiem jak długo się liczą próbki typu Primorial Prime Search ale powalczę na 2 rdzeniach.

http://www.primegrid.com/forum_thread.php?id=4392#55139

AL

Czy ten podprojekt ma coś wspólnego z PG? Czy punkty z niego są jakoś dodawane do PG w boinc - czy to jakaś totalnie oddzielna liga?

andy101fah

Nako nowicjusz w tym projekcie już wiem że się dodają i dostaje się piękny znaczek do kolekcji.

PSA



Project Staging Area work
Credit   28,644.00

Wyniki są widoczne pod koniec listy liczonych projektów w Primegrid

AL

W takim razie proszę o krótką instrukcję co i skąd trzeba pobrać, a następnie jak uruchomić.

andy101fah

Wkleję instrukcję którą otrzymałem od kolegi stivena  :respect: :respect:
wersja dla systemu linux. Ja liczyłem pod windows i tam są zwykłe pliki *.bat i *.ini więc obsługa jeszcze prostsza.
Pod ubuntu 12.04 64bit nie poradziłem sobie z 8 rdzeniami w moich i7 2600k i i7 920. Na core2duo pod windows xp odpaliło bezpoblemowo.
1. Po pierwsze PSA wymaga oddzielnej aplikacji, nie działa pod boinc managerem. Musisz zassać sobie klienta za strony:

http://uwin.mine.nu/PRPNet/

2. Po rozpakowaniu i obmyśleniu ile rdzeni ma liczyć odpalasz: #-install-prpclient.sh w miejsce # dajesz liczbę rdzeni
3. Otwierasz master_prpclient.ini i uzupełniasz wymagane pozycje:
email=
userid=
Możesz uzupłenić też clientid= teamid=

4. Ustalasz co będziesz liczyć czyli wybierasz server= (będą już uzupełnione w praktyce wyłączasz te, których liczyć nie chcesz dodając im // z przodu )
5. Zapisujesz zmiany i odpalasz "#-update-prpclient-ini.sh
6. Klienta uruchamiasz poleceniem #-start-prpclient.sh będzie się łączył z wybranymi serwerami i zasysał zadania i odsyłał je automatycznie. Ubijasz go jak każde inne zadanie.

Więcej informacji o konfiguracji znajdziesz tu:

http://www.primegrid.com/forum_thread.php?id=1215&nowrap=true#13329
Powodzenia!

PS. Punkty są przydzielane inaczej niż w przypadku boinc. Zliczają je zdaje się raz na tydzień więc nie martw się że początkowo nie będzie ich widać.

migawron

Cytat: andy101fah w 18 Czerwiec 2012, 08:07


PS. Punkty są przydzielane inaczej niż w przypadku boinc. Zliczają je zdaje się raz na tydzień więc nie martw się że początkowo nie będzie ich widać.

Konkretnie to punkty są dorzucane ręcznie, bez żadnego harmonogramu, w taki sposób aby nie zaburzać RAC'u. Więc jeśli przeliczysz mało zadań, to w miarę szybko zobaczysz punkty w BOINC (i odznakę :) ) NAtomiast jeśli dosypiesz mnóstwo zadań w PSA, to BOINC cretid będzie spływał stopniowo, tym szybciej im większy jest Twój aktualny RAC w Primegrid.



AL

Chcę liczyć na win7 64 - widzę możliwość pobrania dwóch klientów:

prpclient-5.0.7-windows.7z

i

prpclient-5.0.7-windows-gpu.7z

Czy to oznacza, że obliczenia są też wykonywane na gpu? Który wybrać?

andy101fah

Pod windows może jednocześnie chodzić kiient GPU i CPU w ilości równej wątkom w procesorze. Jeżeli chodzi o wydajność to jedynie GPU.

AL

Kolejne pytanie. Czy to oznacza, że pod tym klientem działają dokładnie te same i wszystkie pod-projekty co bezpośrednio na boinc w PG?
Do tej pory byłem przekonany, że tylko jeden-dwa testowe na cpu których akurat nie ma bezpośrednio na boinc z PG.

Z tego wniosek, że mam wybrać wersję drugą z obsługą gpu. A co będzie jak uruchomie obliczenia na boinc (6 wątków cpu dla wcg i pg na gpu) oraz na tym kliencie (dajmy na to 2 wątki cpu i gpu)? Toż to się chyba wszystko sypnie, a już liczenie dwóch wu z PG na gpu za pomocą dwóch różnych aplikacji na dzień dobry pachnie mi blue screenem...

stiven

Podprojektów jest dużo. Część z nich to te same (z nazwy) co w primegrid boinc np PPS, SGS. Obejmują one jednak inne zakresy poszukiwań lub są to dodatkowe sprawdzania tego co zostało już przeczesane.
Część z nich to projekty testowe a część nie - jakoś tak historycznie zostały.

Więcej o podprojektach tutaj:
http://www.primegrid.com/forum_thread.php?id=3008

Na GPU nie liczyłem PRP więc nie pomogę. Liczę natomiast 6xWCG CPU i 6xPRP CPU.

AL

Mam kilka kolejnych pytań. Przy podawaniu userid i teamid trzeba wpisać ich nazwy np AL ADIM czy BOINC@POLAND, czy wystarczy wpisać ich cyfrowe odpowiedniki np. dla BOINC@POLAND byłoby to 2?
Jeśli chodzi o odznaki - to niezależnie który pod-projekt liczę za pomocą tej aplikacji - to i tak wszystko to idzie na konto jednej odznaki (PSA?), czy normalnie na konta poszczególnych pod-projektów i ich odznak?

mimeq

Podajesz pelne nazwy.
Wszystkie pod-projekty PRP to jedna wspolna odznaka PG - PSA (Project Staging Area).
Poszczegolne statystki swoje mozesz zawsze sprawdzic wpisujac w przegladarce adres pod-projektu ktory aktualnie liczysz np:

http://prpnet.mine.nu:7171/ - strona glowna jednego z podprojektow (SR5)

a pozniej juz odpowiednie linki np

http://prpnet.mine.nu:7171/user_stats.html  - staty urzytkownikow i np ja 105 WU za 265814 pkt PRPNet  :P (jaki jest przelicznik poszczegolnych pod-projektow na pkt PG tego nie wiem)


simonic

Cytat: mimeq w 20 Czerwiec 2012, 02:55
staty urzytkownikow i np ja 105 WU za 265814 pkt PRPNet  :P (jaki jest przelicznik poszczegolnych pod-projektow na pkt PG tego nie wiem)

Przelicznik to ok 20 ptk PRPNet = 1 pkt BOINC


AL

Odpaliłem jedną instalację 6xcpu i jedną instalację gpu na której chciałem liczyć genefera na cuda. Genefer się liczy ale to chyba nie cuda - tylko zwykła jednostka.
Wczoraj już odesłałem kilka próbek - ale jakoś nie potrafię dotrzeć do żadnych statystyk gdzie byłbym ujęty.
Teraz liczy się 6xwcg na cpu, 6x prp na cpu, 1xgenefer na gpu, 1xgenefer za pomocą prp (chyba na gpu - tu pewności nie mam) i jedna maszyna virtualna.

[smg id=9604]

stiven

Po mojemu musisz dodać // do linijek:


geneferexe=genefx64.exe
geneferexe=genefer.exe
geneferexe=genefer80.exe
w master_prpclient.ini

bez // powinno zostać geneferexe=genefercuda.exe wtedy będzie liczyć na GPU. Po zmianach musisz uruchomić update-prpclient.

AL

Dokonałem zmiany, "zupdejtowałem" klienta i zrestartowałem, ale na razie wznowił liczenie już pobranej próbki. Dam mu ją doliczyć do końca i zobaczę co będzie dalej

andy101fah

Prawdopodobnie to Twoje statystyki. Zarówno ALADIM jak AL ADIM daje ten sam wynik.

http://u-g-f.de/PRPNet/user_search?uid=AL%20ADIM


AL

Cytat: andy101fah w 20 Czerwiec 2012, 17:33
Prawdopodobnie to Twoje statystyki. Zarówno ALADIM jak AL ADIM daje ten sam wynik.

http://u-g-f.de/PRPNet/user_search?uid=AL%20ADIM

Dzięki! Choć z tych statystyk nic dla mnie nie wynika, albo nie umiem ich czytać. Przeliczyłem już dość sporo, a w tych tabelach widzę same zera.

stiven

Na złego linka patrzysz więc zera widzisz. Obadaj to:

http://u-g-f.de/PRPNet/user_search?uid=AL_ADIM

i przy okazji sprawdź czy w obu master_prpclient.ini dałeś taki sam userid bo rozmnożenie się bytów podobnych do AL_ADIM może sugerować iż w przypadku PRP na CPU dałeś AL_ADIM a dla domniemanego CUDA AL ADIM i punktów brak bo jeszcze nie doliczył do końca.

gaballus

Przytoczona wyżej instrukcja na Linuksa zadziała tylko w systemach z zainstalowanymi X-ami i w przypadku uruchamiania klienta z trybu graficznego. Gdyby ktoś chciał odpalić PRP na hoście bez X-ów trzeba trochę zakombinować (niewiele). Jeśli jest ktoś chętny to mogę napisać krótką instrukcję, ale to jutro po południu, wcześniej raczej nie dam rady.

stiven

Ja poproszę. Kiedyś próbowałem tego dokonać i się poddałem.

gaballus

Poniżej krótka instrukcja odpalenia PRP na Linuksach "bezXowych"
bazuję na instrukcji stivena

1. Po pierwsze PSA wymaga oddzielnej aplikacji, nie działa pod boinc managerem. Musisz zassać sobie klienta za strony:

http://uwin.mine.nu/PRPNet/

2. Po rozpakowaniu i obmyśleniu ile rdzeni ma liczyć odpalasz: #-install-prpclient.sh w miejsce # dajesz liczbę rdzeni
Skrypt #-install-prpclient.sh jedyne co robi to tworzy odpowiednią ilość katalogów prpclient-# i kopiuje tam programy z katalogu programs

3. Otwierasz master_prpclient.ini i uzupełniasz wymagane pozycje:
email= wiadomo
userid= wiadomo
Możesz uzupłenić też
clientid= nazwa hosta
teamid= też wiadomo :)

4. Ustalasz co będziesz liczyć czyli wybierasz server= (będą już uzupełnione w praktyce wyłączasz te, których liczyć nie chcesz dodając im // z przodu )

5. Zapisujesz zmiany i odpalasz "#-update-prpclient-ini.sh
Ten skrypt z kolei kopiuje plik master_prpclient.ini do poszczególnych katalogów prpclient-# zmieniając mu jednocześnie nazwę na prpclient.ini

BTW skrypty te da się w prosty sposób przepisać tak aby były uniwersalne dla każdej ilości rdzeni, bez niepotrzebnego mnożenia bytów, ale na razie nie o to chodzi :)

6. I teraz dochodzimy do sedna plik #-start-prpclient.sh nie uruchomi nam klienta bez Xów
Tworzymy plik (w tym samych katalogu) np start-prpclient-nox.sh
np:
touch start-prpclient-nox.sh
zmieniamy prawa dostepu
chmod 755 start-prpclient-nox.sh

i wklejamy poniższą zawartość:

#!/bin/bash
for x in `ls -d prpclient-*`
do
        pushd $x
        ./startx.sh > /dev/null 2>&1 &
        popd
done

sleep 5

ps aux|grep -e llr -e genef -e pfgw -e prpclient -e wwww |grep -v -e grep -e bash


Powyższy plik jest uniwersalny i będzie działał przy każdej ilości rdzeni wcześniej wybranych
linie sleep i i ps aux... nie są konieczne, wyświetlają tylko dodatkowo listę odpalonych przez skrypt programów
Uruchamia on wszystkie programy w tle.
Skrypt wywołujemy np
./start-prpclient-nox.sh
niewłaściwym jest sh start-prpclient-nox.sh ponieważ powłoka sh nie posiada poleceń pushd i popd.
Można dopisać wywołanie tego pliku w skryptach startowych i będzie nam się odpalało przy starcie systemu.
Oczywiście można tej metody używać bez problemu w systemach z powłoką graficzną.

Przy okazji warto sobie poprawić skrypt stop-prpclient.sh
najwyraźniej w spakowanych plikach pozostała jakaś stara wersja nie zabijająca wszystkich możliwych programów, w każdym razie właściwa uwzględniająca wszystkie programy 32 i 64 bitowe powinna wyglądać tak:

#!/bin/bash
killall -2 llr
killall -2 pfgw32
killall -2 pfgw64
killall -2 phrot
killall -2 genefer
killall -2 genefer80
killall -2 genefercuda
killall -2 genefx64
killall -2 wwww
# give prpclient the chance to talk back to servers
sleep 10
killall -2 prpclient


AL

Cytat: stiven w 20 Czerwiec 2012, 22:45
Na złego linka patrzysz więc zera widzisz. Obadaj to:

http://u-g-f.de/PRPNet/user_search?uid=AL_ADIM

i przy okazji sprawdź czy w obu master_prpclient.ini dałeś taki sam userid bo rozmnożenie się bytów podobnych do AL_ADIM może sugerować iż w przypadku PRP na CPU dałeś AL_ADIM a dla domniemanego CUDA AL ADIM i punktów brak bo jeszcze nie doliczył do końca.

Link działa, wyniki są, userid ten sam w cpu i gpu. Nawet po wynikach widzę, że po konfiguracji klienta gpu wg. waszych porad przeliczyło mi genefra na cuda. Zaprzestałem używać jednak tego klienta, ponieważ jak łatwo się domyślić druga próbka genefera liczona na zwykłym boinc mgr. liczyła się dwukrotnie dłużej niż zwykle.

andy101fah

Dzięki serdeczne gaballus
:respect: :respect: :respect:

Mam drobną prośbę. W jaki sposób na bieżąco podglądać postęp liczonych jednostek ? Czy należy uruchomić polecenie ./start-prpclient-nox.sh z jakąś dodatkową flagą ? W przypadku windowsowego klienta w oknie konsoli jest widoczny procentowy postęp przeliczanej jednostki.

gaballus

Ok więc tak, zmieniamy co nieco plik start-prpclient-nox.sh
poniżej aktualny:

#!/bin/bash
for x in `ls -d prpclient-*`
do
        pushd $x > /dev/null 2>&1
        ./startx.sh > prpclient.log &
        popd > /dev/null 2>&1
done

sleep 5

ps aux|grep -e llr -e genef -e pfgw -e prpclient -e wwww |grep -v -e grep -e bash


w zasadzie jedyna istotna zmiana polega na wysłaniu komunikatów do pliku a nie do /dev/null

a teraz drugi skrypcik, np : view-log.sh

#!/bin/bash
while [ 1=1 ]
do
        clear

        for y in `ls -d prpclient-*`
                do
                echo  $y
                pushd $y > /dev/null 2>&1
                tail -n1 prpclient.log
                echo   
                popd > /dev/null 2>&1
        done

        sleep 5
done


Tworzymy ten plik w głównym katalogu prp. Uruchamiamy najpierw start-prpclient-nox.sh  a jeśli chcemy podglądać wyniki view-log.sh
Skrypt ten wyświetla ostatnią zalogowaną linię z każdego z odpalonych klientów więc mogą zdarzyć się momenty że będą tam dziwne informacje.
Zdaję sobie sprawę że jest to dość koślawy sposób ale nie jestem programistą niestety  :dunno: