BOINC@Poland

Projekty => Matematyka => Mersenne@home => Wątek zaczęty przez: lolek w 12 Styczeń 2011, 11:23

Tytuł: mersenneathome
Wiadomość wysłana przez: lolek w 12 Styczeń 2011, 11:23
Projekt naszego kamrata Sebastian (b0b3r) Bobreckiego zajmujący się poszukiwaniem liczb Mersenne'a. mam nadzieję że będziesz się dzielił z nami newsami o postępach w projekcie  :)
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Tomasz R. Gwiazda w 12 Styczeń 2011, 12:06
dziekuje za zalozenie watku :)

Sebastianie: moze byc mogl wrzucac tutaj jakies infa i aktualnosci odnosnie projektu, mysle ze czesc kamratow bylaby zainteresowana tym, (ja napewno :D)
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 19 Styczeń 2011, 17:44
No pewnie że mógłbym :)

Hmm. Co by mogło być interesujące? Projekt jest pochodną pomysłu kolegi goofyx-a. Zajmuje się szukaniem liczb pierwszych Mersenne-a. Wystartowaliśmy od p = 20996011 bo poniżej tego wszytko już zostało sprawdzone przez GIMPS. Jak można się domyśleć po nazwie aplikacji wykonujemy test pierwszości Lucas-a-Lehmer-a. Jedno zadanie wykonuje tylko 1279 iteracji przez co jest dosyć krótkie (niecałe 30min na moim referencyjnym kompie z C2D 2GHz) ale czas się będzie wydłużał wraz ze wzrostem wartości p. Zadanie jest liczone przez co najmniej dwóch uczestników w celu wyeliminowania błędów już we wczesnej fazie (a nie np. po miesiącu liczenia). I tak kolejno wyniki każdego zadania które zostanie policzone i przejdzie walidacje staje się nowym zadaniem. Obecnie w cyklu jest ok. 10-tyś. liczb p. Wyniki oczywiście będą publicznie dostępne :)

Z samej implementacji projektu to pewnie można by napisać co nieco o napotkanych problemach:
1). Nowy system przyznawania punktacji (bodajże credit system 3) okazał się być całkowicie nietrafiony dla tego projektu jako że system ten jest nastawiony na obliczenia zmiennoprzecinkowe a tu takich nie ma. Z racji tego trzeba było trochę poprzerabiać vlidator.
2). Pierwsza wersja aplikacji (ta korzystająca z wrappera) miała sporo błędów głównie wynikających z braku komunikacji pomiędzy samą aplikacją a klientem BOINC. Mam nadzieję że większość tych błędów została rozwiązana w obecnej wersji (2.00) jako że wrapper jest już niepotrzebny. Przy okazji prac jak można było przeczytać w wiadomościach na stronie projektu udało się ją trochę przyśpieszyć, znacznie zredukować wielkość plików itp. Obecna wersja dostępna jest dla systemów Linux i FreeBSD zarówno 32 jak i 64 bitowych.
3). Niestety wszystkie wczesne wersje aplikacji dla systemu Windows okazały się generować błędne wyniki (i to bardzo często) i do tego były ekstremalnie powolne. W związku z tym teraz są wyłączone. Tu nie mogę nie wspomnieć że z racji tego że ja w zasadzie jestem całkiem a-Windows-owy to korzystałem z pomocy kolegi sesef-a i za to należy mu się uznanie :) Teraz w planach są testy aplikacji powstałej z nowego kodu i mam nadzieję że wreszcie będzie działać poprawnie. Jako że komputerów z tym systemem jest w świecie BOINC znacznie więcej niż Linux-ów ipt. jest to sprawa priorytetowa.
4). Niekończący się brak czasu...

Nie wiem czy jest coś jeszcze o czym można by napisać. Jakby co to pytajcie a ja się postaram odpowiadać.
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 26 Styczeń 2011, 21:04
Miło mi poinformować że pojawiła się aplikacja dla Windows-a :)
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: lolek w 26 Styczeń 2011, 21:13
to teraz app dla ATI poproszę  ;)
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Tomasz R. Gwiazda w 26 Styczeń 2011, 21:38
super :)

a czemu teraz validacja tak dlugo trwa i wisza mi WU i wisza?
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 26 Styczeń 2011, 21:47
Wynika to w dużej mierze z małej liczby aktywnych użytkowników (duża część nie miała wyboru z braku aplikacji dla Windows) ale teraz mam nadzieję to się mocno poprawi. Powiem tylko że ilość hostów które mają ściągnięte jakieś paczki od momentu wydania aplikacji dla Windows-a już zdążyła się podwoić :)
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Troll81 w 27 Styczeń 2011, 10:09
mój juz zassał :D
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: emik w 27 Styczeń 2011, 15:28
mój już liczy, tylko, że punktacja lekko marnawa  - średni za 1h30min = 13pkt ;(
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Tomasz R. Gwiazda w 27 Styczeń 2011, 15:36
ideowcy licza to a punkthunterzy  AndoINC :P
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: emik w 27 Styczeń 2011, 15:38
AndrOINC już mam na pułapie 25k więc teraz dociągam marsenne XP
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 27 Styczeń 2011, 15:46
Cytat: emik w 27 Styczeń 2011, 15:28
mój już liczy, tylko, że punktacja lekko marnawa  - średni za 1h30min = 13pkt ;(

No ja się tego spodziewałem ale że dopiero od wczoraj ta aplikacja działa więc jeszcze muszę trochę pozbierać wyników żeby sobie policzyć/oszacować o ile to trzeba by podnieść.
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Troll81 w 27 Styczeń 2011, 15:47
Androinc punktuje z sufitu :( niedługo nie będzie już po co liczyć projektów..... :(
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 27 Styczeń 2011, 15:53
Proponuje się też zapoznać z moim wpisem na forum projektu to może też co nieco rozjaśni
http://mersenneathome.net/forum_thread.php?id=31 (http://mersenneathome.net/forum_thread.php?id=31)
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Tomasz R. Gwiazda w 27 Styczeń 2011, 16:47
Sebastianie, dawaj tutaj smialo :D


I'd like to share with you some information about llpt application performance. The application includes a highly optimized assembler code for different processors and automatically selects the appropriate branch for the system. This allows a single binary to exploit the full potential of the different platforms. In addition, the nature of its calculation and size of the numbers makes a great demand for memory bandwidth. This leads to certain consequences:

1). The same processor but with faster RAM will be noticeably faster. As an example, I give the Athlon 64 processor with 1.8 GHz clock and DDR2-800 was slightly faster than the Athlon 64 processor with 2.0 GHz clock and DDR2-667. Cache size is also of big importance.

2). HyperThreading technology causes a drop in performance. Due to the fact that the code is highly optimized, there are no situations in which the core has any unused units. Additionally, the processor had to share the cache and memory bandwidth to a larger number of tasks. In tests on the i7 X980 processor, two sets of six tasks were calculated over a minute faster than a set of 12 tasks.

3). In these calculations, K8/10 processors have an advantage over Core 2/i7. This follows from the fact that although the Core 2/i7 has four instruction decoders, only one is a complex decoder.In K8/K10 all three decoders are complex. This is particularly important because a lot of operands is read directly from memory. In tests Phenom II clocked at 3.00 GHz needed approximately the same time as the Core i7 clocked at 3.33 GHz.

4).Tests also showed that the NetBurst architecture CPUs are slower than the same or slightly slower clocked Pentium III / M. Very long pipeline of this architecture makes a branch misprediction is very expensive.

5). In Windows operations of memory allocation and release are very expensive, which makes a noticeable difference compared to Linux.

6). 64-bit systems are significantly faster than 32 bit because they require fewer instructions to perform calculations on such large numbers.
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: apohawk w 27 Styczeń 2011, 23:10
Lubię jak projekt pisze, że AMD jest wydajniejsze od Intela  XD
Mam podkręconego phenoma z pamięciami DDR3-1600 7-7-7-20, więc jeśli pamięć ma odgrywać istotną rolę, to powinien ten komp trochę policzyć. Tyle, że to sprzęt do grania, więc chodzi na windowsie. Czekam na aplikację 64 bitową.
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 25 Luty 2011, 10:05
Miło mi poinformować że wreszcie udało mi się przygotować 64-bitową aplikacje dla Windows-a :)
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Tomasz R. Gwiazda w 25 Luty 2011, 10:16
good news  :parrrty:

niedlugo przetestuje na Win x64, zeby wrocic do top10 projektu



a jak sie sprawuje i jaki przyrost powera ? w stosunku do 32bit?
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Troll81 w 25 Luty 2011, 10:18
 :parrrty:
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 25 Luty 2011, 10:25
Cytat: Tomasz R. Gwiazda w 25 Luty 2011, 10:16
...
a jak sie sprawuje i jaki przyrost powera ? w stosunku do 32bit?

