Tworzenie projektu... czyli powstanie i ewolucja Enigma@Home

Zaczęty przez TJM, 27 Lipiec 2007, 16:22

TJM

Strona 31 -> http://plikens.no-ip.net/723xec32x/enigma0.76windowsintelx86.zip

Normalna aplikacja skompilowana pod linuksem kompilatorem Intela była szybsza od tej. Ta nowsza jeszcze nie testowana pod linuksem, ciekawi mnie czy kompilator Intela jeszcze coś z niej wyciśnie, na dniach przetestuję.

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

TJM

Żeby odpocząć trochę od aplikacji i dłubania w serwerze, bo łeb od tego boli %-) Mam zamiar wziąść się za coś innego i przez parę dni wyłapać wszystkie stats sajty, uotd sajty itp które korzystają z niewłaściwych URLi. Powoduje to niepotrzebny bałagan, problemy i marnowanie transferu serwera.
Problem w tym, że niektóre sajty ciężko zidentyfikować. Co to może być np.

Cytat
210.97.238.225 - - [24/Nov/2008:22:06:38 +0100] "GET /enigma/stats/db_dump.xml HTTP/1.1" 200 701 "-" "Java/1.5.0_15"
210.97.238.225 - - [24/Nov/2008:22:06:39 +0100] "GET /enigma/stats/tables.xml HTTP/1.1" 200 553 "-" "Java/1.5.0_15"

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

Primoza

Koreańce liczą u Ciebie bombę atomową  ;D http://whois.domaintools.com/210.97.238.225

TJM

Nie idzie jednak znaleźć, co to za sajt. Statystyki pobiera regularnie kilka razy dziennie, przy tym zwraca uwagę na timestampy w pierwszym pliku .xml i jeśli są stare nie pobiera nowych. Obecnie cały ich transfer przekierowałem tam gdzie powinien być, jeśli to co pobiera dane nie obsługuje http 301 moved permamently, to ich strata.

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

TJM

No ze statsami chyba wszystko doprowadzone do porządku, przynajmniej na razie tak wygląda. Pozostała niewyjaśniona kwestia niezaliczania UoTD, a widzę że skrypt regularnie odwiedza stronę.

Za to teraz wkurza mnie to:

Cytat
Wyświetlenia
20 Zapytania, które najczęściej wywołują Twoją witrynę oraz procent najczęstszych 20 zapytań reprezentowanych przez każde wyszukiwanie.

1   29%   gratis   872
2   13%   "enigma home"   1
3   8%   sexpicture   88
4   7%   enigma at home   1
5   5%   picture   850
6   3%   free sex   844
7   2%   enigmaathome   1
8   2%   sex picture   197
9   2%   sexvideo   554
10   2%   sexo   630
11   2%   indian free sex videos   97
12   2%   enigma home   1
13   2%   nitwor spid   17
14   2%   sexvideó   116
15   2%   pornvideo   126
16   2%   sex vıdeo   390
17   1%   videox   112
18   1%   sexvideok   233
19   1%   pamela anderson videosu   504
20   1%   "www sexvideo"   396


Za każdym razem kiedy pokasuję profile (albo całe konta) spamerom, muszę zaczynać od nowa i przeglądać wszystkich userów/profile, bo niektóre konta zakładane są dużo wcześniej zanim zostaną wykorzystane do niecnych celów.

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

TJM

Kto ma chwilę niech zresetuje profil, bo odkryłem potencjalną przyczynę niezaliczania UoTD do statystyk. Na maila niestety nikt jeszcze nie odpisał, tak więc nie wiem czy na pewno problem jest rozwiązany, dowiemy się jak ktoś dostanie UoTD, konkurencja jest bardzo mała.

