[-]
Szybkie szukanie


Baner sklepu jdtech.pl
Odpowiedz 
 
Ocena wątku:
  • 0 Głosów - 0 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
COVID-19 - pomóż w walce z wirusem
20-05-2020, 15:22 (Ten post był ostatnio modyfikowany: 03-06-2020 02:06 przez szopen.)
Post: #1
COVID-19 - pomóż w walce z wirusem
Masz stary, nieużywany już komputer? leżące odłogiem RaspberryPi? albo może inny SBC/SoM?
(niestety jeśli chodzi o RPi to tylko interesują nas modele 3B, 3B+ lub 4B, pozostałe "zabytki" mają zbyt małą moc obliczeniową)
Jeśli TAK, to możesz się przyłączyć do jednego z projektów obliczeń rozproszonych wspierających naukowców pracujących nad wirusem.

Temat może nie jest już tak "gorący" jak był w marcu czy kwietniu, ale nadal jest warty uwagi (i pewnie jeszcze długo będzie, ale nawet gdyby się zdezaktualizował to F@H w pełni automatycznie przerzuci swoje siły na obliczenia związane z innymi groźnymi chorobami, a Boinc zapewne będzie trzeba przerzucić ręcznie na inny projekt - tego wciąż nie wiem, bo nie drążyłem tematu, gdyż walczyłem z problemami ze sprzętem, a temat koronawirusa jest jednak jak najbardziej wśród najistotniejszych).


Wcześniej już wspominałem o projekcie Folding@home https://foldingathome.org/
m.in. tam:
http://forum.jdtech.pl/Watek-home-assist...2#pid48722
w kontekście integracji z HA, bądź wręcz instalacji wraz z HA na tej samej maszynie (wymagana architektura amd64).
Kwestie związane ze słynnym wirusem są ładnie opisane w FAQ na tamtejszym forum
https://foldingforum.org/viewtopic.php?f=24&t=32463
Generalnie FAH wymaga do pracy procesora zgodnego z x86 (w pewnych wypadkach wymagania są wyższe, tj. wymagane 64bity), ale daje się uruchomić także na starszym sprzęcie, pracującym pod windows już od xp w górę, a także na osx czy linuxie (link dla posiadaczy starych systemów chcących instalować klienta ręcznie w systemach rodzaju win xp, ubuntu 9 czy osx 10.6.4 https://download.foldingathome.org/relea...c/release/ )
użycie współczesnego oficjalnego instalatora jest znacznie bardziej banalne.
Ten projekt jest o tyle fajny, że pod windowsem lub linuxem umożliwia wykorzystanie zwykle bardzo wydajnych GPU do obliczeń - wspierane są karty graficzne nvidii i amd (należy mieć zainstalowany pełny pakiet sterownika), karta graficzna jest wykorzystywana tylko przy ustawieniach użytej mocy obliczeniowej na Medium (używa GPU i większość rdzeni CPU) lub Full (używa wszystkie rdzenie CPU i GPU, to ustawienie się nadaje dla komputerów dedykowanych tylko obliczeniom), ustawienie Light wyłącza z obliczeń kartę graficzną i korzysta tylko z jednego rdzenia CPU, oczywiście aby GPU brał udział w obliczeniach, musi być wspierany, dla przykładu dość archaiczny GF 560 GTX ma moc obliczeniową około 1TFLOP (czyli 1000GFLOP)
https://foldingathome.org/support/faq/in...uirements/
https://foldingathome.org/support/faq/in...uirements/

Przy okazji - dorzuciłem sobie sygnaturkę ze statystykami (obrazek jest generowany na extremeoverclocking.com na podstawie oficjalnych statystyk F@H), opis jak wygenerować swój własny:
https://folding.extremeoverclocking.com/?nav=IMAGES

ale… do rzeczy, bo nie o tym chciałem tu napisać :O



Tak się składa, że po "niedoszłym do realizacji" projekcie zalega(ł) u mnie w chacie Nvidia Jetson Nano, czyli taki SBC może mało, ale jednak pod wieloma względami podobny do RPi, ale z "dość wypasionym" 128-rdzeniowym GPU Maxwell, więc zacząłem się zastanawiać czy nie dałoby się go zaprząc jakoś do tego projektu, niestety FAH skupia się jedynie na architekturze x86 a właściwie amd64, a tymczasem jetson bazuje na procku w architekturze arm, więc zacząłem szukać jakiejś alternatywy i… znalazłem (choć nie do końca, ale o tym dalej), a jest to projekt

Fold for Covid https://foldforcovid.io/ powstały jako wsparcie projektu Rosetta@home https://boinc.bakerlab.org/ przy zaangażowaniu firmy balena https://www.balena.io/

Jak dla mnie główna zaleta to wsparcie architektury arm, ale dla wielu w szczególności początkujących atutem będzie wręcz banalna instalacja.

Mamy 3 możliwości:
1) użycie na jednym z wielu wspieranych SBC czy SoM, a wśród nich RaspberryPi modele 3 i 4 czy Nvidia Jetson
(pobieramy obraz, ewentualnie podając dane logowania do WiFi, "wypalamy" go na karcie TF używając balenaEtcher https://www.balena.io/etcher/ ) rozwiązanie to angażuje nasz moduł czy "komputerek jedno-płytkowy" w 100%
2) użycie na jakimś starym komputerze, którego nie planujemy już używać (droga jest podobna, ale nie całkiem - tworzymy bootowalny pendrive, który instaluje obraz systemu na dysku twardym, UWAGA: zamazując dane na hdd/ssd, więc jeśli mamy jakiekolwiek istotne dane lub rozważamy ewentualne użycie w innym celu w przyszłości używając obecnie zainstalowanego systemu, to przed użyciem instalatora robimy całkowity backup, albo lepiej podmieniamy hdd/ssd na inny - może być niemal dowolnie mały), to rozwiązanie również angażuje w 100% użyty komputer (nie da się go używać do innych celów), jak dotąd nie wypróbowałem tej wersji, choć mam w planie jeśli tylko 32-bitowe x86 jest wspierane (muszę podmienić hdd w starym netbooku) 32-bitowe procesory w tym projekcie nie są jednak wspierane (tj. w foldforcovid.io, bo normalny klient Boinc jest dostępny https://boinc.berkeley.edu/download_all.php ) - ponoć 32-bitowe wyszły ze sprzedaży 13 lat temu? ale netbook na atomie trzyma się do dziś świetnie (no prawie Tongue)
3) zwyczajna instalacja klienta BOINC, i przyłączenie się do projektu Rosetta@home oraz wybór teamu Fold for Covid, ten rodzaj instalacji jest odpowiedni dla komputera, który służy normalnie do innych zadań (tego akurat nie mam w planie, bo FAH i tak już zużywa całą nadmiarową moc obliczeniową u mnie)