Mega szału nie ma, na moim testowym kompie to było jakieś ~12%, ale to dość leciwy sprzęt z małą ilością cache-u więc niewykluczone że na czymś lepszym będzie więcej :)
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Tomasz R. Gwiazda w 11 Marzec 2011, 19:56
czy cos z punktacja sie zmienialo ?
bo mam wrazenie ze jak wiecej sprzetow podpinam to mniej pkt mam dziennie :D

Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: mimeq w 11 Marzec 2011, 20:32
Nie wiem jak bylo wczesniej, od paru dni mam podpietego 1 clouda i za wszystkie WU dostaje 68.34pkt - dociagam do 10k  ;)
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 12 Marzec 2011, 10:28
Cytat: Tomasz R. Gwiazda w 11 Marzec 2011, 19:56
czy cos z punktacja sie zmienialo ?
bo mam wrazenie ze jak wiecej sprzetow podpinam to mniej pkt mam dziennie :D

Ja nic nie zmieniałem w punktacji od czasu wydłużenia jednostek. Ale zaobserwowałem że, przy zasadniczo małej liczbie aktywnych komputerów (<300), ostatnimi czasy wzrosła o jakieś 50% liczba "Task in progress". Wygląda więc na to że wolontariusze wydłużyli sobie znacznie kolejki i co za tym idzie dużo więcej zadań jest w stanie "Pending".
Myślę że jeśli liczba zadań oczekujących na walidację też wzrośnie o jakieś 50% to ilość punktów przyznawanych na dobę wróci do poprzedniego poziomu. A może nawet, czego bardzo bym sobie życzył, wzrośnie :)
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Tomasz R. Gwiazda w 12 Marzec 2011, 12:08
a jest moze jakas opcja na zwiekszenie ilosci pkt ? :)
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 12 Marzec 2011, 12:30
No ja jestem otwarty na rozmowę na temat punktacji bo zdaję sobie sprawę że to co jest teraz nie jest najlepiej dopasowane. Ale wolałbym taką dyskusję prowadzić na forum projektu żeby wszyscy zainteresowani o niej wiedzieli.
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Tomasz R. Gwiazda w 12 Marzec 2011, 12:38
spoko  :boing:

zajebiaszcze nowe emoty :D
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Tomasz R. Gwiazda w 16 Marzec 2011, 08:20
http://pl.boincstats.com/stats/team_stats.php?pr=mersenne&st=0#1

1 miejsce nasze, moze newsa byc dac?
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 19 Marzec 2011, 08:55
Cytat: Tomasz R. Gwiazda w 16 Marzec 2011, 08:20
http://pl.boincstats.com/stats/team_stats.php?pr=mersenne&st=0#1

1 miejsce nasze, moze newsa byc dac?
Wczoraj drużyna SETI.Germany ostro (x2) zwiększyła liczbę komputerów podłączonych do projektu. Dla projektu to świetna wiadomość :) ale dla B@P oznacza możliwość utraty pierwszego miejsca :(
Tytuł: Odp: mersenneathome
Wiadomość wysłana przez: Troll81 w 20 Marzec 2011, 20:08
na wszystkich frontach nie można być pierwszym :D
Tytuł: mersenneathome
Wiadomość wysłana przez: Rumble Fish w 01 Czerwiec 2011, 22:32
Witam  :ahoy:

Dzisiaj wpadłem na stronę BOINC poprzez link z ubuntu.pl, a w mersenne.org siedzę już kilka lat, stąd moje pytanie:

Na mersenne mamy drużynę POLAND, odpaliłem dzisiaj BOINCA i nie zauważyłem czy można jakieś ustawienia wprowadzić w tej kwestii  :book:, fajnie by było punktów nam nabić na mersenne, bo ostatnio spadamy  :dunno: Wiem, wiem, może jestem harcerzyk, ale cieszą mnie takie drobnostki  :arrr:
Czy jest/będzie taka opcja? Na razie dobijam zadania przydzielone przez standardowego klienta mersenne, potem zamierzam przesiąść się na BOINCA, jeżeli punkty oczywiście będą szły do rankingu mersenne również  :p_arr:

pozdro
P.
Tytuł: mersenneathome
Wiadomość wysłana przez: Troll81 w 01 Czerwiec 2011, 22:37
Witam na forum i zapraszam do działu wizytówki. Jak nam podasz swe województwo to dołączymy cię do rankingu województw.

Ponieważ my wszyscy już liczymy W BOINC mało prawdopodobnym jest by ludziska instalowali kolejnego klienta do przetwarzania. mogłyby następować kolizje. Ale z przyjemnością powitamy całą waszą drużynę na platformie BOINC. No i zapraszamy do połączenia sił z nami. W kupie siła bo kupy nikt nie ruszy....
Tytuł: mersenneathome
Wiadomość wysłana przez: Rumble Fish w 01 Czerwiec 2011, 23:02
Hmm, w zasadzie chodziło mi bardziej o to, czy klient BOINCA został napisany całkiem od nowa, wtedy wiadomo, że raczej nie, czy też z grubsza bazuje na kodzie źródłowym prime95, czyli mogłoby być też naliczanie punktów i wysyłanie ich wraz z wynikami do mersenne.org (system GHz*dzień) - wtedy tylko zadeklarować drużynę i git. Nie o osobnego klienta, tylko o 1 obsługującego punktację w 2 systemach.

Byłoby luzik, gdyby miał obie funkcjonalności, bo tam mam już niezłe konto  :parrrty: Nie mówiąc, że większość obliczeń robię na maszynach w robocie, gdzie odpalam klienta z pendrive z listą zadań (admin zblokował internet na wszystkim poza ie i lotusem, na www w sumie idą tylko strony "branżowe" zresztą, wszystko przez idiotki siedzące na fb zamiast pracować) i mam przyznane zadania na najbliższy rok, część z niezłym zaawansowaniem, więc przesiadka się by opóźniła sporo. Z ludźmi kontaktu nie mam, bo na drużynie koleś założyciel nie podał żadnego linku do wspólnego forum. Z dwojga wolałbym jednak zostać w mersenne i tam gonić rankingi, ale jeszcze lepiej ku chwale Ojczyzny na obu :attack:

pozdro
P.
Tytuł: mersenneathome
Wiadomość wysłana przez: Troll81 w 01 Czerwiec 2011, 23:08
Wadą rozwiązań dedyowanych jest brak możliwości uczestnictwa w innych projektach. Tak ma tez folding i kilka innych projektów. Czasami tworzy się wrapery które obsługują dany projekt poprzez platforme BOINC. Ale nie wiem jak to jest w przypadku mersenne. Moze da się zachować konto wraz z punktacją?
Tytuł: mersenneathome
Wiadomość wysłana przez: Rumble Fish w 01 Czerwiec 2011, 23:32
Hmm, z informacji z poprzedniej strony można wnioskować, że to zupełnie osobny projekt niż soft od GIMPS, więc raczej skupia się tylko na tutejszej punktacji. Ale może b0b3r mógłby dodać prosty licznik procek*doby działania i byłoby cool? GIMPS także liczy nie realne ilości przetworzonych danych, tylko ile program chodzi - bo jak gram dużo, to za podobne operacje zbieram jednak więcej punktów  XD Wtedy boincowa praca zasiliła by również rodaków w mersenne - może nawet dogonilibyśmy Ruskich albo Norwegów  :attack:
Tytuł: mersenneathome
Wiadomość wysłana przez: Rumble Fish w 01 Czerwiec 2011, 23:39
...nie wspominając o tym, że odkrywcy kolejnych liczb pierwszych otrzymywali ostatnio po około 20k$ nagrody - głupio trafić liczbę a kasy niet, bo konta niet  :deadman:
Tytuł: mersenneathome
Wiadomość wysłana przez: Troll81 w 01 Czerwiec 2011, 23:41
ja tam dla kasy nie liczę :D
Tytuł: mersenneathome
Wiadomość wysłana przez: Rumble Fish w 01 Czerwiec 2011, 23:45
Nie, ale nowiutki MotoGuzzi w garażu potrafi cieszyć  :boing:
Tytuł: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 02 Czerwiec 2011, 11:04
Mersenne@home jest całkiem niezależny od GIMPS i nie wykorzystuje żadnego kodu z prime95. Projekt ma na celu szukanie liczb nie robienie kasy. Autorami ewentualnych odkryć będą wolontariusze a nie sam projekt (projekt to tylko narzędzie). I oczywiście jeśli ktoś dalej będzie rozdawał za to kasę i choć osobiście uważam że jest to trochę chore żeby dawać kasę z liczbę, to personel projektu pomoże szczęśliwym znalazcom w otrzymaniu takiej gratyfikacji (krótko mówiąc cała kasa dla odkrywców). Jak projekt będzie potrzebował dofinansowania (na razie wydaje się to niepotrzebne) to są ku temu inne metody, według mnie właściwsze, bazujące na dobrowolnych datkach.
Tytuł: mersenneathome
Wiadomość wysłana przez: Rumble Fish w 02 Czerwiec 2011, 13:40
Nie o kasę chodziło, to było tylko żartobliwe zakończenie poprzedniej dyskusji z Troll81  :), na początku zaczęliśmy o zliczaniu punktów w mersenne.org i czy ten aplet boinc'a też to robi. Sądząc z loga, ściąga jakieś ustawiena z mersenne.org, zresztą przypuszczam, że również raportuje tam wyniki, by nie walcować wielokrotnie tych samych liczb, stąd się zastanawiałem, czy nie zasilałby również konta polskiej drużyny w tamtym projekcie, to wszystko. Szansa trafienia liczby pierwszej jest i tak wielokrotnie mniejsza niż 6 w totka, udaje się jedna na kilka lat, walcowanie jednego "losu" trwa u mnie miesiąc, więc naprawdę nie napalam się na tą kasę  :)
Tytuł: mersenneathome
Wiadomość wysłana przez: Troll81 w 02 Czerwiec 2011, 14:06
niektórzy u nas już kilka razy więc wygrali w totka :D
Tytuł: mersenneathome
Wiadomość wysłana przez: GRID w 11 Czerwiec 2011, 14:30
Rumble Fish ciekawie mówi.
Zakładając ze mersenne@home odkryje liczbę. to co w tedy ? jaki będzie plan działania. Czy ktoś dostanie emaila ze odkrył liczbę i żeby podał adres konta? (fajnie by było zapisać się w księgach naukowych historii i fajnie by było przeznaczyć 20k$  na promocję przetwarzania rozproszonego i nauki w Polsce.)
Tytuł: mersenneathome
Wiadomość wysłana przez: Tomasz R. Gwiazda w 25 Listopad 2011, 21:00
New highly optimized versions of applications
I started to to deploy a highly optimized versions of applications. For supported platforms, they brings a significant increase in performance. Currently following classes are implemented:


    For Intel CPUs:

        ppro - for PentiumPro
        p2 - for Pentium II and Celeron based on Pentium II, working in 32 bit environment,
        p3 - for Pentium III, Pentium M, Core, Core2, Core i7 and others based on them, working in 32 bit environment,
        p4 - for Pentium 4 and others based on it, working in both the 32-bit and 64 bit environment,
        core2 - for Core2 and others based on it, working in 64 bit environment,
        corei - for Core i7 and others based on it, working in 64 bit environment.


    For AMD CPUs:

        k7 - for Athlon, Duron, Athlon XP, Sempron, Athlon 64, Phenom, APU, based on the Bulldozer core and the others based on them, working in 32 bit environment,
        k8 - for Sempron, Athlon 64, Phenom, APU, based on the Bulldozer core and the others based on them, working in 64 bit environment.


