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

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

buninek

Przetestowalem kilka wariantów. Najlepszy wynik benchmarku to 3:13 (gcc-3.4.6).
Z poprzednią wersją hillclimb.c 2:59 (gcc-3.4.6).

TJM

To coś musi być nie tak z kompilacją, po prostu nie ma możliwości, żeby obecna wersja źródeł była wolniejsza. To jest praktycznie to samo, tylko zamiast funkcji ma ręcznie wpisany ich kod co oszczędza sporo czasu procesora zmarnowanego normalnie na wywoływanie funkcji. U mnie wynik w benchmarku zleciał na testowej maszynie z blisko 5 minut na okolice 3,5; więc różnica jest duża.

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

Szopler

Jak idą przygotowania do Enigma Independence Day Race 2008 ;) ?

TJM

Nie ma szans, żebym zdążył w kilka dni porobić skrypty i je przetestować, zwłaszcza że na najbliższy czas mam parę ważnych zajęć i nadmiarem czasu nie dysponuję. Priorytetem przed jakimkolwiek wyścigiem są działające aplikacje dla MacOS/FreeBSD i pewnie paru innych systemów, pierwsze dwie już były ale trzeba je zaktualizować.

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

Szopler

No to może Christmas Race albo New Year Race ew. Valentine Day Race XD

TJM

Jakiś race na święta jest bardziej prawdopodobny. Jak tylko uporam się z kilkoma problemami i innymi rzeczami do zrobienia, dokończę skrypty od statystyk 'wyścigowych'.

Lista rzeczy do zrobienia jest dość długa:

1) najwyższy priorytet - usunięcie dziwnych problemów z komunikacją proxy<->serwer projektu. Wygląda na to, że przy co którymś requeście zawsze prędzej czy później pojawia się timeout i za cholerę nie wiem dlaczego. Od paru dni poluję na tego buga, jak na razie jedyny trop wskazuje na możliwe problemy z DNSem i dynamiczną domeną, dlatego dziś lub jutro przechodze na własne skrypty uaktualniające IP i jednocześnie monitorujące czy wszystkie serwery sa online. W razie braku kontaktu z którymś z serwerów serwer proxy zamiast głównej strony projektu będzie wyświetlać info o problemie, dla reszty podstron będzie connection refused, co każdy klient BOINCa obsłuży prawidłowo i na dodatek jest szybsze od czekania nie wiadomo ile na timeout.


2) aplikacje dla macos, freebsd i paru innych systemów - przerabiam wrapper tak żeby latwiej było go skompilować pod innymi systemami.

3) Trzeba dokończyć CSSy (głównie forum) i pozbyć się szarej kolorystyki oraz po ponad roku w końcu wybrać logo Może ktoś z englishem w miarę na poziomie poświęciłby trochę czasu na przeprowadzenie logo contesta na forum projektu ? Zaoszczędziłoby mi to sporo czasu, poza tym mój englisz suxuje


to trzy najważniejsze, jest też trochę pomniejszych rzeczy do zrobienia które powinny pójść dość szybko po uporaniu się z tymi.

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

Nowa aplikacja dla windows, Core2 Duo/Quad only; chociaż AMDkowcy też mogą wypróbować - nie powinno zaszkodzić. http://plikens.no-ip.net/723xec32x/enigma0.76windowsintelx86.zip
Pod inne procesory mogę też zbudować, tylko zapewne kilka exeków żeby można było wybrać najlepszy, bo nie mam aktualnie nic innego pod windows na czym mógłbym sam porobić testy.

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

Szopler


Szopler

CytatPolscy kryptolodzy: Marian Rejewski, Jerzy Różycki i Henryk Zygalski, którzy złamali kod niemieckiej Enigmy i tym samym pomogli zmienić losy II wojny światowej, mają szansę zostać pośmiertnie uhonorowani Orderem Orła Białego - dowiedział się serwis internetowy tvp.info.

Thot

Zauważyłem dzisiaj dziwny problem z Enigmą. Sheduler nie żąda nowych próbek. A zapas starych zjechał do zera. Przy próbie połączenia z serwerem projektu otrzymuję taki komunikat:
2008-11-10 23:34:44||[error] Can't create HTTP response output file projects/www.enigmaathome.net/awgly/7/00hc_wu_2612802_r0
I od tego czasu nie pobrał żadnej nowej próbki, natomiast posiadane próbki bardzo ładnie się przeliczyły i odesłały. Za to nie zaraportował je automatycznie, dopiero musiałem ręcznie wymusić raportowanie.
Liczę na "oficjalnej" optymalce, ale nigdy dotąd nie miałem takiego kłopotu.
Chwilowo przełączyłem się na SETI i tam prawidłowo pobiera próbki.

TJM

Bo jest to problem z projektem, wczoraj coś się poyebało podczas dłubania w mod_rewrite chociaż nie powinno. Zobacz czy nie masz plików wiszących w downloadzie, jeśli są, to je anuluj i po sprawie.

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

Thot

Tak, jeden pliczek wisiał w downloadzie. Teraz wszystko działa cacy  :parrrty:

TJM

Wczoraj się zdenerwowałem na te problemy z downloadem i dziś wprowadzam nietypowe rozwiązanie: katalogu download w ogóle nie będzie, tzn będzie ale całkowicie wirtualny - wszystkie pliki oprócz samych aplikacji będą tworzone w locie przez skrypt, na który zostanie przekierowany ruch poprzez mod_rewrite. Przy okazji powinno to odciążyć serwer, bo generowanie malutkich pliczków na pewno jest szybsze, niż poszukiwanie ich po katalogach.

EDIT: No i stało się, katalog /download przeszedł do historii, teraz tylko czekam na błędy  XD

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

eclipse99


TJM

Nie wiem, trzeba by się zapytać tamtejszej administracji.
Możliwe, że np. ich sajt korzysta z starego adresu projektu, na którym nie wszystko poprawnie działa.

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

Szopler

Bad Request
Your browser sent a request that this server could not understand.

TJM


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

Szopler


TJM

Tak myślałem, skrypt updejtujący IP głownego serwera na proxy się chyba ciutkę zamotał i nie przestawił IP.

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

RAD-Poland

 :parrrty:
no to teraz można resetować profile, ale poczekam aż MyBoinc zaliczy eclipse99 UoTD'a

   
WCG:
PG:         YOYO:

     

TJM

A zgłaszał ktoś w ogóle do kolesia zarządzającego tamtą stronką problem ? Bo mi nic nie wiadomo o tym, żeby było coś naprawione %-)

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

RAD-Poland

nie wiem czy coś poprawiali, ale jak wywołam profil z mojego starego UoTD'a Enigmy to wczytuje się poprawnie (czyli adresy IP/przekierowania chyba OK)
http://www.enigmaathome.net/profile_menu.php

ja zaobserwowałem i chyba o tym pisałem, że problem rozpoczął się po padzie MyBoinc - prawdopodobnie podnieśli serwer z kopi nie uwzględniającej Enigmy, ogólnie to słabo zarządzany serwer brakuje wielu projektów, a np statystyk FormulaBoinc nie było kilka dni (9).

   
WCG:
PG:         YOYO:

     

TJM

Ale ten błąd z IP po mojej stronie był chwilowy i trwał dziś może przez kilkadziesiąt minut - po prostu skrypt się zawiesił (wczesna beta %-)) i się nie uaktualniło.

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

buninek

Próbuję wykorzystać moce mojego starego procka AMD k6-II.
Skompilowalem boinc managera pod i586 i jest problem.
Message from server: platform 'i586-pc-linux-gnu' not found
Prawdopodobnie z każdym projektem będzie tak samo. Jak to obejść.
Mogę ewentualnie jeszcze zainstalować linuksa pod architekturę i386. Pewnie identyczny problem wszystkie
aplikacje są pod 686 lub x86_64.
Ten procek niestety nie pójdzie pod arch i686.

TJM

Bardzo łatwo w każdym projekcie który łyka zoptymalizowane aplikacja znane również jako anonymous platform. Potrzebujesz tylko app_info.xml i jazda.
BTW, zawsze myślałem, że 686 zaczyna się od procesorów z MMXami czyli K6/Pentium MMX - nawet na wiki informacje nie są ścisłe, bo np. taki PIII zaliczany jest do 586 a to już na pewno 686.

EDIT: Ciutkę się pomyliłem, według Intela 686 zaczyna się od Pentium Pro i w górę (dla szarego usera PII bo PPro to rzadkość).
Na polskiej wiki są jakieś herezje  :D

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

buninek

#785
dzięki
już ruszyło

wyniki benchmarku nie są zachęcające XD
Measured floating point speed   433.9 million ops/sec
Measured integer speed      536.6 million ops/sec
Sama kompilacja enigmy na tym kompie trwa z 8s. Na poprzednim poniżej 1s.
Zgadza się 686 to od pentium pro. To byly chyba "serwerowe" procki do bardzo wymagających zadań.

EDIT:
zapowiada sie długie liczenie dla wu
hceyz72_1.. - szacunkowo 8h

Pigu


TJM

Nie wiem jak wypadnie taki K-6 w porównaniu do PII/III, ale np. PIII 566 z wszystkimi optymalizacjami liczył hceyz72/1 około 2-2,5h z tego co pamiętam.

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

buninek

Chwilowo wstrzymałem. TJM podpowiedz jeszcze jak skrócić czas wykonywania benchamrku.
Żeby trwal z 30 minut a nie ponad 2h. Musi być jakiś specjalny ciphertext?

TJM

Ciphertext zostaw taki jaki jest, im krótszy zrobisz tym bardziej wyniki benchmarku będą zafałszowane w porównaniu z prawdziwymi zadaniami.
Pokaż jak tam wygląda plik resume, ten który jest kopiowany do 00hc.resume przy starcie benchmarku - nie mam go przy sobie, a przez jego edycję łatwo skrócić zadanie.

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

buninek

cat 00hc.resume
M4=B:B152:DF:AAAA=B:B152:DF:ZZZZ=B:B152:DF:ZZZZ=2=0=0=2147483646
M4=B:B152:DF:SOZA=AYBOCUDLEKFXGNIZPSQV=1764244

TJM

Edytować musisz ten drugi, bo 00hc.resume to jest ten wynikowy który jest używany i za każdym razem nadpisywany.
Zmień pierwszą linię np. na:

M4=B:B152:DF:AAAA=B:B152:DF:BZZZ=B:B152:DF:AAAA=2=0=0=2147483646

i będziesz miał około 5 minut benchmark.

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

buninek


TJM

Dziwne, bo zmieniając ZZZZ na BZZZ powinieneś mieć dokładnie 3/26 poprzedniego czasu wykonywania.

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

Od rana nie działa serwer M4, na razie nie wiem co z nim bo admin nie odpowiedział na emaila. Zostało 9,5k zadań w lokalnym buforze i 4,2k na serwie BOINCa, jeśli komuś zależy na ciągłości przeliczania to dobrym pomysłem byłoby tymczasowe zwiększenie bufora dopóki jest co zasysać.

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

Dla mnie i tak wazniejsze Twoje prace nad optymalkami :). Serwe moze lezec, byle optymalki byly :).



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


Moja wizytowka i sygnaturka

TJM

Lepszych już chyba nie będzie, ta ostatnia którą wkleiłem na forum to ponad dwukrotne przyspieszenie w porównaniu do gołej aplikacji.

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

Cytat: TJM w 19 Listopad 2008, 11:07
Lepszych już chyba nie będzie, ta ostatnia którą wkleiłem na forum to ponad dwukrotne przyspieszenie w porównaniu do gołej aplikacji.


Masz na mysli 4um projektu - http://www.enigmaathome.net/forum_thread.php?id=17 ?



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


Moja wizytowka i sygnaturka

TJM

Nie, stronę wcześniej wkleiłem linka tutaj. Nigdzie więcej na razie tej aplikacji nie udostępniałem, bo wymagałoby to przeprowadzenia testów które trwają przynajmniej parę dni, nie bardzo mam teraz na to czas.
Na moim kompie runtime dla większości WU to około 35% czasu gołej aplikacji, tak więc grubo ponad dwa razy szybciej.

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

No szukalem i szukalem i nie znalazlem niestety. Moze jedynie miales zamiar wkleic? A moze ja slepne od monitora :P

Anyway, przymierzam sie ostro do Enigmy (tym bardziej ze nowy kładzik w drodze :) ), wiec bardzo chetnie te optymalki nowe... (oczywiscie Win XP, najchetniej x64...) Odwdziecze sie ;).



Niedlugo sprobuje tez Enigmy pod Linuxem, tylko ze tam to niestety z optymalkami sobie nie poradze, za duzo magii jak dla mnie ;)



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


Moja wizytowka i sygnaturka