Teoretycznie miałem ukończone skrypty 'wyścigowe' ale wychodzi na to, że żeby to miało ręce i nogi muszę trochę zmienić podejście do generowania samych statystyk - najbezpieczniej jest stworzyć dodatkową tabelę i wpisywać do nich ID 'wyścigowych' WU w momencie kiedy były tworzone, a przy walidacji sprawdzać czy to wyścigowy WU i ewentualnie dopisywać punkty do statystyk wyścigowych. Inny sposób to wykorzystanie timestampów, na ich podstawie da się określić kiedy dany rezultat był stworzony i wysłany/odebrany (z tym chyba nawet mniej roboty).
Robiłem trochę wewnętrznych testów i wychodzi na to że inne podejścia kończyły się niezaliczaniem WU jako należących do wyścigu jeśli rezultat był wysłany w czasie wyścigu, a workunit stworzony był przed, albo jeśli rezultat był tworzony przed wyścigiem a wysłany w trakcie.  Na szczęście przeróbka z uwzględnieniem zmian to zaledwie parę dni.

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

Troll81



Can-D

Cytat2008-12-02 11:35:17|Enigma@Home|Sending scheduler request: To fetch work.  Requesting 31705 seconds of work, reporting 2 completed tasks
2008-12-02 11:35:27|Enigma@Home|Scheduler request succeeded: got 0 new tasks
2008-12-02 11:35:27|Enigma@Home|Message from server: No work sent
2008-12-02 11:50:45|Enigma@Home|Sending scheduler request: To fetch work.  Requesting 32891 seconds of work, reporting 0 completed tasks
2008-12-02 11:50:50|Enigma@Home|Scheduler request succeeded: got 0 new tasks
2008-12-02 11:50:50|Enigma@Home|Message from server: No work sent

Widzę,WU leżą na serwie,lecz na żadną z maszyn niechce mi pobrać do bufora.Coś może wiadomo dlaczego tak się dzieje?


TJM

Z tego samego powodu co zwykle, dużo priorytetowych zadań do wysłania, a takie idą tylko do hostów z average turnaround < 3 dni.
To jest moja zmora, bo jedyne co mogę zrobić w takim wypadku to zwiększyć bufor do 10 dni na swoich maszynach, żeby zassać ile się da takich zadań.

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

KrzychuP

Zostałem dziś UOTD - co wyświetlił MyBoinc
Ciekawym, czy się utrzyma i zaliczy mi

Bober

Oooo. Enigma została wybrana PotM BOINC Synergy  :D

Akira

Cytat: TJM w 27 Listopad 2008, 16:32
Za każdym razem kiedy pokasuję profile (albo całe konta) spamerom, muszę zaczynać od nowa i przeglądać wszystkich userów/profile, bo niektóre konta zakładane są dużo wcześniej zanim zostaną wykorzystane do niecnych celów.
Niecne cele czyli rozsyłanie spamu po wiadomościach prywatnych?

Troll81

Akira czemu liczysz pod flagą ONZ zamiast naszego cudownego kraju??

TJM

Instalnąłem w końcu 64 bitowy system - ubuntu pod Wubi, po wielu godzinach walki z moim starym kontrolerem RAID w końcu poszło.
64 bitowy system + enigma wygląda bardzo obiecująco. Na dzieńdobry uruchomiłem pierwszą z brzegu aplikację którą miałem pod ręką - PIII 32bit. Czas wykonywania w porównaniu z najlepszym, eksperymentalnym exekiem pod Windows spadł o jakieś pół minuty, a aplikacje Win/inline cd2/ i Linux/PIII dzieli prawdopodobnie wydajnościowa przepaść, na korzyść windowsowej. Na dniach zassam kompilator Intela i zobaczę, czy da radę przygotować Linux/c2d inline exeka. Jeśli będzie jakiś zysk prędkości, to dłubnę kiedyś wolnym czasem w źródłach, bo na pewno da się część obliczeń trochę dopalić na 64 bitach (przynajmniej jedną funkcję).

EDIT: ups sorry pomyliłem się. Golas PIII 32bit na ubuntu 64 dyma Windowsowego Exeka nie o 30s tylko o minutę 30, z 16 minut czas spada do 14:30 na E7200@4.05GHz

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

AiDec

Zatem czeka nas zacna przyszlosc :). Trza sie tylko Linuxa naumiec ;)



Bo jest paru kumpli :),
Bo jest parę w życiu dobrych chwil...


Moja wizytowka i sygnaturka

lukaszde

http://www.bytereef.org/m4-project-blog.html  W koncu jakis news ;) Gratulacje  ;D

TJM