Zasadniczo wszytko co trzeba wiedzieć i pobrać do instalacji mamy w linku
https://foldforcovid.io/#get-started

Przeczytaliście? macie sprzęt? - więc do dzieła!

Aby nie było że ściemniam - tutaj moje statystyki (nie są imponujące, w końcu dopiero co włączyłem się do tego projektu, a sprzet nie jest topowy Tongue ale to taka mrówcza robota - każdy nawet najmniejszy wkład się liczy)
https://www.boincstats.com/stats/-1/user...544/charts

Jeśli chodzi o RPi to może nie są jakoś superwydajne, ale w takim modelu obliczeń również się przydają (przebijają wydajnością słabsze atomy)
https://boinc.bakerlab.org/rosetta/cpu_list.php

Jetsony można tam znaleźć po użytym procku wyszukując taki ciąg:
ARMv8 Processor rev 1 (v8l) [Impl 0x41 Arch 8 Variant 0x1 Part 0xd07 Rev 1]

Realnie większość obliczeń w projekcie BOINC wykonują akademickie farmy serwerów bazujące np. na AMD EPYC 7702 (dwuprocesorowy serwer ma łącznie 128 rdzeni i 256 wątków, ale nie są to tanie zabawki - jeden procesor kosztuje koło 8000€) lub starszych Xeonach E5 (też efekt skali w przypadku np. E5-2630V4 czyli 10r 20w i około 25 tysięcy komputerów z tymi prockami; albo E5-2697V2 12r 24w), ale w projekcie uczestniczy koło 250 tysięcy komputerów i większość tej liczby to jednak prywatny sprzęt domowych uczestników projektu, a nawet "biedne RPi" ma 4 rdzenie po prawie 1,5 GFLOP'a, co daje łącznie na 4 rdzeniach prawie 6GFLOP'ów.

W ramach ciekawostek - oprócz nowszych SBC Raspberry jest wsparcie dla chyba całej rodziny modułów Nvidia Jetson oraz płytek bazowych dla modułów nvidii
np. Aetina ACE-N510
https://www.aetina.com/products-detail.php?i=234

projekt obejmuje też całkiem egzotyczny sprzęt np. moduły bazujące na NXP i.MX8M
jak np Google Coral
https://coral.ai/
Boundary Devices Nitrogen8M Mini
https://boundarydevices.com/product/nitrogen8m-mini/
czy Variscite DART-MX8M
https://www.variscite.com/product/system...xp-imx-8m/



