O Bitcoinie słyszał chyba każdy. Jego szybki wzrost wartości spowodował znaczące podwyżki cen kart graficznych, które są wykorzystywane do „kopania” tej kryptowaluty. Na szczęście dla graczy – i pośrednio innych użytkowników komputera – Bitcoin ma zaszyty w algorytmie mechanizm zwiększający trudność jego wyliczania. Używanie w tym celu GPU szybko przestało się opłacać. Gracze odetchnęli z ulgą, a górnicy przerzucili się na wyspecjalizowane układy ASIC.
Natura nie znosi jednak próżni, dlatego znaleźli się ludzie, którzy zapragnęli wykorzystać zasoby leżące odłogiem. Nowe waluty pojawiały się i znikały. Wzbudzały przy tym większe bądź mniejsze zainteresowanie. Ostatecznie jednak wraz ze wzrostem wartości pierwowzoru kilka mniej znaczących walut zyskało powszechną akceptację.
W efekcie kilka miesięcy temu sytuacja zaczęła się powtarzać. Ze sklepów wykupywano całe dostawy radeonów, co wywindowało ich ceny do absurdalnego – z punktu widzenia graczy – poziomu. To oczywiście pociągnęło za sobą wzrost cen kart Nvidii, a nawet tanich i popularnych procesorów, takich jak Pentium G4560, również wykorzystywanych w koparkach ze względu na połączenie niskiej ceny z wystarczającą wydajnością.
Tak masowe podwyżki nie są, oczywiście, zasługą pojedynczych ludzi kupujących jedną czy dwie karty do swoich komputerów. „Winni” są właściciele całych tak zwanych farm, albo kopalni, złożonych z maszyn zbudowanych tylko w jednym, konkretnym celu: wydobywania kryptowalut.
Do redakcyjnego laboratorium trafiło urządzenie wykonane przez pracowników Asusa. Chcemy jednak zaznaczyć, że konstrukcja nie jest firmowana logo tej marki – tylko same podzespoły. W czasie, gdy liczenie kryptowalut było bardzo opłacalne, w firmie pojawił się pomysł sprzedawania takiego zestawu w atrakcyjnej cenie. Ramę, rzecz jasna, użytkownik musiał wykonać samodzielnie, co jak za chwilę zobaczycie, nie jest ani trudne, ani kosztowne.
Kryptowaluty tracą na wartości, a zestawu Asusa w sklepach nie ma i nie było. My jednak z ciekawości postanowiliśmy się mu przyjrzeć i sprawdzić, jak działa i jak został wykonany.
Budowa koparki
Konfiguracja sprzętowa w urządzeniu służącym do jednego, konkretnego celu powinna być temu celowi podporządkowana – i tak rzeczywiście jest w tym przypadku. Ze względu na znikome obciążenie procesora w tego typu zadaniach w pełni wystarcza tani Celeron G3900 do podstawki LGA1151. Aż nadto wystarczy również jeden moduł pamięci operacyjnej DDR4 o pojemności 8 GB. Tym, co odróżnia testowaną maszynę od biurowego komputera, jest przede wszystkim sześć kart Asus Radeon ROG Strix RX 480 8 GB. Dokładny test tego modelu w standardowych zastosowaniach przeprowadziliśmy już jakiś czas temu.
Drugim kluczowym elementem zestawu jest płyta główna, Asus Prime H270-Plus. Jej istotną cechą szczególną jest sześć złączy PCI-E: dwa ×16 i cztery ×1. Windows 10 został zainstalowany na nośniku SSD ADATA SU900. Najtańszy HDD byłby równie dobrym wyborem, ale prawdopodobnie użyto tego, co było pod ręką, a może powodem jest wygoda testera. Całość zasila nie jeden, a dwa standardowe zasilacze Corsair CX850M. Mają one certyfikat efektywności 80 Plus Bronze oraz, co również jest ważne, modularne okablowanie.
Zamontowanie tych wszystkich części w standardowej, choćby największej, obudowie nie byłoby możliwe. Dlatego powstał widoczny na zdjęciach poniżej stelaż z profili i kątowników aluminiowych, kupionych w markecie budowlanym.
Wbrew obawom konstrukcja okazała się stabilna i trwała zarówno w trakcie pracy koparki, jak i podczas jej kilkukrotnego przenoszenia. Nie wpadała również w wibracje. Zastrzeżenia mamy co do sposobu mocowania kart. Jedna, niezbyt solidna śruba od strony śledzia to jedyny stały element. Tył kart opiera się na poziomym profilu, ale ma swobodę ruchu zarówno na boki, jak i do góry. Póki koparka stoi, nie ma to znaczenia, ale przed jakimkolwiek transportem należy brać to pod uwagę.
Druga wada stelaża jest oczywista i też widoczna na powyższym zdjęciu: przez brak obudowy karty zbierają ogromne ilości kurzu.
Ostatnim wymagającym omówienia elementem, niespotykanym w domach i biurach, są risery PCI Express. Pozwalają one zamontować karty graficzne w oddaleniu od płyty głównej i siebie nawzajem. W testowanym komputerze użyto dwóch wersji: czterech sztuk riserów PCI-E ×1/×16, opartych po prostu na taśmie z przewodami, i dwóch sztuk wyglądających na pierwszy rzut oka znacznie profesjonalniej. Te ostatnie składają się z miniaturowej płyty drukowanej ze złączem PCI-E ×1 i gniazdem na kabel USB. Na drugim końcu kabla znacznie większą płytę wyposażono w pełnowymiarowe złącze PCI-E ×16 i gniazdo molex na dodatkowe zasilanie.
W trakcie testów okazało się, że jedna z kart nie działa prawidłowo. Taktowanie mimo stuprocentowego obciążenia pozostawało na poziomie 300 MHz, a wyniki często okazywały się błędne. Winnym okazał się jeden z tych mniej licznych riserów. Podejrzana karta pracowała perfekcyjnie w pozostałych slotach. Ostatecznie wszystkie testy musiałem wykonać z użyciem pięciu kart, a uszkodzony element wymontowałem.
Bliższa inspekcja pozbawiła mnie złudzeń. Jak widać na powyższym zdjęciu, jakość wykonania pozostawia wiele do życzenia. Użycie tak tanich riserów w komputerze, którego cena przekracza 10 tys. zł, było dla mnie zaskoczeniem. Po usunięciu wadliwego elementu i w związku z tym jednej z kart nie napotkałem na żadne problemy. Komputer działał bardzo szybko i stabilnie, Windows 10 nie miał kłopotów z jednoczesną obsługą pięciu kart.
Wydajność i kultura pracy
Jak Radeon RX 480 (i właściwie identyczny RX 580) sprawuje się w grach, wszyscy wiemy. Karty te jednak są znacznie szybsze w kopaniu kryptowalut od dostępnych w zbliżonej cenie kart GeForce.
Wydajność zmierzyłem za pomocą narzędzia NiceHash. Jest to zautomatyzowane, a więc najwygodniejsze, rozwiązanie. Przy pierwszym uruchomieniu programu i podaniu adresu swojego portfela (w uproszczeniu jest to numer konta, na który mają spływać zarobione środki) następuje sprawdzenie wydajności wszystkich popularnych algorytmów wydobywania kryptowalut. Wyniki zostają zapamiętane, a program podczas pracy na bieżąco kontroluje kursy i dobiera takie ustawienia, by użytkownik zarobił jak najwięcej.
W czasie testów najbardziej dochodowy był DaggerHashimoto, służący do wydobywania Ethereum. Wydajność okazała się zgodna z oczekiwaniami: pojedyncza karta osiągała 24–25 MH/s, a cała koparka – 120–125 MH/s.
Alternatywnie w dniach, gdy Ethereum miało niską wartość, program wybierał inny sposób pracy: połączenie DaggerHashimoto z Decred. Oznaczało to kilkuprocentową zmianę w wydobyciu Ethereum: spadek do poziomu 115 MH/s, ale zyskałem 3,456 GH/s w Decred. Taką sytuację przedstawia poniższy zrzut ekranowy.
Wart uwagi jest przede wszystkim fioletowy wiersz. Jak widać, karty utrzymywały względnie niską temperaturę działania, 64–67°C przy prędkości wentylatorów na poziomie 50%. W uchwyconym momencie komputer był zaskakująco cichy i postawiony obok zupełnie nie zwracał na siebie uwagi odgłosem działania.
Zwracał za to uwagę wytwarzanym ciepłem. Zmierzony miernikiem pobór energii przy braku obciążenia wyniósł 129 W. Sporo, jak na komputer, który nic nie robił, ale nie jest to wartość, która mogłaby zrobić na kimkolwiek wrażenie. Jednak 870 W podczas pracy – owszem. Miałem wrażenie, jakbym stał obok popularnej farelki, a potęguje je czerwone podświetlenie.
O ile więc początkowo karty są chłodne i ciche, z czasem w pomieszczeniu robi się coraz cieplej. Przekłada się to na temperaturę GPU, która po kilkugodzinnych testach dochodziła do 78–80°C. Należy przy tym zaznaczyć, że kultura działania kart pozostaje na najwyższym poziomie. Wytwarzane ciepło nie jest, oczywiście, aż takim problemem dla farm czy kopalni zajmujących całe puste hale, ale w mieszkaniu, zwłaszcza latem, po prostu nie da się wytrzymać. Przy sześciu działających kartach byłoby jeszcze gorzej.
Pewnym rozwiązaniem jest undervolting, czyli obniżenie napięcia zasilania GPU. Radeony RX znane są z tego, że mają je ustawione zbyt wysoko i że paradoksalnie po jego obniżeniu podkręcają się lepiej. Z podkręcania ze względu na upał zrezygnowałem, obniżyłem jednak napięcie o 0,05 V, co przełożyło się na pobór energii niższy o mniej więcej 100 W. Różnica znacząca, ale w praktyce niemal nieodczuwalna. Pomieszczenie po prostu nagrzewało się dłużej.
Opłacalność
Podane wyżej suche wartości w MH/s nie mówią zbyt wiele. Osoby obeznane z zagadnieniem znają je na pamięć, co najwyżej mogą mieć pewność, że testowana koparka działała poprawnie. Wszystkich pozostałych bardziej interesuje pytanie o to, ile można na tym zarobić.
Odpowiedź zależy od kursu Bitcoina, kursu wydobywanej kryptowaluty, kursu dolara i ceny prądu. Pierwsze dwie wartości tylko w czasie przeprowadzanych przeze mnie testów podlegały wahaniom sięgającym 60 procent. Dolar – „tylko” kilkuprocentowym. Na szczęście cena prądu była stała.
Wahania te w pewnym stopniu niwelował NiceHash. Ostatecznie raportował dzienny zarobek rzędu 28–40 zł. Koszt zużytego prądu był stały: 12 zł dziennie. Jeśli przyjmiemy średni zarobek po odjęciu kosztów na poziomie 22 zł, okaże się, że potrzebujemy ponad roku na sam zwrot wydatków poniesionych na zakup sprzętu. Przy uwzględnieniu kosztów prądu zużytego przez konieczną w przypadku kopania w domu klimatyzację – jeszcze więcej. Opłacalność pracy dowolnej karty o znanych osiągach można na bieżąco sprawdzać z wykorzystaniem dostępnego kalkulatora, wybrawszy opcję Custom.
Oczywiście, w perspektywie miesiąca, już nie mówiąc o roku, kryptowaluty mogą znacząco zyskać na wartości, ale mogą również stracić. W tym drugim przypadku pozostanie sprzedaż koparki ze znaczącą stratą albo próba wykorzystania jej w inny sposób.
Jeśli nie kryptowaluty, to co?
AMD w swoich materiałach informuje, że Radeon RX 480 osiąga szczytową moc obliczeniową na poziomie 5,8 teraflopa, zatem pięć takich kart zapewnia maksymalnie 24 teraflopów. Czy to dużo, czy mało? Dziesięć lat temu wystarczyłoby to na 26. miejsce w rankingu 500 najszybszych komputerów na świecie. Robi wrażenie?
Jak ta teoretyczna szczytowa wydajność przekłada się na realia, sprawdziłem w dwóch różnych projektach działających na zasadzie obliczeń rozproszonych. Ich dokładne działanie, wady i zalety przedstawię w jednym z dalszych artykułów, a tu ograniczę się do niezbędnych podstaw.
Pierwszym z projektów jest Folding@home, rozwijany przez Uniwersytet Stanforda i wspierany przez wiele firm i instytucji. Jego celem jest, jak sama nazwa wskazuje, symulowanie procesu zwijania się białek w aktywne biologicznie cząsteczki. Znajomość dokładnego przebiegu tego procesu jest kluczowa dla zrozumienia powstawania takich schorzeń, jak choroba Alzheimera i niektóre typy nowotworów.
Po pobraniu klienta wystarczyło skonfigurować konto: podać login i numer polskiej drużyny (276). Karty zostały wykryte bez żadnych problemów, a obliczenia ruszyły. Wydajność w Folding@home wyrażana jest w ppd (points per day), czyli po prostu w punktach uzyskiwanych w ciągu doby. Im więcej, tym oczywiście lepiej.
Uważne oko powinno natychmiast zauważyć problem. O ile 80% średniego użycia GPU nie zachwyca, chociaż samo w sobie jeszcze bardzo nie martwi, to charakter skoków, od 0% do 100% – już tak. Istnienie problemu potwierdza raportowana w prawym górnym rogu wartość ppd: nieco ponad 1 230 000. Pojedynczy RX 480 powinien osiągać ponad 300 000, a cała koparka – ponad 1 500 000. Pokrywa się to z obciążeniem odczytanym w GPU-Z. Wynik mimo wszystko robi wrażenie. Niezwykle popularny w Folding@home kilka lat temu Radeon 7870 osiąga około 80 000. Czasy jednak się zmieniły: Titan X, pobierający znacznie mniej energii od koparki i tańszy, osiąga zbliżoną wydajność…
Co jest problemem? Wydajność CPU, mimo że był bardziej obciążony niż w trakcie kopania kryptowalut, okazała się wystarczająca. Ograniczenie działania programu do jednej karty nie pomogło: nadal pracowała na 80% możliwości. Winna okazuje się przepustowość PCI-E ×1.
Drugi użyty w teście projekt działa w ramach platformy BOINC. Jest to Einstein@home. Jego zadaniem jest analiza danych pozyskiwanych z LIGO oraz GEO600 w celu wykrywania fal grawitacyjnych i pulsarów. I tym razem wszystkie karty zostały bez problemu wykryte i skonfigurowane, ale potem było już tylko gorzej. Zadania o tej samej złożoności jedna karta wykonywała przez mniej więcej 9 minut, druga – przez niemal półtorej godziny, a trzy pozostałe zawiesiły wykonywanie obliczeń na różnym etapie bez żadnego wyraźnego powodu. I tym razem problemem okazała się zbyt mała przepustowość złącza, na którą nałożyło się ciągłe obciążenie procesora na poziomie 100%. Krótko mówiąc – całkowita porażka.
Podsumowanie
Jakość kluczowego elementu koparki, czyli kart, okazała się wzorowa. Wyjąwszy awarię risera cały komputer znakomicie się sprawdzał w zadaniu, do którego został stworzony. Na pytanie o to, czy warto zaryzykować i zainwestować około 11 tys. zł z nadzieją na duże pieniądze, każdy musi odpowiedzieć sobie sam.
Definitywnie mogę natomiast stwierdzić coś innego. Testowany dziś zestaw zupełnie się nie nadaje do poważniejszych zadań opartych na mocy obliczeniowej GPU. Budując maszynę z myślą o nich, zdecydowanie należy zainwestować również w płytę główną i procesor udostępniające dużo linii PCI-E. Na myśl od razu przychodzi Threadripper, który zapewnia aż 64 linie.