O co biega w ustawieniach przetwarzania Rosetta@home ?

Zaczęty przez Krzysiak, 11 Czerwiec 2011, 10:27

Krzysiak

Witam tak jak w temacie a w szczególności o co chodzi w tych 3 opcjach ?3

Percentage of CPU time used for graphics
Number of frames per second for graphics
Target CPU run time

Jakie wartości poustawiać ?

I czy projekt ten obsługuje GPU od ATI przez OpenCL lub w jakiś inny sposób


>>Moja szczegółowa sygnatur<< %)                                      >> Spis moich odkrytych liczb pierwszych << :whistle:

Troll81

Percentage of CPU time used for graphics - tu ustaw jak lubisz wygaszacz ekranu :D tak żeby ci nie przycinał. Ale to tylko dla tych co lubią wygaszacze. Ja nie używam bo zajmuje to moc procka....
Number of frames per second for graphics - tu podobnie.
Target CPU run time - opcja dla tych co maja mało stabilny sprzęt. Rozia lubi bardzo stabilne kompy. Możesz zatrzymać się na checkpoincie i kto inny dokończy za ciebie próbkę.

GPU chyba jeszcze nie obsługuje.

apohawk

Cytat: Troll81 w 11 Czerwiec 2011, 15:47Target CPU run time - opcja dla tych co maja mało stabilny sprzęt. Rozia lubi bardzo stabilne kompy. Możesz zatrzymać się na checkpoincie i kto inny dokończy za ciebie próbkę.
Domyślnie 3 godziny. Może zakończyć się wcześniej jeśli uzna, że to już wszystko w temacie lub że nie zdąży przeliczyć kolejnej serii wariacji. Np. jeśli target jest 3h, a po 2h przeliczyło tylko jedną serię, to kończy. Może też liczyć dłużej, np. 4h lub 6h, jeśli cały czas przelicza jedną serię wariacji. Długość takiej serii mocno zależy od serii WU.
Ustaw jak lubisz. Nie powinno mieć znaczenia dla punktów. Dla celów naukowych znaczy to tyle, że im dłuższy target, tym dokładniej przeliczasz daną próbkę. A czy lepiej dla nauki torturować jedną WU całą dobę, czy szybko je przesiewać, tego już nie przewidzimy.
No good deed goes unpunished.

Aegis Maelstrom

#3
Co do grafik - jak napisał Troll, to są ustawienia dla wygaszacza.

Target CPU run time - to jest po prostu docelowy czas przeznaczony na przeliczenie jednej próbki. Jeśli przeznaczysz na liczenie WU np. 8 godzin, to BOINC będzie starał się liczyć maksymalnie tyle czasu. I tak, jeśli np. jeden model w WU zajmuje ca. 3 godziny, to program policzy dwa modele i po tych ca. 6 godzinach odeśle próbkę. Jeśli modele są półgodzinne, to po np. 16 skończonych modelach odeśle WU itd.

Generalnie im dłużej przeliczana próbka tym więcej punktów, i statystycznie nie ma znacznia czy liczysz próbki krótko czy długo. Zespół Rosetty prosi, by liczyć możliwie długo, bo to im obciąża mniej serwer (np. wysyłają Ci i odbierają próbkę dwa razy rzadziej). Jednocześnie przy dłuższych próbkach robisz mniejszy transfer do i z Internetu.

Tutaj uwaga: jeśli wydłużasz czas dla próbki i masz wiele próbek na maszynie, to pamiętaj, że to ustawienie będzie działać już dla próbek ściągniętych. Dlatego musisz sprawdzić: czy zdążysz odesłać próbki, czy jednak musisz wydłużać czas stopniowo.

A na deser, daczego statystycznie długie i krótkie próbki dają średnio tle samo punktów? Tu trzeba wiedzieć jak działa Rosetta.
Każda próbka (Working Unit) zawiera zadanie obliczeniowe - zestaw informacji o białku, na podstawie których program szuka metodą probabilistyczną (Monte Carlo) struktury przestrzennej. Metoda Monte Carlo umożliwia olbrzymią oszczędność mocy obliczeniowej (tak, Rosetta wymaga olbrzymich mocy, ale modelowanie deterministyczne byłoby o rzędy wielkości bardziej pracochłonne!) oraz łatwiejszą pararelizację zadania (a więc rozpisanie zadań na taką platformę jak BOINC). Za każdym przeliczeniem program Rosetty losuje sobie pewne wartości (np. początkowe) i dlatego każdy wygenerowany model jest nieco inny. Im więcej czasu poświęcisz na próbkę, tym więcej modeli zbudujesz i odeślesz; a za każdy model jest określona dla próbki liczba punktów.

Zespół Rosetty oczywiście najbardziej interesują najlepsze modele - z najniższą energią, teraz chyba też z najlepszym RMSD... Dlatego to co pisał apohawk o dokładniejszym liczeniu to prawda, ale w takim sensie, że dłużej licząc próbkę nie tyle dokładniej liczysz model, co liczysz więcej modeli i masz większą szansę na znalezienie najlepszego rozwiązania.

Powinieneś też wiedzieć, że serwer wysyła wiele (o ile wiem identycznych) próbek. Dlatego jeśli Ty liczysz dłużej to efekt jest (przynajmniej w teorii) taki, jakby np. liczyła to inna maszyna. W ten sposób serwer Rosetty jest mniej obciążony albo próbka policzona jest dokładniej.

Ufol

Czegoś tu nie pojmuję. Domyślnie są ustawione trzy godziny. Przestawiam na jedną dobę. Teraz próbka będzie się mielić ośmiokrotnie dłużej. Zatem i punktów mam osiem razy mniej. Z kolei gdyby takie postępowanie nic nie dawało twórcom projektu, to nie tworzyli by możliwości takiej regulacji. Na czym zatem polega ten haczyk? Jak mieli się 24 godziny to co oni z tego będą mieć?

apohawk

Punktów masz proporcjonalnie do wykonanej roboty. Jak mielisz 8 razy dłużej, to dostajesz 8 razy więcej punktów, mniej więcej.
Haczyk jest w tym, że obliczenia rosetty nie są deterministyczne. Z tego powodu też quorum wynosi 1. WU nie jest wysyłane do innych liczących, ani wyniki porównywane, bo nie miałoby to sensu.
W każdym WU zwracasz co najmniej 1 wynik dla przydzielonych danych. Czasami potrafi to zająć więcej niż domyślne 3 godziny, czasami w tym czasie zwrócisz kilkaset wyników. Każdy z tych wyników może mieć znaczenie dla projektu. Skracając bądź wydłużając czas obliczeń WU decydujesz tylko ile czasu poświęcisz jednemu zagadnieniu, zanim przejdziesz do następnego. Punkty dostajesz za liczbę wyników w jednostce pracy oraz trudność, czasochłonność wyliczenia jednego wyniku.
To tak w skrócie. Mam nadzieję, że w miarę przystępnie.
No good deed goes unpunished.