No dobra nie byłbym sobą gdybym trochę nie ponarzekał (czytaj: spojrzał na to z innej perspektywy).
Mimo niewątpliwych plusów - jak możliwość "zatrudnienia" do obliczeń czegoś innego niż x86, niestety ten projekt ignoruje całkowicie istnienie GPU - wszystkie obliczenia są wykonywane jedynie przez CPU, więc "lepsza połowa" Jetsona Nano mi się jednak marnuje, jest to kwestia głównego projektu, bo i klienty x86 nie korzystają z GPU.

Choć wieść gminna niesie, że Jetson Nano wcale nie jest taki wydajny jakim go w reklamach malują, a w każdym razie nie w stosunku do swojej ceny - jest 3x droższy od RPi, swój egzemplarz kupiłem akurat w ramach promocji i gdy $ był tańszy, teraz na 100% bym się nie zdecydował…

Narzekań ciąg dalszy: tym razem na wypust Nvidii - w standardowym starter-kit'cie (to się oficjalnie nazywa: "zestaw programistyczny") dostajemy moduł (SoM) + płytę "główną", czyli miejsce do zainstalowania modułu i… kartonowe pudełko do poskładania jako podstawka, takie coś zamiast obudowy (!) oczywiście góra nie jest osłonięta w żaden sposób, mi się wtedy promocyjnie trafił zestaw brandowany przez waveshare zawierający dodatkowo zasilacz (niestety w wersji micro-USB), kartę pamięci i czytnik do tej karty, dokładnie taki (teraz cena jest raczej nie do przyjęcia…):
https://www.waveshare.com/product/ai/jet...?sku=16531
a wierząc w sukces planowanego projektu domówiłem do kompletu obudowę (tego modelu już nie produkują, anteny w wizualizacji nie są do kompletu - one "przynależą" do karty WiFi, której nie znajdziemy w starter-kicie!):
https://www.waveshare.com/jetson-nano-case-b.htm
Poczytałem też wtedy w necie zachwyty nad trybem low-power i tym, że sprzęt może chodzić bez chłodzenia i… w to uwierzyłem nie zamawiając nic do chłodzenia, jak się okazało zemściło się to wkrótce po tym, gdy się przyłączyłem z tym sprzętem do projektu Fold for Covid - Jetson Nano zaczął freezować, obliczenia przekraczały time-out'y, bo procek prawdopodobnie throttlował itd… jak się okazuje radiator + obudowa ograniczająca przepływ powietrza wystarczyły, by samodzielnie (bez wykorzystania GPU!) pracujący na pełnych obrotach procek się przegrzewał, teraz mam tam samoróbkę z jakiegoś wentylatora z odzysku (wątpliwa estetyka), ale sprzęt w końcu działa:
   
chociaż w sumie całe "arm'owe stanowisko antycovid'owe" nie jest jakoś specjalnie estetyczne…

miejsce na resztę tekstu Tongue jeśli tylko jeszcze coś mi zaświta, bo najważniejsze już napisałem.

Zapraszam do pochwalenia się wynikami wszystkie osoby, które się przyłączyły do akcji (niezależnie czy miałem na to jakikolwiek wpływ, "stali zwijacze" też mile widziani).
Jeszcze info dla początkujących - na początku nie ma co się zrażać pozornym brakiem wyników - przeliczenie jednego WU na słabszym sprzęcie trwa kilka dni (FAH skróciło timeouty z okazji koronawirusa, więc slaby sprzęt x86 proponuję wykorzystać w Boinc, gdyby nie nadążał w FAH), statystyki cogodzinne w FAH generowane są dla użytkowników z dorobkiem powyżej 100k punktów, w głównym rankingu dla nowicjuszy dostępne są tylko te informacje generowane raz na dobę (podobnie grafika, którą prezentuję w stopce ma też pewne ograniczenia, na 100% drużyna musi mieć miejsce <1000 w ogólnym rankingu, "team HA" dopiero niedawno się załapał na to minimum, reszta do sprawdzenia w linku gdzieś wyżej bo użytkownicy też muszą mieć jakiś minimalny dorobek, grafika jest i tak generowana raz dziennie), jedynie "na żywo" czyli co godzinę podliczane są WU i punkty (ale bez rankingu)



PS miejsce (dział) wybrałem nieprzypadkowo - temat częściowo łączy się z innym tu opisanym projektem, a jetson miał być wykorzystany w zastosowaniu związanym z tematyką działu, ale sił i sprzętu mi zabrakło…

Statystyki Folding@home
[Obrazek: sigimage.php?un=szopen&amp;t=247478]
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
Podziękuj Odpowiedz cytując ten post
Odpowiedz