If you see that there is available optimized application for your computer but for some reason you do not get it. Or worse, you get an applications that is not compatibility with your computer fill out a thread on the Bugs forum or send me a private message. I also encourage you to share the results of the performance of these applications on the Number crunching forum.


sie nie chwali kolega :>  :whip:
Tytuł: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 25 Listopad 2011, 21:11
Bo chwalić to się będę jak skończę. Na razie jeszcze sporo roboty przed mną. Ludzie już wyłapali kilka błędów w schedulerze że przydzielał nie takie app jak trzeba i już go dziś z 10 razy poprawiałem. No ale się staram żeby było coraz lepiej :)
Tytuł: mersenneathome
Wiadomość wysłana przez: Tomasz R. Gwiazda w 25 Listopad 2011, 21:17
u a ja wzmozone obliczenia od 2 dni robie w tym projekcie :)
mam nadzieje ze bedzie ok mimo to

troche w pendingu taskow siedzi (12k)

Tytuł: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 25 Listopad 2011, 21:23
Cytat: Tomasz R. Gwiazda w 25 Listopad 2011, 21:17
u a ja wzmozone obliczenia od 2 dni robie w tym projekcie :)
mam nadzieje ze bedzie ok mimo to

troche w pendingu taskow siedzi (12k)
O to się nie martw. Wszystkie incydenty które mi do tej pory zgłoszono były bezpieczne, tzn. komputerowi była przydzielana słabsza aplikacja np. p2 zamiast p3 albo domyślna zamiast zoptymalizowanej.
Tytuł: mersenneathome
Wiadomość wysłana przez: Tomasz R. Gwiazda w 25 Listopad 2011, 21:29
i widze ze u mnie nie tak wiele, 18 WU
glownie ze statusem

Timed out - no response
Cancelled by server

Tytuł: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 25 Listopad 2011, 21:35
Cytat: Tomasz R. Gwiazda w 25 Listopad 2011, 21:29
i widze ze u mnie nie tak wiele, 18 WU
glownie ze statusem

Timed out - no response
Cancelled by server
Sporo mam takich przypadków że ludzie odsyłają wyniki po zaraz deadline ale jak już serwer z nich zrobił nowe zadania i je wysłał. Wiec ja mam włączone żeby serwer wysyłał do klienta poleceni żeby je ubił jeśli jeszcze nie zaczął ich liczyć bo szkoda czasu, itd.
Tytuł: mersenneathome
Wiadomość wysłana przez: Tomasz R. Gwiazda w 25 Listopad 2011, 22:26
jak dla mnie logiczne :)
pretensji żadnych nie mam
Tytuł: mersenneathome
Wiadomość wysłana przez: Troll81 w 26 Listopad 2011, 11:05
 :respect: za to ze ci się chce optymalizować. Wiele projektów tego nie robi i widać to m.in. po temperaturze proca :( a szkoda bo chciałbym by mój sprzęt był wykorzystywany na maksa
Tytuł: Mersenne@home
Wiadomość wysłana przez: Sebastian M. Bobrecki w 05 Grudzień 2011, 18:27
Dziś pojawiły się nowe wersje aplikacji które powinny torchę poprawić wydajność, zwłaszcza dla aplikacji Tdt na 64 bitowych windowsach :)
Tytuł: mersenneathome
Wiadomość wysłana przez: mimeq w 05 Grudzień 2011, 18:33
Tdt ? Trial division test v1.04 ?
To mi sie akurat szybko liczylo :D
http://mersenneathome.net/results.php?hostid=2630&offset=0&show_names=0&state=0&appid=3
Tytuł: Mersenne@home
Wiadomość wysłana przez: Sebastian M. Bobrecki w 05 Grudzień 2011, 18:39
Cytat: mimeq w 05 Grudzień 2011, 18:33
Tdt ? Trial division test v1.04 ?
To mi sie akurat szybko liczylo :D
Zmienisz zdanie jak zobaczysz w akcji wersję 1.05.
Tytuł: mersenneathome
Wiadomość wysłana przez: mimeq w 05 Grudzień 2011, 18:47
Zaraz bede wiedzial  ;)
Co robia poszczegolne aplikacje? Na wiki u nas nic nie ma ...

Lucas-Lehmer primality test - to sie liczy najdluzej i chyba jest glowna aplikacja poszukajaca liczb ?
trial division test - ???
Extended trial division test - ???
Tytuł: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 05 Grudzień 2011, 18:50
Tdt i Etdt służą do eliminacji kandydatów dla LLpt.
Tytuł: mersenneathome
Wiadomość wysłana przez: mimeq w 05 Grudzień 2011, 19:15
Pierwsze 3WU w porownaniu do starych rzeczywiscie szybciej.
Stare (mam tylko 2 jeszcze do podejrzenia) w zakresie  8xx -9xx sek
Nowe 3 zakres 6xx sek

:parrrty:

Rozumiem ze dla roznych procow sa rozne aplikacje ? Mi przydzielilo "core2" do Q6600.
Pkt sa na sztywno ? za poprzednie bylo 11.50 a teraz jest szybciej
Tytuł: mersenneathome
Wiadomość wysłana przez: Michu86 w 07 Marzec 2012, 19:51
Witam wszystkich serdecznie :)

Mój pierwszy post na forum, w samym B@P jestem dość krótko - chyba jeszcze tydzień nie minął, tak więc z góry proszę o wyrozumiałość ;)

A piszę, ponieważ mam kilka pytań, może nie koniecznie do autora ("opiekuna projektu" ?), ale do kogokolwiek, kto mógłby mi powiedzieć, jak to dokładnie działa? :) Chciałbym śledzić, jak to się porusza do przodu, a byłoby mi dużo łatwiej, gdybym wiedział, co jest czym.

Bodajże w drugim poście był krótki opis działania, ale interesuje mnie coś bardziej konkretnego - jak działa Tdt, Etdt i Xtdt?

"Tdt i Etdt służą do eliminacji kandydatów dla LLpt."

LLpt - to zakładam, że jeszcze nie wystartowało? Ponieważ na "Stanie serwera" pojawił się bodajże wczoraj i statystyki ma zerowe, z kolei na "Computation progress" w ogóle nie jest ujęty.