Ma ktoś z was Maca %-) ?  Potrzeba skompilować w końcu nowe aplikacje, zwłaszcza Macowy wrapper jest skopany tak że praktycznie do niczego się nie nadaje. Osobnik który się tym wcześniej zajmował jest obecnie bardzo ciężko osiągalny, a kupować Maca tylko do kompilacji jakoś specjalnie mi się nie widzi.
Zwłaszcza, że nigdy nie miałem okazji na tym pracować, jedynie na uczelni widziałem Mace z odległości ~3m - bliżej takiego sprzętu chyba nigdy nie byłem.

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

TJM

Zainstalowałem dziś pod linuksem 11-stą odsłonę kompilatora Intela. Niestety po paru godzinach zabawy z różnymi opcjami i wersjami kodu uzyskałem wynik tylko symbolicznie szybszy od starej aplikacji PIII z gcc 3.2. Podejrzewam więc, że obecne exeki to kres możliwości kompilatorów i bez poważnych modyfikacji źródeł szybciej już nie będzie.

Gdyby komuś miało się to przydać, tu jest 64 bitowy exek pod linuksa http://plikens.no-ip.net/759xqs7r7/enigma.tgz


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

Machloj

hem...TJM - próbuje rozpakować to: http://plikens.no-ip.net/759xqs7r7/enigma.tgz i mi wyskakuje:
tar: This does not look like a tar archive
tar: Skipping to next header
tar: Error exit delayed from previous errors

wtf?? jak inaczej mogę to rozpakować?

TJM

Uploadnę jutro (jak nie zapomnę) poprawioną wersję. Ta była robiona jakimś debianowym tarem który miał chyba jakiegoś buga, bo widziałem że niedawno nowa wersja pojawiła się w repozytorium, a ostatnio nawet winrar burzył się przy próbie rozpakowania jakiegoś archiwum które przygotowywałem na tym systemie.
Chociaż to archiwum chyba było akurat sprawne, możliwe że walnęło się przy uploadzie.

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

Cytat: Machloj w 18 Styczeń 2009, 02:29
hem...TJM - próbuje rozpakować to: http://plikens.no-ip.net/759xqs7r7/enigma.tgz i mi wyskakuje:
tar: This does not look like a tar archive
tar: Skipping to next header
tar: Error exit delayed from previous errors

wtf?? jak inaczej mogę to rozpakować?

wszystko jest ok - Machlojku musisz to rozpakować tak:


gzip -d enigma.tgz

tar -xf enigma.tar


i już dostaniesz aplikację :)


Machloj

dzięki wielki emik :) już śmiga - ciekaw jestem rezultatów

TJM

Rezultaty nie są zbyt zachwycające, przynajmniej na sprzęcie na którym testowałem. Różnica między tą wersją, a najszybszą Win32 sięga ledwo paru procent.
Myślę, że dałoby się przerobić program tak, żeby korzystał z 64 bitów przynajmniej częściowo (dałoby się np. dwie operacje dzielenia w pętli wymienić na duże, 64 bitowe liczby - dzielenie jest tylko po to, żeby utrzymać się w 32bitowym zakresie, ale nie sprawdzałem jeszcze jak duże przeróbki w całym programie trzeba byłoby zastosować).
Niestety każda większa modyfikacja wymaga testu poprawności algorytmów na znanych rozwiązaniach, a pełny test zajmuje ładne 2-3 tygodnie na średnim kompie.

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



TJM

Zarzuć linkiem do rezultatów, to zobaczymy dlaczego.

Nawiasem mówiąc, pojawił się ostatnio dość poważny problem natury sprzętowo-sieciowej. Jeszcze nie w pełni zdiagnozowany - objawia się głównie tym, że łącze do serwera jest znacznie bardziej zapchane niż powinno. Normalnie router korzysta z QoS i tablic priorytetów, żeby odpowiednio rozdzielić transfer - upload/download server, scheduler - high priority, strona i forum - medium, statyczne pliki zasysane poprzez proxy - low, strona i forum dla wszystkich robotów - lowest. Niestety chyba router zaczął szwankować, bo podział ten działa znacznie gorzej (lub wcale). No chyba, że to coś na linii nie tak - ale to już technik z tepsy musi zobaczyć. W każdym razie do czasu wyjaśnienia (lub zakupu nowego routera, jeśli staremu coś odbija) łączność będzie lekko zakłócona.


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

http://www.enigmaathome.net/result.php?resultid=2828942


TJM

can't open job file ../../projects/www.enigmaathome.net/job_1.27.xml - podpada to raczej pod jakieś błędy app_info.xml

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

app_info brałem z tematu na forum o optymalkach

<app_info>
   <app>
      <name>enigma_m4_naval_2</name>
      <user_friendly_name>Enigma 0.76-Opt</user_friendly_name>
   </app>
   <file_info>
      <name>wrapper_5.22_i686-pc-linux-gnu</name>
      <executable/>
   </file_info>
   <file_info>
       <name>enigma_0.76_i686-pc-linux-gnu</name>
       <executable/>
   </file_info>
   <file_info>
       <name>00trigr.naval</name>
   </file_info>
   <file_info>
       <name>00bigr.naval</name>
   </file_info>
   <file_info>
       <name>ciphertext2</name>
   </file_info>
   <file_info>
       <name>job_1.15.xml</name>
   </file_info>
   <app_version>
      <app_name>enigma_m4_naval_2</app_name>
      <version_num>520</version_num>
      <file_ref>
         <file_name>wrapper_5.22_i686-pc-linux-gnu</file_name>
         <main_program/>
      </file_ref>
      <file_ref>
         <file_name>enigma_0.76_i686-pc-linux-gnu</file_name>
      </file_ref>
      <file_ref>
         <file_name>00trigr.naval</file_name>
         <copy_file/>
      </file_ref>
      <file_ref>
         <file_name>00bigr.naval</file_name>
<copy_file/>
      </file_ref>
      <file_ref>
         <file_name>ciphertext2</file_name>
<copy_file/>
      </file_ref>
      <file_ref>
         <file_name>job_1.15.xml</file_name>
         <open_name>job.xml</open_name>
      </file_ref>
   </app_version>
   <app>
      <name>enigma_m4_2</name>
      <user_friendly_name>Enigma 0.76b-Opt</user_friendly_name>
   </app>
   <file_info>
      <name>wrapper_5.22_i686-pc-linux-gnu</name>
      <executable/>
   </file_info>
   <file_info>
       <name>enigma_0.76_i686-pc-linux-gnu</name>
       <executable/>
   </file_info>
   <file_info>
       <name>job_1.16.xml</name>
   </file_info>
   <app_version>
      <app_name>enigma_m4_2</app_name>
      <version_num>522</version_num>
      <file_ref>
         <file_name>wrapper_5.22_i686-pc-linux-gnu</file_name>
         <main_program/>
      </file_ref>
      <file_ref>
         <file_name>enigma_0.76_i686-pc-linux-gnu</file_name>
      </file_ref>
<file_ref>
         <file_name>job_1.16.xml</file_name>
         <open_name>job.xml</open_name>
      </file_ref>
   </app_version>
</app_info>


TJM

No ale definitywnie coś z nim jest nie tak, skoro nie można znaleźć pliku job_1.27 - anonymous platform z takiego pliku nie korzysta, za to korzysta domyślna aplikacja. Prawdopodobnie coś się powaliło i BOINC sam pokasował pliki, przez co zadania się sypnęły. Z jakiegoś powodu to dość częsta sytuacja przy podmiankach.


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

Machloj

hmm...jaki jest średni czas liczenia awgly? bo u mnie po 25min jest dopiero 9% - to normalne?

TJM

Zależy jaki proc i który typ WU, najdłuższe liczą się trochę ponad 1h na procach 3,5GHz+

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

Machloj

T9300 - 2,5GHz - to coś z tym moim ubuntu jest nie tak - najpierw liczyłem WCG - ale próbki mi ponad 20h liczyło (inni po 4-5h), teraz po godzinie próbki awgly100_2_3622618r0_0 mam 21% - jak to działa na linuxie? trzeba może jakieś sterowniki zaktualizować sprzętowe czy jak?

TJM

Zamiast martwić się sterownikami, odpal top w konsoli i zobacz co tam siedzi i wciąga proca.

Tak to mniej więcej wygląda



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

Machloj

zainstalowałem sobie conky - i cały czas jak sprawdzałem to proces enigmy i wcg po 45-50% (dwa rdzenie), jak będę miał dostęp do kompa z linuksem to sprawdzę w konsoli

TJM

Pojawił się jakiś bliżej niezidentyfikowany problem z assimilatorem/validatorem - gdy projekt czasami w impulsie rozpędza się powyżej 2000 Athlonów elektronicznych %-) validatory wyższego levelu potrafią losowo niektóre zadania oznaczać jako niepoprawne. Na chwilę obecną chociażbym na rzęsach stanął nie mam zielonego pojęcia dlaczego tak jest, więc tymczasowo wyłączyłem odejmowanie punktów za takie zadania, ale status invalid pozostaje. 

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

TJM

Korzystając z tego, że moc obliczeniowa projektu ostatnio znacznie podskoczyła (zapewne ma to związek ze spadkami punktacji w innych %-)) zmieniłem trochę ustawienia serwera, żeby ściągał więcej zadań hceyz72 niż awgly100. To dlatego, że tych pierwszych zostało bardzo mało, na dodatek większość to najkrótszy typ 0. Przy pomyślnych wiatrach (gdyby prędkość się utrzymała) koniec tego keyspace nadciągnie w ciągu 1-1,5 miesiąca.

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

TJM

Kontrolę nad ściąganymi z serwerów M4 zadaniami pomału przejmuje bug po stronie serwera, nawet nie tyle bug co po prostu słaba wydajność bazy danych w porównaniu do zapotrzebowania skryptów na szybkość - kilka skryptów tworzących wewnętrzne statystyki (np. do oszacowania ile zadań ściągnąć i jakich) działa obecnie tak wolno, że zaczynają się zderzać ze sobą w czasie co jeszcze obniża ich prędkość działania aż do momentu kiedy padają od timeouta.
Problem niestety jest dość poważny bo na chwilę obecną nie widzę sposobu na przyspieszenie skryptów, a możliwości upgrejdu serwera niestety się już skończyły.

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

lukaszde

Czy zmniejszenie czestotliwosci odswiezania statystyk z 5 do 15 lub 30 minut bedzie mialo duzy wplyw na wydajnosc serwera ? Tak na prawde nikt co 5 minut nie przeglada statystyk jak sie zmieniaja.
Ewentualnie usuniecie jakiejs pozycji ktora strasznie obciaza skrypt aktualizacji stat.

TJM

Zwykłe statystyki nie są w ogóle problemem, one są tworzone na żywo z tabel host/user/teams a te tabele są malutkie.
Problemem są różnego rodzaju wewnętrzne statsy służące do autopilotowania serwera (kiedy nie ma problemów wszystko chodzi z automatu, można śmiało zostawić bez doglądania). Te są generowane częściowo z głównej bazy danych (tu jeszcze nie ma dużego zonka, bo ta baza jest na osobnym serwerze i nie jest potrzebna w czasie rzeczywistym, mimo że jest ogromna na razie nie ma problemu) oraz z tabel result/workunit serwera BOINC. Tabela result jest największym wąskim gardłem, bo nie dość, że zawiera wiele rekordów (wszystkie zadania z ostatnich 2 tygodni, w tym momencie podchodzi pod coś koło 450 tysięcy) to na dodatek rekordy są duże objętościowo, sama tabela w porywach potrafi spokojnie przekroczyć parę GB wielkości.
Aktualnie myślę nad wywaleniem paru pól z XMLami z tabeli result do osobnej, muszę tylko zobaczyć jak wiele zmian po stronie serwera trzeba wprowadzić (bo niestety powstanie różnica w stosunku do oficjalnej wersji i trzeba będzie zmiany wprowadzać przy każdym upgrejdzie kodu), oraz przeprowadzić symulację opłacalności takiej zamiany - z jednej strony wszystko co nie potrzebuje tych pól będzie chodzić znacznie szybciej bo wielkość tabeli pewnie spadnie 10-krotnie; z drugiej strony wszystko co potrzebuje tych danych będzie wykonywać po dwa zapytania.

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