Jak czytać oznaczenia zadań

Zaczęty przez TJM, 17 Październik 2008, 18:10

TJM

Informacja głównie dla tych, którzy nie czytali informacji na forum projektu:

awgly100_1_2170434_r0_1

awgly100 lub hceyz72 - pierwsze 5 liter ciphertextu zadania oraz jego długość. Zadania hceyz72 i awgly100 to wycięte częsci tej samej wiadomości - algorytm którego używa aplikacja działa równie dobrze na krótkich tekstach jak na długich (tekst musi mieć minimalną długość około 50 liter żeby algorytm uzyskał pełną sprawność), a wycinając fragmenty zmniejszamy szanse, że w którymś z nich brakuje liter (a kto wie, czy osoba przechwytująca morsa nie zgubiła jakiejś?) - brakująca litera powoduje ogromne komplikacje, zależnie od miejsca występowania może znacznie wydłużyć liczbę iteracji potrzebnych do znalezienia plaintextu lub wręcz to uniemożliwić.
Dłuższy ciphertext zwiększa czas przeliczania zadania, przy czym wzrost czasu rośnie mniej więcej z kwadratem różnicy długości - 2 krotnie dłuższy tekst = 4 krotnie więcej czasu na przeliczenie.

Pierwsza cyferka to podtyp zadania. W zależności od testowanych rotorów, zadanie może być typu 0 (wszystkie rotory typu I-V), 1/2 (pierwszy lub drugi rotor typu VI-VIII) oraz 3 (pierwszy i drugi rotor VI-VIII). Rotory VI-VIII wydłużają czas przeliczania zadania (i przy okazji skracają czas przeliczania całego zakresu, ponieważ dla rotoru VI-VIII program musi przetestować 13 kombinacji ustawień pierścienia zamiast 26 dlatego, że mają po dwa ząbki i druga połowa ustawień powoduje konfigurację pokrywającą się z pierwszą). Zadania typu 3 są najdłuższe i aktualnie dostępne jedynie dla w miarę szybkich kompów, głównie ze względu na zmniejszanie w ten sposób obciążenia serwera.
Budowa maszyny opisana jest na wikipedii

Długa liczba To unikalny, jedyny i niepowtarzalny identyfikator konkretnego zadania, przypisany przez główny serwer (niezależny od BOINCowego ID). W idealnych warunkach każde zadanie powinno pojawić się tylko raz w BOINCowej bazie, niestety na skutek różnych błędów czasami bywa inaczej. Lokalnie wygenerowane zadania (aktualnie brak) mogą pojawiać się z tym samym ID wielokrotnie, ponieważ mają rekordy w bazie pozwalające śledzić kolejne numery iteracji i używac jednego wpisu wielokrotnie - oszczędzają w ten sposób miejsce na dysku i zwiększają wydajnośc bazy.

rX - X dla zadań z serii awgly100 i hceyz72 określa, ile razy zadanie zostało przekazane z głównego serwera do BOINCowej części (startuje od zera). Numery większe od 0 pojawiają się kiedy wystąpił jakiś błąd, najczęstrze przyczyny to
1) zadanie zbyt długo (26 dni) nie wraca z BOINCowej części serwera - może się tak zdarzyć np. jeśli kilka razy pod rząd trafi do jakiegoś wadliwego hosta który go nigdy nie przeliczy
2) wystąpił jakiś wewnętrzny błąd (zdarza się raz na jakiś czas) i powstała jakaś niezgodność między danymi w obydwu bazach, w takim przypadku główny serwer projektu nie przyjmie zadania i jest ono przekazywane do przeliczenia jeszcze raz. Może się również zdarzyć, że powstanie błąd który spowoduje zapętlenie zadania i nigdy nie zostanie ono przyjęte, w związku z czym za każdym razem będzie wysyłane ponownie do przeliczenia, dlatego zadania z rX > 3 warto zgłaszać, chociaż teoretycznie nigdy nie powinny się one pojawić.
Dla innych zadań (których akurat w tym momencie nie ma), tych które ja nazywam lokalnymi (wygenerowane lokalnie, bez ściągania z serwera M4) rX wcale nie oznacza, że wcześniej były jakieś błędy - to po prostu kolejny numer iteracji, który będzie rósł aż do docelowej wartości (zazwyczaj 50).

Zadania awgly100 i hceyz72 z rX > 0 wysyłane są jedynie do hostów oznaczonych jako reliable (turnaround_time < 3 dni i bardzo niska liczba błędów), w ten sposób skraca się czas potrzebny do ich ponownego przeliczenia i serwer szybciej pozbywa się ich z bazy (lub ewentualnie szybciej na wierzch wypływają błędy :D)


Ostatnia cyferka - to już klasyczne BOINCowe oznaczenie replikacji zadania, zaczyna się od zera i rośnie wraz z każdym ponownie wysłanym zadaniem. _1 nie są rzadkością, wystarczy że ktoś anuluje zadanie lub komuś sie wysypie, _2 już może oznaczać potencjalne problemy (zależnie skąd wzięła się ta dwójka). Zadania które były replikowane ze względu na błędy wysyłane są tylko do reliable hostów, w pozostałych przypadkach wysyłane są do reliable hostów dopiero przy drugiej replikacji.




W razie jakiejś pilniejszej sprawy - jestem często dostępny na kanale IRC B@P, na forum czasami zapominam zajrzeć lub nie mam czasu.

emik

dzięki TJM - trochę mi rozjaśniłeś te oznaczenia  :parrrty: