BOINC@Poland

Inne => BOINC => Archiwum => BOINC Manager => Wątek zaczęty przez: Bober w 22 Listopad 2007, 16:49

Tytuł: Przenoszenie próbek między Managerami
Wiadomość wysłana przez: Bober w 22 Listopad 2007, 16:49
Jest możliwe przenoszenie próbek między różnymi Managerami (również znajdującymi się na różnych hostach) bez konieczności kopiowania całego katalogu z BOINC.


UWAGA! Poniższy materiał jest przeznaczony dla bardziej zaawansowanych użytkowników BOINC. Nie ponoszę odpowiedzialności za utracone próbki. :wink:


Na początek przenoszenie tylko wybranej próbki.
To ile plików i wpisów należy przenieść zależy od projektu. Poniżej przykład przeniesienia próbki Enigmy.
Procedura wygląda następująco:
1. W katalogu projektu pojawia się jeden plik dotyczący próbki np. o nazwie 00hc_wu_433088_r0 i jego należy przenieść w to samo miejsce w drugim Managerze
2. Następnie edytujemy pliki client_state.xml obu Managerów, wycinamy i wklejamy do drugiego następujące dane:
- Znajdujemy wpisy dotyczące Enigmy, zaczynające się od
<project>
    <master_url>http://www.enigmaathome.net/</master_url>

Tam szukamy informacji o WU znajdujących się pod tagiem <file_info> (są one przed <app_version>) np.
<file_info>
    <name>00hc_wu_433088_r0</name>
    <nbytes>88.000000</nbytes>
    <max_nbytes>0.000000</max_nbytes>
    <md5_cksum>403b3e1b65f4af6ffb71fc5d58074eed</md5_c        ksum>
    <status>1</status>
    <url>http://enigmaathome.net/download/00hc_wu_4330        88_r0</url>
</file_info>
<file_info>
    <name>hceyz72_2_433088_r0_0_0</name>
    <nbytes>0.000000</nbytes>
    <max_nbytes>1000.000000</max_nbytes>
    <generated_locally/>
    <status>0</status>
    <upload_when_present/>
    <url>http://www.enigmaathome.net/enigma_cgi/file_u        pload_handler</url>
    <signed_xml>
<name>hceyz72_2_433088_r0_0_0</name>
<generated_locally/>
<upload_when_present/>
<max_nbytes>1000</max_nbytes>
<url>http://www.enigmaathome.net/enigma_cgi/file_u        pload_handler</url>
    </signed_xml>
    <xml_signature>
bc168d03cdc30abdc2e11dbd40462f1e4189c6ad881e1b7775        a6544225a02a01
8d4ffc888196d37d22ad945c9048a6383274091a16480333b2        4e83b0abc37ea1
c544a4ff6f49d43dfdb1f175af353198a114cf709fb888ad7d        0053f94b74be56
4e00af4964574187f97db381c2d61b2d81182ef03fe60b0b1f        ece2c937c6a1fa
.
    </xml_signature>
</file_info>

- informacje pod tagami <workunit> i <result>
<workunit>
   <name>hceyz72_2_433088_r0</name>
    <app_name>enigma_m4_naval_2</app_name>
    <version_num>517</version_num>
    <rsc_fpops_est>15128278500000.000000</rsc_fpops_es        t>
    <rsc_fpops_bound>999999999999999.000000</rsc_fpops        _bound>
    <rsc_memory_bound>8388608.000000</rsc_memory_bound        >
    <rsc_disk_bound>8388608.000000</rsc_disk_bound>
    <file_ref>
        <file_name>00hc_wu_433088_r0</file_name>
        <open_name>00hc.resume</open_name>
        <copy_file/>
    </file_ref>
</workunit>

<result>
    <name>hceyz72_2_433088_r0_0</name>
    <final_cpu_time>0.000000</final_cpu_time>
    <exit_status>0</exit_status>
    <state>2</state>
    <platform>windows_intelx86</platform>
    <version_num>517</version_num>
    <wu_name>hceyz72_2_433088_r0</wu_name>
    <report_deadline>1196438332.000000</report_deadlin        e>
    <file_ref>
        <file_name>hceyz72_2_433088_r0_0_0</file_name>
        <open_name>00hc.resume</open_name>
        <copy_file/>
    </file_ref>
</result>

I to wszystko, jeśli próbka nie zaczęła się jeszcze liczyć. Miejsce w które należy wstawić te wpisy łatwo znaleźć przez porównanie zawartości obu client_state.xml. W ten sposób usunęliśmy próbkę z pierwszego Managera tak, że serwer projektu nie jest o tym powiadamiany.


Można przenieść również wszystkie próbki projektu naraz. Wtedy przenosimy wszystkie pliki i wpisy client_state.xml dotyczące próbek, jakie znajdziemy.