Także proszę o jakiś opis na "Computation progress":
- "P range" - domyślam się, że statystyki dotyczą P w tych widełkach
- "P in range" - a to są liczby P do sprawdzenia? Czy może sprawdzone? Czy co? :)


Mam nadzieję, że te kilka wstępnych pytań nie odstraszy nikogo ;)


Niejednokrotnie padło też porównanie do GIMPS - gdyby nie fakt, że podsumowanie obliczeń jest sprzed 2 godzin, stwierdziłbym, że projekt ten upadł (ostatnia aktualizacja ponad rok temu). No i po statystykach widzę, że rzeczywiście udaje się tego GIMPSA doganiać - o ile w liczbie użytkowników którzy dołożyli się do projektu nadal "jesteśmy" daleko w tyle (1,757 na BOINC do 80,996 na GIMPS) o tyle już różnica w aktywności w ciągu ostatniego miesiąca jest dużo mniejsza (937 do 4,875 na GIMPS) i co jeszcze ważniejsze - nadal się zmniejsza :)

Główna różnica pomiędzy projektami? Ten tutaj żyje :) Co widać nie tylko po newsach, ale także po ciągłych aktualizacjach i ulepszeniach - a więc zasłużone ukłony dla Pana Bobreckiego :respect:

Tytuł: mersenneathome
Wiadomość wysłana przez: Troll81 w 07 Marzec 2012, 22:03
Witam na forum. Zapraszam do założenia własnej wizytówki. Jeśli podasz nam swoje województwo ujmiemy cię w rankingu województw.

Najlepiej pytania zadać anu Bobreckiemu :D i szturchnąć go na PW by raczył się wypowiedzieć na forum. W ten sposób i pytania i odpowiedzi pozostaną dla potomności....
Tytuł: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 08 Marzec 2012, 01:02
@Bodajże w drugim poście był krótki opis działania, ale interesuje mnie coś bardziej konkretnego - jak działa Tdt, Etdt i Xtdt?
Te trzy aplikacje w zasadzie robią to samo tylko do różnych pułapów. Standardowy test typu "trial division" polega na dzieleniu danej liczby przez pierwsze mniejsze lub równe pierwiastkowi kwadratowemu z tej liczby. Jeśli w tym zakresie nie znajdziemy dzielnika to liczba jest na pewno pierwsza. Niestety dla dużych liczb należałoby wykonać ogromne ilości kosztownych operacji dzielenia co wymagałoby mnóstwa czasu. Przez to test w tej for jest niepraktyczny dla dużych liczb. Na szczęście większość kandydatów posiada relatywnie małe dzielniki i dzięki temu można je wyeliminować wykonując test tylko do pewnej, sensownej pod względem czasu obliczeń, granicy. Dodatkowo wykorzystujemy pewne dodatkowe właściwości liczb Mersenne'a ( M(p)=(2^p)-1 ):
- M(p) na pewno nie będzie pierwsza jeśli p nie jest pierwsza. W związku z tym testujemy tylko takie p które są pierwsze,
- Dzielniki d liczb M(p) mają postać d=2kp+1 (np. (2^11)-1=2047; dla k=1; d=2*1*11+1=23; 2047/23=89),
- Dzielniki d liczb M(p) modulo 8 dają wynoszą 1 lub 7 (23 mod 8 = 7),
Dodatkowo dzięki zastosowaniu potęgowania modulo możemy operować tylko na liczbie bitów potrzebnych do zapisania dzielnika (kilkadziesiąt) a nie pełnej liczby Mersenne'a która zajmuje p bitów (miliony). To nie tylko powoduje zmniejszenie ilości wymaganych operacji ale też zmniejsza zapotrzebowanie na pamięć operacyjną dla operandów i przez co poprawia się wykorzystanie pamięci cache co także pozytywnie wpływa na wydajność.

@LLpt - to zakładam, że jeszcze nie wystartowało? Ponieważ na "Stanie serwera" pojawił się bodajże wczoraj i statystyki ma zerowe, z kolei na "Computation progress" w ogóle nie jest ujęty.
Ta aplikacja jest obecnie wstrzymana.

@Także proszę o jakiś opis na "Computation progress":
- "P range" - oznacza przedział liczb
- "P in range" - to całkowita ilość liczb pierwszych p w danym przedziale
- "Tdt, Etdt, Xtdt" - pokazuje w procentach ile kandydatów zostało przetestowanych przez daną aplikację (w zasadzie to ile już nie wymaga testowania przez daną aplikacje).

Też mam nadzieję że kiedyś uda się wyprzedzić GIMPS :) Ukłony pokornie przyjmuję ;)
Tytuł: mersenneathome
Wiadomość wysłana przez: Troll81 w 08 Marzec 2012, 06:07
mój ukłon  :respect:
Tytuł: mersenneathome
Wiadomość wysłana przez: Michu86 w 09 Marzec 2012, 01:20
Witam

Dziękuję za odpowiedź na wstępne pytania :)

Tak jeszcze z góry uprzedzę, że być może w pewnym momencie dojdę pytaniami do szczegółów, których nie będzie Pan chciał ujawniać (prawa autorskie, konkurencja, itp.) - proszę to wtedy wprost napisać, żebym po prostu odpuścił i nie męczył więcej ;)

To teraz wersja Extended moich pytań ;)

To, że p musi być pierwsze faktycznie bardzo pomaga i rozumiem w takim razie sens kolumny "P in range".

Co do faktu, że dzielniki liczb NIE-pierwszych postaci M(p) mogą mieć tylko postać d=2kp+1 także bardzo pomaga, bo nie sprawdzamy wszystkich dzielników, a tylko te dla kolejnych k ze wzoru.

Przy czym ostatniej właściwości nie rozumiem (że (d%8==1)|(d%8==7) ). Z jednej strony nie mam pojęcia, do czego może być przydatna ta informacja, a z drugiej załóżmy taką liczbę Mersenne`a:
p=10
M(p)=1023
D = {d1;d2} = {3;341}
Dzielnik d=341 faktycznie jest postaci 2kp+1 (dla k=17), ale już reszta z dzielenia 341 przez 8 to liczba 5, a nie 1 bądź 7... Proszę o wyjaśnienie :)


Co do operacji typu modulo, że np.
Reszta z dzielenia (przez 5) sumy liczb 16+43 jest taka sama jak suma ich reszt (modulo z sumy jest równe sumie modulo):
16+43=59
mod(59,5)=4

mod(16,5)=1
mod(43,5)=3
1+3=4
to wiem, działa to na pewno do podstawowych 4 działań (potęgowanie też?), ale do czego konkretnie jest tu wykorzystywane? :) Całą liczbę M(p) i tak trzeba najpierw policzyć, żeby zacząć ją... A nie - o tym przecież była mowa :>
Czyli przykładowo dla M(p=21)=2097152 sprawdzamy kolejne dzielniki d, np. d=127 (2*3*21+1)

No i chcielibyśmy sprawdzić, jaki jest wynik modulo 2097151 przez 127 - jeśli 0, to M(p) jest liczbą złożoną.
Ale żeby nie dzielić "długiej liczby" 2097151, to najpierw bawimy się potęgą liczby 2:

2^21 - 1 =
= 2^7 * 2^7 * 2^7 - 1

Wynik modulo z całej liczby to wynik modulo z poszczególnych składowych, a więc:

mod(2^7,127) * mod(2^7,127) * mod(2^7,127) - mod(1,127) =
= 1*1*1-1 = 0

Czyli M(p=21) nie jest liczbą pierwszą :)



Ok, czyli Tdt, Etdt oraz Xtdt robią to, co powyżej dla pewnego przedziału dzielników - Tdt dla najmniejszego, Etdt dla większego oraz Xtdt dla... największego, czy też dla wszystkich?

No i jeśli Tdt "zauważy" że liczba nie jest pierwsza, to nie jest to już sprawdzane w Etdt i Xtdt.

LLpt - a ta do czego służy/będzie służyć? Chyba do ostatecznego stwierdzania, czy liczba jest pierwsza... A więc Xtdt nie jest dla całego przedziału :> Bo jeśli liczba ma 12 mln cyfr, to maksymalna wartość dzielnika miałaby 6mln cyfr :> Do jakiej granicy liczą te 3 pierwsze testy?

No i z faktu, że nie zdarzyło mi się, aby przy 30% był przeskok na 100% wnioskuję, że nawet po znalezieniu dzielnika obliczenia są dalej prowadzone - rozumiem, że to w celach badania zależności występowania liczb pierwszych od czegoś? :)



W Computation progress dla wszystkich poza 3 pierwszymi przedziałami widać równość przy "już niepotrzebnych" Tdt i Etdt - domyślam się, że wspólnie zostały odrzucone - na jakiej zasadzie? I dlaczego nie zostały odrzucone także Xtdt w danych zakresach?


Może tyle na razie wystarczy - reszta pytań przechodzi do wersji eXtreme :P
Tytuł: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 09 Marzec 2012, 16:10
Cytat: Michu86 w 09 Marzec 2012, 01:20
...

Przy czym ostatniej właściwości nie rozumiem (że (d%8==1)|(d%8==7) ). Z jednej strony nie mam pojęcia, do czego może być przydatna ta informacja, a z drugiej załóżmy taką liczbę Mersenne`a:
p=10
M(p)=1023
D = {d1;d2} = {3;341}
Dzielnik d=341 faktycznie jest postaci 2kp+1 (dla k=17), ale już reszta z dzielenia 341 przez 8 to liczba 5, a nie 1 bądź 7... Proszę o wyjaśnienie :)
W twoim przykładzie p nie jest liczbą pierwszą więc ta zależność nie zachodzi.
p=23
M(p)=8388607
k=1
d=47
47 mod 8 = 7

Niestety nie zawsze 2kp+1 jest liczbą pierwszą więc żeby oszczędzić sobie operacji potęgowania modulo wykonujemy jeszcze sprawdzenie wyniku d mod 8 bo jest to operacja tania obliczeniowo. Jeśli wynik będzie pomyślny (1||7) to wykonujemy jeszcze krótki test pierwszości samego dzielnika (właściwie kandydata na dzielnik) w oparciu o tablicę małych liczb pierwszych. I dopiero po przejściu obu tych testów wykonujemy właściwy test czy kandydat jest dzielnikiem M(p).

Cytat
Co do operacji typu modulo, że np.
Reszta z dzielenia (przez 5) sumy liczb 16+43 jest taka sama jak suma ich reszt (modulo z sumy jest równe sumie modulo):
16+43=59
mod(59,5)=4

mod(16,5)=1
mod(43,5)=3
1+3=4
to wiem, działa to na pewno do podstawowych 4 działań (potęgowanie też?), ale do czego konkretnie jest tu wykorzystywane? :) Całą liczbę M(p) i tak trzeba najpierw policzyć, żeby zacząć ją... A nie - o tym przecież była mowa :>
Czyli przykładowo dla M(p=21)=2097152 sprawdzamy kolejne dzielniki d, np. d=127 (2*3*21+1)

No i chcielibyśmy sprawdzić, jaki jest wynik modulo 2097151 przez 127 - jeśli 0, to M(p) jest liczbą złożoną.
Ale żeby nie dzielić "długiej liczby" 2097151, to najpierw bawimy się potęgą liczby 2:

2^21 - 1 =
= 2^7 * 2^7 * 2^7 - 1

Wynik modulo z całej liczby to wynik modulo z poszczególnych składowych, a więc:

mod(2^7,127) * mod(2^7,127) * mod(2^7,127) - mod(1,127) =
= 1*1*1-1 = 0

Czyli M(p=21) nie jest liczbą pierwszą :)
W zasadzie tak to wygląda. Jeszcze z racji tego że dla m>n, n%m=n przenosimy to na drugą stronę czyli sprawdzamy czy (2^p)%d=1 i oszczędzamy jeszcze kilka operacji :)

Cytat
Ok, czyli Tdt, Etdt oraz Xtdt robią to, co powyżej dla pewnego przedziału dzielników - Tdt dla najmniejszego, Etdt dla większego oraz Xtdt dla... największego, czy też dla wszystkich?
Żadna z nich nie robi całości bo nie skończyła by za naszego życia. Tdt robi od początku, od b0 do b1, Etdt od b1 do b2, Xtdt od b2 do b3 (granice b1,b2,b3 zależą od p).

Cytat
No i jeśli Tdt "zauważy" że liczba nie jest pierwsza, to nie jest to już sprawdzane w Etdt i Xtdt.
Dokładnie tak.

Cytat
LLpt - a ta do czego służy/będzie służyć? Chyba do ostatecznego stwierdzania, czy liczba jest pierwsza... A więc Xtdt nie jest dla całego przedziału :> Bo jeśli liczba ma 12 mln cyfr, to maksymalna wartość dzielnika miałaby 6mln cyfr :>
Ta aplikacja wykonuje test Lucasa-Lehmera. To najszybsza znana deterministyczna metoda sprawdzenia czy liczba Mersenne'a jest liczbą pierwszą czy nie. Niestety mimo że test ten jest najszybszy to wymaga wykonania sporej ilości (p-2) operacji na bardzo dużych liczbach. Wygląda to mniej więcej tak:

s=4
M=2^p-1
for(i=0;i<(p-2);i++) {
s=((s^2)-2)%M
}
if s==0 then M is Prime

Jak widać wymagane jest operowanie na liczbach porównywalnych wielkością z samą liczbą M czyli liczących miliony bitów. Takie obliczenia już przy p < 10^8 potrafią zająć współczesnemu komputerowi ponad miesiąc tylko dla jednego p.
Cytat
Do jakiej granicy liczą te 3 pierwsze testy?
Jak pisałem wyżej granica jest zależna od p a przejście przez wszystkie aplikacje to dziesiątki miliardów iteracji.


Cytat
No i z faktu, że nie zdarzyło mi się, aby przy 30% był przeskok na 100% wnioskuję, że nawet po znalezieniu dzielnika obliczenia są dalej prowadzone - rozumiem, że to w celach badania zależności występowania liczb pierwszych od czegoś? :)
Po prostu miałeś pecha. Aplikacja kończy przetwarzanie po znalezieniu pierwszego dzielnika.

Cytat
W Computation progress dla wszystkich poza 3 pierwszymi przedziałami widać równość przy "już niepotrzebnych" Tdt i Etdt - domyślam się, że wspólnie zostały odrzucone - na jakiej zasadzie? I dlaczego nie zostały odrzucone także Xtdt w danych zakresach?
Ponieważ przedziały te już były poddane wstępnej analizie za pomocą Tdt. Natomiast to że nie widać tego w kolumnie Xtdt wynika z kwestii czysto administracyjnej. Przedziały te nie były ani razu włączone od czasu powstania aplikacji Xtdt, i przez to są pomijane przy podliczaniu statystyki.
Tytuł: mersenneathome
Wiadomość wysłana przez: Michu86 w 09 Marzec 2012, 22:07
Dziękuję za odpowiedzi i zgodnie z obietnicą, kolejne pytania poniżej ;)

Nazwa plików odpowiada liczbie P, która jest w danym teście sprawdzana? A z kolei liczba po podkreślniku oznacza, który to jest z testów (o ile pamiętam - każdy ma być wykonywany dokładnie 2 razy)?

Algorytm LL - masz już jakiś pomysł na obejście tego, czy może właśnie dlatego jest to takie trudne, że trzeba na tych kosmicznie wielkich liczbach działać? :/ (10ty wyraz tego ciągu w Matlabie został uznany za Inf :| )

Spytam o zbyt duży szczegół, jeśli będę chciał znać zależność b1, b2 i b3 od p? :)
Wygląda to na coś w stylu:
Tdt - kolejne dzielniki 1 - 1,000
Etdt - kolejne dzielniki 1,001 - 10,000
Xtdt - kolejne dzielniki 10,001 - 100,000
ale dokładniej? :)

Przy sprawdzaniu podzielności przez 8 - robisz to na całej liczbie, czy na jej ostatnich 3 cyfrach? ;)

@ W zasadzie tak to wygląda. Jeszcze z racji tego że dla m>n, n%m=n przenosimy to na drugą stronę...
Czym jest m, bo nie kojarzę oznaczenia?

Potęgowanie modulo - dopiero teraz wczytałem się w algorytm - fajne, złożoności O(log_2(P)) mówimy pewnie i zdecydowanie "raczej Tak" :)

W związku z faktem, że i tak nie wychodzimy poza 3 pierwsze przedziały (które i tak obejmują w ponad 80% obszar liczb większych od dotychczasowej największej), myślałeś może nad ucięciem statystyk dla p=300,000,000 a z kolei te 3 pierwsze przedziały rozbić np. na 30 lub więcej? Kiedy "widać" zmiany, jest jakoś tak łatwiej i serce się bardziej cieszy ;)
Druga sprawa odnośnie tego samego - można by dodać ilość różnych liczb p, które przeszły wszystkie 3 testy i nadal "są podejrzewane o pierwszeństwo"?

Jeśli algorytm LL ma zabierać aż tak dużo czasu, można by się zastanowić, czy mimo wszystko nie wziąć się jeszcze za sprawdzenie dalszych dzielników d? W pewnym momencie będzie granica, że czas potrzebny na operacje odrzucania kolejnych liczb P i prawdopodobieństwo ich odrzucenia w danym przedziale będzie równie kosztowny obliczeniowo, co po prostu wykorzystanie algorytmu LL - sprawdzałeś jakoś tę granicę?
No i mam wrażenie, że im większych liczb będziemy się tykać, tym ta granica będzie większa.

Wyniki, jakie zwracają programy (Task) - jak to czytać? Tzn. jakie tam mogę znaleźć istotne informacje? :) Np. czym są te dwie duże liczby na początku Stderr output, np:
"Begin computation
9663676416 78383153152" dla xtdt_139661_0
albo
"Begin computation
1073741824 10737418240" dla etdt_2222573_0
No i gdzie widać, czy przyczyniłem się pozytywnie (znaleziony dzielnik), czy też tylko stwierdziłem, że w danym obszarze dzielnika nie znaleziono?
Czy za znalezienie dzielnika zdobywa się więcej punktów? ;)

Jaki może być przykład "Error while computing", ponieważ mi się jeszcze nie zdarzyło i nie wiem z praktyki.

Problem w takiej postaci, w jakiej istnieje aż prosi się o wykorzystanie kart graficznych, gdzie każdy z procesorów mógłby zająć się podzielnością przez jeden z dzielników. Wydaje mi się, że horrendalnie wzrosłaby szybkość przetwarzania, gdyby karta graficzna także mogła brać udział w obliczeniach. Że są plany rozszerzenie aplikacji o tę możliwość, w to nie wątpię, ale w najbliższym czasie (jest to już tworzone), czy raczej w dalszej perspektywie?

Z jednej strony to może przesada, ale z drugiej... Liczba telefonów komórkowych, tabletów, iPadów i iPodów rośnie z każdym dniem, a zarazem zauważam tendencję, aby zastępować tym wszystkim PCty i Laptopy (choć to może tylko marzenia speców od marketingu? :P ). A o tym segmencie potencjalnie "chętnych do obliczeń" myślałeś? Procesory ma toto już prawie jak zwykłe komputery, więc zadania mogłyby być nawet podobne, włączone jest non-stop... Oczywiste wprawdzie, że podczas pracy na baterii nie mógłby działać BOINC, ponieważ nie jestem pewien, czy dobę by taki sprzęt wytrzymał, ale już chociażby podczas ładowania baterii - czemu nie? :)
Jak to od strony praktycznej wygląda? Potrzebne są z Twojej strony jakieś dodatkowe wersje programów, czy też wystarczy ściągnąć BOINCa, odpowiednio skonfigurować (praca na baterii jest chyba domyślnie zatrzymująca obliczenia) i jazda? :)


Że to ostatni zestaw pytań to wątpię, ale na pewno ostatni tak obszerny :)
Tytuł: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 12 Marzec 2012, 21:31
@Nazwa plików odpowiada liczbie P, która jest w danym teście sprawdzana? A z kolei liczba po podkreślniku oznacza, który to jest z testów (o ile pamiętam - każdy ma być wykonywany dokładnie 2 razy)?

Tak: <aplikacj>_<p>_<numer_zadania> . Numer zadania standardowo 0 lub 1. Jeśli jest większy to znaczy że wystąpiła konieczność retransmisji (niezgodne wyniki, błędy, przerwane obliczenia, przekroczenie czasu).

@Algorytm LL - masz już jakiś pomysł na obejście tego, czy może właśnie dlatego jest to takie trudne, że trzeba na tych kosmicznie wielkich liczbach działać?

Nie, to po prostu trzeba policzyć.

@Spytam o zbyt duży szczegół, jeśli będę chciał znać zależność b1, b2 i b3 od p?

Ilość iteracji:
Tdt ~ 2^30
Etdt ~ 2^33
Xtdt ~ 2^36

@Przy sprawdzaniu podzielności przez 8 - robisz to na całej liczbie, czy na jej ostatnich 3 cyfrach?

To się robi za pomocą operacji obracania i testowania bitów, ponieważ operacje dzielenia są dosyć kosztowne.

@Czym jest m, bo nie kojarzę oznaczenia?

Użyłem luźnych oznaczeń. Chodziło mi tylko o zobrazowanie ogólnie znanego faktu.

@W związku z faktem, że i tak nie wychodzimy poza 3 pierwsze przedziały (które i tak obejmują w ponad 80% obszar liczb większych od dotychczasowej największej), myślałeś może nad ucięciem statystyk dla p=300,000,000 a z kolei te 3 pierwsze przedziały rozbić np. na 30 lub więcej? Kiedy "widać" zmiany, jest jakoś tak łatwiej i serce się bardziej cieszy ;)
Druga sprawa odnośnie tego samego - można by dodać ilość różnych liczb p, które przeszły wszystkie 3 testy i nadal "są podejrzewane o pierwszeństwo"?

Myślałem, ale tu dość istotna kwestią jest duży koszt operacji przeliczania tych statystyk. Może wrócę do tematu jak uda mi się jeszcze poprawić niektóre aspekty pracy serwera.

@Jeśli algorytm LL ma zabierać aż tak dużo czasu, można by się zastanowić, czy mimo wszystko nie wziąć się jeszcze za sprawdzenie dalszych dzielników d? W pewnym momencie będzie granica, że czas potrzebny na operacje odrzucania kolejnych liczb P i prawdopodobieństwo ich odrzucenia w danym przedziale będzie równie kosztowny obliczeniowo, co po prostu wykorzystanie algorytmu LL - sprawdzałeś jakoś tę granicę?

Tę granicę nie tak łatwo wyznaczyć bo w dużej mierze zależy od takich czynników jak budowa komputerów i oprogramowania. Tak samo dalsze poszukiwanie ewentualnych dzielników lepiej wykonać innymi algorytmami. Obecnie mam już testową wersję aplikacji dla testu RHO i P-1. Można też rozważyć użycie ECM Lenstry. Ale te metody mają większe zapotrzebowanie na pamięć itp. i w związku z tym zupełnie inne charakterystyki skalowania.

@No i mam wrażenie, że im większych liczb będziemy się tykać, tym ta granica będzie większa.

Zgadza się. Dlatego aplikacje mają określoną ilość iteracji i ona w połączeniu z p wyznacza granicę.

@Wyniki, jakie zwracają programy (Task) - jak to czytać? Tzn. jakie tam mogę znaleźć istotne informacje? :) Np. czym są te dwie duże liczby na początku Stderr output, np:

Stderr to jeden z podstawowych strumieni wejścia/wyjścia procesów w systemach typu unix (stdin - strumień standardowego wejścia, stdout - strumień standardowego wyjścia, stderr - strumień komunikatów błędów) i stąd tak też zostało to nazwane w boinc-u ale to nie jest wynik pracy programu a tylko dane diagnostyczne itp. które mogą być pomocne przy szukaniu przyczyn jak coś nie będzie działać prawidłowo. Wyniki są zapisywane do plików i odsyłane na serwer. Można je czasem znaleźć w katalogu projektu zanim zostaną odesłane.

@Czy za znalezienie dzielnika zdobywa się więcej punktów?

I tak i nie, w takim sensie że dostaje się za nie tyle samo punktów ale obliczenia szybciej się kończą ;)

@Jaki może być przykład "Error while computing", ponieważ mi się jeszcze nie zdarzyło i nie wiem z praktyki.

Zwykle jest to jakaś forma zawieszenia lub nawet niemożności uruchomienia programu.

@Problem w takiej postaci, w jakiej istnieje aż prosi się o wykorzystanie kart graficznych, gdzie każdy z procesorów mógłby zająć się podzielnością przez jeden z dzielników. Wydaje mi się, że horrendalnie wzrosłaby szybkość przetwarzania, gdyby karta graficzna także mogła brać udział w obliczeniach. Że są plany rozszerzenie aplikacji o tę możliwość, w to nie wątpię, ale w najbliższym czasie (jest to już tworzone), czy raczej w dalszej perspektywie?

Z tym niestety wiążą się pewne trudności. Procesory strumieniowe w GPU to bardzo proste konstrukcje które bardzo słabo sobie radzą ze skomplikowanymi algorytmami które są niezbędne do obsługi dużych liczb (operacje bitowe i duża ilość instrukcji warunkowych). Dobrym przykładem takiego stanu rzeczy są np. pakiety VLAR w Seti@home. Przy kombinacji danych które występują w tych pakietach proporcja ilości instrukcji sterujących (testowanie, skoki itp.) w stosunku do ilości instrukcji arytmetycznych staje się niekorzystna do tego stopnia że obliczenia CPU oblicza je sporo szybciej niż GPU. Podczas gdy dla pozostałych pakietów GPU jest kilka/kilkanaście razy szybsze od CPU.

Tu przyszłość bardziej bym widział w rozwiązaniach takich jak Terascale Intel-a które to ma zawierać duża ilość (dziesiątki może nawet setki) rdzeni podobnych do tych z procesorów pentium, czyli zwierających mechanizmy które pomagają w obsłudze tego typu instrukcji, takie jak przewidywanie skoków, obsługa bitów przeniesienia i pożyczki itp.

@Z jednej strony to może przesada, ale z drugiej... Liczba telefonów komórkowych, tabletów, iPadów i iPodów rośnie z każdym dniem, a zarazem zauważam tendencję, aby zastępować tym wszystkim PCty i Laptopy (choć to może tylko marzenia speców od marketingu? :P ). A o tym segmencie potencjalnie "chętnych do obliczeń" myślałeś? Procesory ma toto już prawie jak zwykłe komputery, więc zadania mogłyby być nawet podobne, włączone jest non-stop... Oczywiste wprawdzie, że podczas pracy na baterii nie mógłby działać BOINC, ponieważ nie jestem pewien, czy dobę by taki sprzęt wytrzymał, ale już chociażby podczas ładowania baterii - czemu nie? :)
Jak to od strony praktycznej wygląda? Potrzebne są z Twojej strony jakieś dodatkowe wersje programów, czy też wystarczy ściągnąć BOINCa, odpowiednio skonfigurować (praca na baterii jest chyba domyślnie zatrzymująca obliczenia) i jazda? :)

O widzisz, akurat kolega z naszej drużyny napisał klienta boinc dla androida i przeniósł aplikację projektu Enigma@home, więc zapewne dało by się przenieść i te aplikacje. Nie wiem tylko czy przy ograniczonych zasobach zarówno ludzkich jak i czasu nie jest jeszcze za wcześnie żeby zużywać je na takie migracje.
Tytuł: mersenneathome
Wiadomość wysłana przez: Michu86 w 12 Marzec 2012, 22:48
Dziękuję za wszystkie wyczerpujące odpowiedzi :)

Wprawdzie nasuwają się kolejne w związku z RHO, P-1 oraz ECM Lenstry, ale o to może zapytam, kiedy zacznie działać :)

Po odpowiedziach widzę, że poza użyczeniem komputera w niczym nie pomogę (bo połowy nie rozumiem ;) ), a więc tylko pozdrawiam i życzę powodzenia przy dalszym rozwijaniu projektu :)
Tytuł: mersenneathome
Wiadomość wysłana przez: Michu86 w 12 Kwiecień 2012, 00:25
Witam

Miesiąc minął - nie wiem, czy to dużo, czy to mało, niemniej brak jakiejkolwiek informacji ze strony opiekuna jest trochę... Demotywujące? No w każdym razie, aby trochę ożywić temat postanowiłem się odezwać :) A przy okazji kilka pytań i spostrzeżeń:


Co do zaprzęgnięcia GPU do obliczeń, to jednak nadal będę starał się przekonać, gdyż nawet, gdyby ostatecznie obliczenia miały trwać dłużej niż na CPU, to zawsze jest to kolejna jednostka obliczeniowa, która byłaby wykorzystana do obliczeń, a nie leżała bezczynnie. Z drugiej strony ja mam na myśli tylko nowsze karty graficzne, w których jest już GPGPU, czyli możliwość wykorzystania kart graficznych do obliczeń ogólnego przeznaczenia, czyli dokładnie to, co byłoby tutaj wymagane.
Że to kolejny rodzaj platformy, że różne rodzaje kart graficznych (przede wszystkim podział nVidia i AMD) - to wstępnie można to napisać "byle jak" i korzystając z OpenCL, który zadziała na kartach obu firm. O ile wykorzystanie GPU do obliczania L-L mogłoby być kłopotliwe ze względu na ilość potrzebnej pamięci, o tyle do sprawdzania podzielności nadają się wręcz doskonale - dużo równoległych obliczeń.
Wręcz sam chciałem takie "byle co" napisać, byle by było, ale niestety za stary komp i karta graficzna jeszcze kilka epok przed GPGPU. Jednak poza ewentualnymi problemami czasowymi nie widzę żadnych przeciwskazań, aby pójść w kierunku wykorzystania GPU.


Proszę także o informację, jak tam wygląda sprawa z L-L ? Kiedy ruszą odpowiednie testy, tak że nasze komputery zajmą się faktycznym szukaniem liczb pierwszych, a nie odrzucaniem pozostałych? :) Wspominał też Pan coś o innych metodach - może któraś z nich ruszyła do przodu?


Zauważyłem też 2 "nowe" statusy:
- zawieszony (dobrze zgaduję, że po prostu komputer, od którego nie było odpowiedzi, w końcu tę odpowiedź dał?)
- Przetwarzany, wysoki priorytet (co oznacza ten wysoki priorytet, dlaczego się pojawił i jak wpływa na obliczenia, skoro i tak jeden procesor może obsłużyć tylko jedno zadanie w tym projekcie?)


No i trochę mniej pozytywnie, tzn. liczba osób i ilość zdobywanych przez projekt punktów - wprawdzie wcześniej (jestem w tym dopiero od półtora miesiąca) tego nie obserwowałem, ale jak dotąd zauważam jedynie spadki. Domyślam się, że jest to spowodowane "wyścigiem" na początku marca, niemniej dobrze by było zatrzymać po takim wyścigu jak najwięcej (krótkie statystyki można zobaczyć tutaj (http://www.boincatpoland.org/wiki/U%C5%BCytkownik:Michu86). Osobiście uważam, że może to być spowodowane dość małą ilością informacji z Pana strony (3 nowe wiadomości na stronie projektu, w tym ostatnia z połowy lutego). Przydałyby się choć krótkie, być może nic nie wnoszące, ale jakiekolwiek newsy, byleby tylko dać do zrozumienia, że projekt "się rusza". Mi też takie informacje są potrzebne, przy czym sam dbam o to, żeby je uzyskać poprzez wypytywanie na tym forum tutaj :) Gdyż na forum projektu także od miesiąca cisza (poza dzisiejszą/wczorajszą informacją o błędzie pewnej osoby). Moim zdaniem gdyby ludzie widzieli, że prawie ciągle coś się dzieje mieliby większą ochotę wziąć czynny udział w projekcie.
Z drugiej strony czytając oficjalne forum rozumiem pewien dyskomfort, gdzie prawie każdy tylko namawia, żeby to zostawić i podłączyć się do GIMPSa - to nie pomaga, ale nie przejmuj się nimi, a poprzez ciągły rozwój pokazuj, że dystans pomiędzy projektami się zmniejsza :)


Tylko wspomnę też ponownie o zmianie prezentowania Computation Progress - spisując statystyki widzę, że nawet gdyby ograniczyć się tylko do pierwszych 100mln, obejmowałoby to większość interesującego nas przedziału :>


No i kolejna propozycja pewnej zmiany - Tdt znacznie wyprzedza etdt i xtdt, tak iż w obecnej sytuacji nim xtdt dojdzie do liczb, które zostały przeszukane przez tdt minie pewnie z ... kilka lat?
W każdym razie proponowałbym, aby wysyłać same xtdt i etdt do wszystkich (wyjątek, jeśli ktoś sobie ustawi, że chce dostawać tylko tdt) - w ten sposób bardziej skupimy się na przedziale, który jest na tą chwilę bardziej interesujący.


Na razie nic więcej nie przychodzi mi do głowy ;) Proszę o odpowiedź w wolnym (albo "wolniejszym" :) ) czasie.

Pozdrawiam
Tytuł: mersenneathome
Wiadomość wysłana przez: krzyszp w 12 Kwiecień 2012, 03:55
Cytat: Michu86 w 12 Kwiecień 2012, 00:25
Zauważyłem też 2 "nowe" statusy:
- zawieszony (dobrze zgaduję, że po prostu komputer, od którego nie było odpowiedzi, w końcu tę odpowiedź dał?)
- Przetwarzany, wysoki priorytet (co oznacza ten wysoki priorytet, dlaczego się pojawił i jak wpływa na obliczenia, skoro i tak jeden procesor może obsłużyć tylko jedno zadanie w tym projekcie?)
Co do reszty pytań, to nie potrafię pomóc, ale "zawieszony" oznacza przerwanie działania aplikacji (zwykle z powodu przełączenia managera na inną), natomiast "Przetwarzany, wysoki priorytet" oznacza, że wg managera projekt musi dostać więcej czasu, aby próbka zdążyła się zakończyć przed "deadline" (czyli ostatecznym terminem zaraportowania).
Tytuł: mersenneathome
Wiadomość wysłana przez: Troll81 w 12 Kwiecień 2012, 08:55
widzę że ostatnio wasza dyskusja miała miejsce 12 marca. Od tamtego czasu nie zadałes na forum nowych pytań, to i nie ma odpowiedzi :D Bobreckiego męcz na PW to pewnie ocknie się szybciej. Wiesz.... ludzie pracę mają, dom, dzieci... nie zawsze znajdują czas na hobby. Sam wiem ile tego sie zebrało jak kupiłem mieszkanie. Tona papierków do zrobienia a i tak jestem w plecy z niektórymi....
Tytuł: mersenneathome
Wiadomość wysłana przez: Sebastian M. Bobrecki w 12 Kwiecień 2012, 18:41
Fakt miesiąc minął a ja mam tyle na głowie że nawet tego nie zauważyłem.

Co do aplikacji GPU to ja nie mam obecnie zasobów żeby się tym zająć. Jeśli ktoś ma chęci, umiejętności i czas to ognia. Oczywiści mogę trochę pomóc czy doradzić w niektórych aspektach :)

W sprawie LL na razie sprawy nie posunęły się do przodu :( Nie ukończyłem też jeszcze aplikacji pozostałych testów :( Brakuje mi czasu do tego stopnia że ledwo opędzam kwestie administracyjne :(

Liczba stałych użytkowników, w prawdzie bardzo powoli ale rośnie. Wyścigi to taki już mają urok że ściągają masy tylko na chwilę. Nie mniej jednak po każdym pewien niewielki procent zostaje na dłużej :)

Na temat nowych wiadomości faktycznie ostatnio nie poświęciłem praktycznie ani minuty. Jest tego że jeśli już znalazłem trochę wolnego czasu wolałem go poświęcić na czynności, według mnie ważniejsze, związane z administracją i utrzymaniem. Pewne zdarzenia jednak miały miejsce (np. nowa wersja aplikacji etdt z 22 marca która powinna poprawiać wydajność o jakieś ~8%), ale jakoś mi uciekło żeby o tym napisać od razu a potem zapomniałem :( W tym temacie pewnie przydała by się pomoc.

Wskaźnik postępu myślę że dosłownie na dniach (lub nocach) zostanie zmodyfikowany.

Co do wyboru aplikacji to jest tak że serwer BOINC domyślnie wysyła zadania dla wszystkich dostępnych aplikacji (czyli tak jakby wszystkie były wybrane). Natomiast aplikacja tdt, co zrozumiałe ze względu na małe zapotrzebowanie na pamięć i krótki czas obliczeń, cieszy się największą popularnością. Jestem za pozostawieniem wolontariuszom pełnej swobody wyboru. Co więcej myślę że narzucanie lub ograniczanie wyboru mogło by zniechęcić niektórych ludzi.
Tytuł: mersenneathome
Wiadomość wysłana przez: Troll81 w 13 Kwiecień 2012, 11:25
to może klega tak zainteresowany zechciałby zostać współtwórcą projektu?
Tytuł: mersenneathome
Wiadomość wysłana przez: Michu86 w 16 Kwiecień 2012, 12:30
Dziękuję za odpowiedź mimo niewielkiej ilości czasu :)

"Jestem za pozostawieniem wolontariuszom pełnej swobody wyboru. Co więcej myślę że narzucanie lub ograniczanie wyboru mogło by zniechęcić niektórych ludzi."
Jak najbardziej wybór niech będzie, ale na przykład ja nie zmieniałem nic, niczego nie wybierałem, czyli mam domyślnie wszystkie 4:
tdt
etdt
xtdt
LL
Chodzi mi o to, żeby rzadziej wysyłać tdt osobom, którym wisi, jakiego rodzaju dostają zadania - to miałem na myśli.


Co do wersji na GPU - naprawdę miałem ochotę już prawie zacząć pisać, ale... Nie posiadam kompa, na którym byłbym w stanie na bieżąco sprawdzać, czy mój kod działa, na którym mógłbym w ogóle ćwiczyć tego typu zagadnienia, więc niestety w obecnej chwili także nie pomogę, mimo że projektem się mocno interesuję. Pomyślę nad tym.


O tej nowej wersji napisz - krótko, ale żeby było cokolwiek ;) Jak wejdzie nowy wygląd, to też krótkie info, żeby tylko cokolwiek tam było :)
Tytuł: mersenneathome
Wiadomość wysłana przez: Troll81 w 16 Kwiecień 2012, 14:20
A jakiego kompa byś potrzebował??
Tytuł: mersenneathome
Wiadomość wysłana przez: Michu86 w 20 Kwiecień 2012, 16:48
Mam dwa laptopy, przy czym jeden ma 10 lat, a drugi 6 :> Na razie popytam się "w okolicy", może ktoś będzie miał coś nowszego do pożyczenia, to zacznę się uczyć programowania współbieżnego ;)
Tytuł: mersenneathome
Wiadomość wysłana przez: Troll81 w 20 Kwiecień 2012, 17:19
u nas dsyć sporo było oddawania sprzętu ostatnio. Poszły jakies karty graficzne. Jakieś dwurdzeniówki też chyba... orientuj się to wyrwiesz coś ciekawego...
Tytuł: mersenneathome
Wiadomość wysłana przez: Michu86 w 25 Kwiecień 2012, 20:27
Tylko widzisz, mieszkam z 3 kolegami w 2-pokojowym mieszkaniu, więc na stacjonarkę nie ma najzwyczajniej w świecie miejsca, a z kolei co do wymogów dotyczących laptopa, to mam je tak wygórowane, że aż szkoda czasu (mojego na pisanie, a Twojego na czytanie ;) ) - mam IBM T42 oraz IBM T60, a wcześniej jeszcze dwa inne (inny T42 i T40) - tak więc można się domyślić, z jakiej rodziny będzie kolejny ;)

Kolega ma 1 kompa, na którym zadziała OpenCL, teraz tylko trzeba wyłuskać trochę więcej czasu :)
Tytuł: mersenneathome
Wiadomość wysłana przez: Troll81 w 26 Kwiecień 2012, 07:15
Za czasów studenckich mieszkałem w 2 pokojowym w 6 osób. A 4 osoby na 2 pokoje to był po prostu standard studencki. I wszyscy mieliśmy stacjonarki :D
Tytuł: mersenneathome
Wiadomość wysłana przez: Michu86 w 27 Czerwiec 2012, 18:36
Hmmm...

Czy ktoś może wie, dlaczego ostatnimi czasy nie działa ten projekt?
Tytuł: mersenneathome
Wiadomość wysłana przez: PoznanskaPyra w 27 Czerwiec 2012, 18:50
Ostatnio dostałem próbki 4 miesiące temu.
Tytuł: mersenneathome
Wiadomość wysłana przez: matszpk w 27 Czerwiec 2012, 20:08
Ja miałem trochę więcej szczęścia dostałem kilka WU po zaprzestaniu generowaniu WU. Mam nadzieję, że to tymczasowe. trochę szkodza (tak bardzo chciałem za pomocą mojego staruszka wejść do elity  :( ). teraz liczę NumberFields@Home. na forum projektu od kilku dni nic się ciekawego nie dzieje  :(.
Tytuł: mersenneathome
Wiadomość wysłana przez: Michu86 w 29 Czerwiec 2012, 10:49
No ja ostatnie punkty dostałem 15 czerwca, a jedno wykonane zadanie nadal czeka na odesłanie ...

Myślę, że opiekun by się podzielił informacją, gdyby miał zamiar zakończyć projekt, więc liczę, że to po prostu usterka, która zostanie usunięta :) ... Z drugiej strony ciągłe narzekania na brak czasu :(
Tytuł: mersenneathome
Wiadomość wysłana przez: Tomasz R. Gwiazda w 13 Lipiec 2012, 09:01
http://mersenneathome.net/forum_thread.php?id=103

Sebastianie co sie stalo ? nie chodzi o aspekt sprzetowo/finansowy chyba ? bo z tym by mogla pomoc Fundacja.
czy jest szansa na powrot kiedys projektu ?
Tytuł: mersenneathome
Wiadomość wysłana przez: goofyx w 13 Lipiec 2012, 09:08
Cytat: Tomasz R. Gwiazda w 13 Lipiec 2012, 09:01
http://mersenneathome.net/forum_thread.php?id=103

Sebastianie co sie stalo ? nie chodzi o aspekt sprzetowo/finansowy chyba ? bo z tym by mogla pomoc Fundacja.
czy jest szansa na powrot kiedys projektu ?
Dlaczego kolega Sebastian wcześniej do nas nie pisał?
Moglibyśmy już dawno płynnie przenieść projekt pod skrzydła fundacji.

ps.: jest możliwość otrzymania zawartości serwera tak aby uruchomić projekt ze stanem w jakim został zatrzymany?
Tytuł: mersenneathome
Wiadomość wysłana przez: mackal w 12 Sierpień 2012, 09:36
Z tego co zauważyłem na forum oficjalnym, to projektem jest zainteresowane również PromeGrid, lecz piszą, że jedyne czego potrzebują to zgoda właściciela.
Tytuł: mersenneathome
Wiadomość wysłana przez: Cyfron w 15 Sierpień 2012, 21:36
ale że chcą przejąć projekt, czy tylko pomysł?
Tytuł: mersenneathome
Wiadomość wysłana przez: andy101fah w 25 Lipiec 2013, 07:39
Nowa strona projektu mersene@home   XD XD XD

http://mersenneathome.net/