Jeśli chcemy przenieść próbki, których liczenie już zaczęliśmy, wtedy powyższą procedurę trzeba uzupełnić o:
- znalezienie i wycięcie katalogu z aktualnie przeliczaną próbką projektu znajdującego się w katalogu BOINC/slots (cyfra/liczba w nazwie)
- przekopiowanie go do slots drugiego Managera
- znalezienia w pliku client_state.xml części dotyczącej aktualnie przeliczanych próbek. Rozpoczyna się ona tagiem <active_task_set>.
- wyciąć część dotyczącą odpowiedniego projektu np.
<active_task>
    <project_master_url>http://abcathome.com/</project          _master_url>
    <result_name>abc_wu_1942591012000_2349000_1</resul          t_name>
    <app_version_num>103</app_version_num>
    <slot>1</slot>
    <checkpoint_cpu_time>976.023453</checkpoint_cpu_ti          me>
    <fraction_done>0.055305</fraction_done>
    <current_cpu_time>1012.005192</current_cpu_time>
    <swap_size>67563520.000000</swap_size>
    <working_set_size>68419584.000000</working_set_siz          e>
    <working_set_size_smoothed>68419584.000000</workin          g_set_size_smoothed>
    <page_fault_rate>0.000000</page_fault_rate>
</active_task>
dla pojedynczej próbki.
i wstawić ją pomiędzy <active_task_set> oraz </active_task_set> w drugim pliku client_state.xml
Tytuł: Przenoszenie próbek między Managerami
Wiadomość wysłana przez: bartsob5 w 22 Listopad 2007, 18:29
wyglada to na pracochlonna procedure ale w skrajnych przypadkach moze byc przydatne...
Tytuł: Przenoszenie próbek między Managerami
Wiadomość wysłana przez: Bober w 22 Listopad 2007, 18:30
Bynajmniej. Zajmuje to ok. 2 minuty.

Ponadto, wiadomo co wykasować nawet jak się kopiuje całego BOINCa, żeby nie było problemu zdublowanych próbek.
Tytuł: Odp: Przenoszenie próbek między Managerami
Wiadomość wysłana przez: bartsob5 w 16 Marzec 2008, 15:44
uwaga!
przy przenoszeniu moze sie zdarzyc ze czas sie wyzeruje. na szczescie w climacie, ktorego przenosilem dzieki temu poradnikowi, czas przeliczenia nie jest az tak wazny...
Tytuł: Odp: Przenoszenie próbek między Managerami
Wiadomość wysłana przez: Bober w 16 Marzec 2008, 19:51
Ale możesz powiedzieć dokładniej co się stało?
Tytuł: Odp: Przenoszenie próbek między Managerami
Wiadomość wysłana przez: bartsob5 w 16 Marzec 2008, 20:04
wykonalem wszystko jak bylo napisane....

jakie sa problemy? przy przenoszeniu kilku duzych probek, nie hurtowo, trzeba uwazac gdzie co sie wkleja w tym xmlu - zdarzylo mi sie raz wkleic pare rzeczy pomiedzy dawnymi znacznikami. niby nic sie nie stalo, ale menadzer usunal pozostale wpisy (nie raz plik mi schudl o 25%) i widzial tylko przeniesiona jednostke.
nie potrzeba przenosic slotow (przynajmniej w przypadku climate) - wyglada na to ze tam sa tylko pliki zapasowe, a przynajmniej nic sie jeszcze nie plumkalo, zweryfikuje to jeszcze jak bede probowal struzki odsylac (narazie mi sie net na lapsie zepsul)

przeniesione probki w menadzerze widnieja jako nierozpoczete, dopiero wymuszenie ich dzialania sprawia, ze uzupelnia sie kolumna 'postęp' (progress) natomiast czas biegnie od nowa. przeliczylem juz dodatkowy 1%, wiec wszystko wyglada na to ze jest ok.

zobaczymy przy odsylaniu, ale nie przewiduje zadnych bledow..

p.s. teraz jako jeden z nielicznych moge sie pochwalic probka climata o postepie 25,5% i czasem 32 minut oraz probka o postepie 21,5% i czasem 3,5 godziny :D
Tytuł: Odp: Przenoszenie próbek między Managerami
Wiadomość wysłana przez: Bober w 16 Marzec 2008, 22:11
To jasne, że trzeba uważać. Nie wiem jak jest z climatem, ale ja jak dotąd z przenoszeniem próbek innych projektów nie miałem żadnych problemów.
A nie zapomniałeś przypadkiem o tagach <active_task>?

W przypadku innych projektów trzeba przenosić sloty jeśli są próbki w trakcie przeliczania.
Tytuł: Odp: Przenoszenie próbek między Managerami
Wiadomość wysłana przez: bartsob5 w 16 Marzec 2008, 22:16
no musze przyznac ze nie doczytalem do konca tego poradnika (mialem wrazenie ze tamto odnosi sie do czegos zupelnie innego) ale intuicyjnie rowniez i to przekopiowalem...

to ze w climacie, w przeciwienstwie do innych projektow, nie trzeba kopiowac slotow to dobra informacja, bo jest mniej roboty (choc i tak jest jej sporo przy client_state.xml)

teraz tak patrze, ze boionc sam sobie zrobic nowe sloty... teraz na kazda probke przypada jeden slot, a ze obecnie mam 4 probki climate to mam 4 sloty.... ciekawie..
Tytuł: Odp: Przenoszenie próbek między Managerami
Wiadomość wysłana przez: Bober w 16 Marzec 2008, 22:28
Ja bym mimo wszystko zalecał kopiowanie slotów. Może wtedy nic byś nie pogubił.

Na każdą próbkę przypada jeden slot.