Nowy format kompresji plotów - kompresja działek Chia

Autor Zespół Kopalnie Krypto - poniedziałek 30 stycznia 2023

Nowy format kompresji plotów - kompresja działek Chia

Chia w ramach swojego programu beta opublikuje już wkrótce nową wersję plotera BladeBit. Pośród zmian znajdzie się tzw. kompresja plotów. Za opracowanie tej funkcji odpowiedzialny jest jeden z programistów Chia – Harold Brenes.

Nowe, skompresowane działki będą zawierały tę samą ilość dowodów, co obecne ploty. Będą jednak zajmować mniej przestrzeni dyskowej. O ile mniej? Wszystko zależy od poziomu kompresji, lecz można się spodziewać oszczędności w przedziale rzędu 15% - 30%. Kompresja jest możliwa wskutek kompromisów w relacji przestrzeni dyskowej i mocy obliczeniowej.

Kompresja plotów jest i zawsze będzie opcjonalna. Na decyzję o zastosowaniu kompresji działek oraz jej poziomu wpływa wiele czynników, które zostaną opisane w dalszej części tego artykułu.

Już na samym początku będzie można zauważyć, że zyski związane z zastosowaniem kompresji zmniejszają się stopniowo wraz ze wzrostem jej poziomu. Dlaczego tak się dzieje? Przede wszystkim należy przypomnieć sobie, jak działają ploty w systemie PoST.

 

Proof of Work kontra Proof of Space and Time

 

Proof of Work (PoW) jest algorytmem zabezpieczającym blockchainy takie jak Bitcoin. W przypadku tego mechanizmu komputery nazywane koparkami nieustannie generują losowe cyfry i litery, tzw. hashe. Można je przyrównać do kuponów na loterię. Kiedy zwycięski kupon zostanie odnaleziony, odpowiedzialna za niego koparka generuje nowy blok i odbiera nagrodę. Wówczas cały proces zaczyna się od nowa. Proof of Work był pierwszym Konsensusem Nakamoto, który, pośród wielu innych czynników, ułatwia potwierdzenie, że dany blockchain jest kanoniczny.

Proof of Work wymaga sporych nakładów energii elektrycznej. Dzieje się tak, ponieważ każda koparka musi nieustannie generować hashe, aby zmaksymalizować szanse wygranej. Oczywiste jest, że większość hashy nie daje zwycięstwa, jednak niezależnie od tego, czy dany hash zostanie wykorzystany do potwierdzenia bloku, czy nie, ilość pobranej energii do jego wytworzenia jest taka sama.

Proof of Space and Time (PoST) stanowi drugi Konsensus Nakamoto. Nie istnieją żadne inne alternatywy. Podobnie jak PoW wykorzystuje hashe, które funkcjonują niczym kupony na loterię. Główną różnicą tego mechanizmu jest jednak fakt, że muszą być one wygenerowane tylko raz. Nie są porzucane po użyciu – farmerzy przechowują je w plikach zwanych plotami (działkami). Każda działka zawiera ponad 4 miliardy losów. Koparka zużywa minimalną ilość zasobów na potrzeby pozyskania zwycięskiego kuponu. Wynika to ze sposobu, w jaki ploty są zorganizowane. Mało tego, działki te są wielokrotnego użytku. Można z nich korzystać aż do awarii dysku twardego.

Konsensus PoST sprawia, że blockchain Chia charakteryzuje się zabezpieczeniami na poziomie porównywalnym do Bitcoina, pochłaniając jednocześnie mniej niż 1% łącznej mocy sieci.

 

Opis kompresji plotów

 

Podczas tworzenia działki Chia wymagana ilość tymczasowej przestrzeni dyskowej jest większa niż ostateczny rozmiar plotu. Po zakończeniu pierwszej fazy plotowania działka jest użyteczna, lecz nie jest możliwie najmniejsza. Kolejne fazy generowania plotów wykonują algorytmy kompresji adekwatne do danych formatów działek Chia. Algorytmy te zostały zaprojektowane pod kątem maksymalnej wydajności przy jednoczesnym zachowaniu integralności danych. Innymi słowy, pierwotny format działek Chia od samego początku był poddawany kompresji.

Jak zatem skompresować ploty jeszcze bardziej? Nowy mechanizm kompresji wynika z kompromisów w relacji przestrzeni dyskowej i mocy obliczeniowej. Można zrezygnować z przechowywania wszystkich danych działki na rzecz przeliczania ich „w locie”. Im więcej danych plotu zostanie pominiętych, tym więcej obliczeń na potrzeby pozyskania dowodu będzie trzeba wykonać.

Poziomy kompresji zostały wyrażone w skali liczbowej, gdzie 0 oznacza brak kompresji, a 7 jej maksymalny poziom. Każdy kolejny poziom kompresji wiąże się z liniową redukcją rozmiaru działki. Moc obliczeniowa wymagana na potrzeby farmienia wzrasta jednak wykładniczo. Poniższa tabela przedstawia wpływ poszczególnych poziomów kompresji na rozmiar działki:

 

kompresja plotów - poziomy kompresji
 

Źródło: https://www.chia.net/2023/01/20/plot-compression-is-here

 

Farmienie z wykorzystaniem dotychczasowego formatu działki wymaga zaledwie nieznacznej mocy obliczeniowej. Skompresowanie plotów do poziomu 1 zaowocuje redukcją ich rozmiaru o 13,61%. Ilość nagród wzrośnie wówczas o 15,72%, a poziom wykorzystywanej mocy obliczeniowej niemal wcale. Obecne poziomy kompresji reprezentują liniową redukcję ilości bitów. Poziom 1 to przykładowo 16 bitów, a kolejny to 15 bitów. Ilość mocy obliczeniowej wymaganej na potrzeby dekompresji wzrasta jednak wykładniczo. Oznacza to, że w pewnym momencie zwiększanie poziomu kompresji może być niepraktyczne. Można temu jednak przeciwdziałać, dostosowując parametry działek. W przyszłości powstaną dodatkowe usprawnienia, które umożliwią zastosowanie kolejnych poziomów kompresji w sposób opłacalny. Przykładami takich rozwiązań będą wydajniejsze algorytmy, opcjonalna możliwość farmienia oparta o karty graficzne i zmiany w systemie weryfikacji jakości dowodów.

 

Kompromisy czasu i pamięci
w odniesieniu do metody Proof of Space Chia

 

W przypadku Chia Network rzadkim zasobem wykorzystywanym na potrzeby konsensusu blockchainowego nie są cykle komputerowe, a przestrzeń dyskowa. Stąd nazwa – Proof of Space. Czas wymagany na tworzenie działek nie stanowi problemu, ponieważ jest to czynność jednorazowa. Ponadto takie podejście ma pozytywny wpływ na szybkość i wydajność farmienia. Jeszcze przed uruchomieniem mainnetu (sieci głównej) Chia opublikowała przykładowy fragment kodu, który symulował zachowanie mechanizmu Proof of Space w przypadku plotów typu Hellman Attack.

Każdy plik zawierający działkę Chia składa się z tzw. tabel plottingu. Są one połączone w ustalone z góry relacje. Proces generowania działki staje się trudniejszy wraz z każdą kolejną tabelą w relacji. Bram Cohen zdecydował się na zastosowanie siedmiu tabel. Był to rozsądny kompromis pomiędzy ilością dyskowych operacji wejścia/wyjścia na potrzeby poszukiwania dowodów, ochroną przed kompromisami czasu i pamięci oraz czasem plotowania. Poniższy diagram przedstawia tabele plottingu, które tworzą pojedynczą działkę Chia:

 

kompresja działek - tabele plottingu

 

Źródło: https://www.chia.net/2023/01/20/plot-compression-is-here

 

Poniższy rysunek przedstawia natomiast działkę Chia w formacie k=32:

 

kompresja plotów - działka chia

 

Źródło: https://www.chia.net/2023/01/20/plot-compression-is-here

 

Porzucanie bitów

 

Działka w formacie k=32 o rozmiarze 101,3 GiB (108,8 GB) zawiera około 2^32 dowodów (4,29 miliarda dowodów przestrzeni). Nowa metoda kompresji, zwana „porzucaniem bitów”, usuwa całkowicie tabelę 1 dla poziomów 1 – 7. Zredukowana ilość wpisów z tabeli 1 jest w następnej kolejności umieszczana w tabeli 2. Kompresja poziomu 1 przechowuje jedynie 16 spośród 32 bitów wykorzystywanych przez działki w formacie k=32. Jest to problematyczne w przypadku próby pozyskania pełnego dowodu przestrzeni, ponieważ brakuje połowy z nich. Muszą one zostać wygenerowane „w locie”, wymagając przy tym dodatkowych obliczeń, które zweryfikują, czy poszukiwanej wartości nie ma pośród brakujących wpisów. Istnieje możliwość zrezygnowania z jeszcze większej ilości danych, przez co konieczne będzie przeprowadzenie kolejnych kalkulacji. Jest to forma kompresji bezstratnej, ponieważ działka w formacie k=32 wciąż będzie zawierać tę samą ilość dowodów (2^32) po dekompresji. Konkretny identyfikator działki zawsze wygeneruje ten sam zestaw dowodów przestrzeni. Poniższy rysunek przedstawia natomiast działkę Chia w formacie k=32 po dokonaniu kompresji poziomu 1:

 

kompresja plotów - działka chia po kompresji

 

Źródło: https://www.chia.net/2023/01/20/plot-compression-is-here

 

Poniższy diagram przedstawia tabele plottingu tworzące pojedynczą działkę Chia po zastosowaniu nowego formatu kompresji. Należy zwrócić uwagę, że w tabeli 2 znajdują się wartości z tabeli 1 o zredukowanej ilości bitów. Sama tabela 1 została natomiast usunięta:

 

kompresja plotów - tabele plottingu po kompresji

 

Źródło: https://www.chia.net/2023/01/20/plot-compression-is-here

 

W taki właśnie sposób działają różne poziomy kompresji. Każdy kolejny z nich porzuca coraz to większą ilość danych, wymagając większej mocy obliczeniowej podczas zbiorów (pozyskiwania dowodów). Ilość wymaganych cykli obliczeniowych tworzących dane „w locie” wrasta wykładniczo, aż do momentu stworzenia kompletnej działki. Aktualnie poziom 7 kompresji Chia redukuje rozmiar plotu o 23%. Oznacza to, że farmer może spodziewać się przychodu większego o 29,8%. Wiąże się to jednak z dodatkowymi kosztami energii elektrycznej.

Poniższy wykres przedstawia zależność między kolejnymi poziomami kompresji, a ilością kalkulacji wymaganych w ramach dekompresji:

 

kompresja plotów - ilość kalkulacji

 

Źródło: https://www.chia.net/2023/01/20/plot-compression-is-here

 

Z każdym kolejnym poziomem kompresji rozmiar działki maleje liniowo, a ilość operacji wykonywanych na potrzeby dekompresji wzrasta wykładniczo.

Na szczęście farmienie Chia pochłania stosunkowo niewiele energii w porównaniu do metody Proof of Work. Nawet w przypadku wyższych poziomów kompresji większość farmerów odnotuje wzrost zużycia prądu rzędu 20% - 25%. Chia nieustannie udoskonala ten proces, zwiększając jego wydajność. Wyżej wspomniany wykładniczy wzrost zapobiega konsumowaniu ogromnych ilości energii przez farmerów i zyskiwania niesprawiedliwej przewagi.

 

Więcej przestrzeni – pojemność efektywna

 

Pojemność efektywną wyraża się w terabajtach efektywnych (TBe). Jest to użyteczna przestrzeń dyskowa, która pozostaje po replikacji, wykorzystaniu pojemności i redukcji danych (kompresja, deduplikacja itp.). W przypadku farmienia Chia z uruchomioną kompresją działek pojemność efektywna będzie przeliczana dla pełnych plotów w formacie k=32. Nagrody są przyznawane na podstawie pojemności efektywnej po dekompresji. W związku z tym farmerzy będą musieli szacować swoje zyski na podstawie TBe. Użytkownicy mogą posiadać działki o różnych formatach, przez co kalkulowanie przychodów na podstawie ilości plotów jest niepraktyczne. Poniższy wykres przedstawia zależność między pojemnością efektywną a poziomem kompresji:

 

kompresja działek  pojemność efektywna

 

Źródło: https://www.chia.net/2023/01/20/plot-compression-is-here

 

Zgodnie z powyższym wykresem farmer posiadający 500 TB surowej pojemności będzie posiadał wyższą pojemność efektywną na kolejnych poziomach kompresji. Szacowana przestrzeń farmienia (na przykład dla poola) będzie sprawiała wrażenie większej.

 

Kompresja a koszt pozyskania aktywów

 

Podstawowym problemem farmera jest wybór poziomu kompresji. Tworzenie działek o najwyższym poziomie kompresji, aby zyskać maksymalną pojemność efektywną, a tym samym jak najwięcej nagród, jest opcją kuszącą. W porównaniu do tradycyjnego farmienia wiązałoby się to jednak z dodatkowym zużyciem energii. Dekompresja nie wpływa znacząco na wydajność dysków. Na zyski oddziałują następujące czynniki:

  • Poziom kompresji,
  • Ilość plotów,
  • Moc obliczeniowa koparki,
  • Koszty energii,
  • Bazowa wydajność prądowa (wyrażana w W/TB).

Istnieje możliwość oszacowania najkorzystniejszego poziomu kompresji w odniesieniu do mocy obliczeniowej i zużycia prądu. Należy wygenerować pojedynczą działkę na wybranym poziomie kompresji. Następnie za pomocą narzędzia Proof of Space należy sprawdzić jakość dowodu oraz wygenerować pełen dowód przestrzeni dla danej ilości dowodów. Działanie tego narzędzia można zapętlić przez 9 sekund, aby zasymulować punkt oznakowania Chia. Liczbę dowodów na punkt oznakowania należy przemnożyć przez filtr, aby otrzymać ilość zdatnych do farmingu działek przy mocy obliczeniowej danej koparki. Należy obniżyć poziom kompresji, jeśli w wyniku nadmiernego obciążenia procesora dekompresja dowodów przestrzeni będzie trwała zbyt długo. Obowiązkowy jest również pomiar zużycia prądu. Daje to pełen obraz kosztów pozyskania aktywów oraz zwrotów inwestycji. Wyższe poziomy kompresji wiążą się z większym poborem energii elektrycznej oraz wydatkami operacyjnymi.

 

Najczęściej zadawane pytania

 

Dlaczego Chia udostępnia format kompresji plotów?

Jeżeli dana technologia jest możliwa do zbudowania, to prędzej czy później ktoś tego dokona. Jeśli do technologii kompresji działek dostęp uzyska stosunkowo niewielka ilość farmerów, zyskają oni znaczną przewagę. Wydając darmowy i otwartoźródłowy format kompresji plotów Chia umożliwia wszystkim korzystanie z najbardziej zaawansowanych technologii tworzenia działek. W ten sposób nikt nie zyska taktycznej przewagi.

 

Czy korzystanie ze skompresowanych działek będzie obowiązkowe?

Nie, kompresja jest opcjonalna.

 

Czy można skompresować istniejące ploty?

Nie. Nawet jeśli jest to technicznie możliwe, stworzenie działek od nowa zajmie mniej czasu i zużyje mniej energii.

 

Czy będę w niekorzystnej sytuacji, jeśli nie zastosuję kompresji?

Obecnie wszyscy używają tego samego formatu działek. Jedynym sposobem na zdobycie większej ilości nagród jest zwiększenie liczby plotów. Jeśli w przeciwieństwie do pozostałych użytkowników nie zdecydujemy się na ponownie zaplotowanie, nasz udział w przestrzeni sieciowej będzie powoli się zmniejszał, nawet jeśli ilość dysków pozostanie taka sama. Może mieć to niekorzystne skutki. Z drugiej strony oznacza to, że nie poświęcimy dodatkowego czasu i energii na ponownie stworzenie działek. Wszystko zależy od użytkownika.

 

Czy w przyszłości pojawią się dodatkowe formaty działek, które skompresują ploty jeszcze bardziej?

Raczej nie. Obecny format działek powstał w 2020 roku. Przewidywano wówczas, że pewne kompromisy i udoskonalenia będą możliwe w odpowiednim czasie i przy użyciu adekwatnej technologii. Ten czas właśnie nadszedł. Niestety okazuje się, że zbliżamy się do teoretycznego limitu kompresji. Jeżeli w przyszłości miałyby się pojawić nowe formaty kompresji, to wynikające z nich korzyści byłyby liczone w ułamkach procentów. Prawdopodobnie udostępnione zostaną nowe poziomy obecnego systemu kompresji, jeśli uda się zredukować obciążenie związane z dekompresją.

 

Czy kompresja udostępniona w wersji beta Bladebit jest wersją finalną?

Klient Chia będzie wspierał wersję opublikowaną w programie beta. W przyszłości wydana zostanie aktualizacja, która wdroży dodatkowe optymalizacje rzędu 1% - 2%. Zmiany te nie będą niosły ze sobą znaczących korzyści. Gdy farmienie za pomocą dysków SSD stanie się opłacalne w drugiej połowie dekady, format działek zostanie zmieniony ponownie, aby wykorzystać niskie opóźnienia nośników półprzewodnikowych.

 

Czy sprzęt wykorzystywany do tworzenia plotów ma znaczenie?

Wszystkie działki o tej samej wartości k i poziomie kompresji stworzone przez Bladebit będą wyglądały identycznie. Sprzęt nie ma w tym przypadku znaczenia.

 

Czy mogę dalej używać plotów k=32?

Tak. Obecnie nie planuje się zwiększenia minimalnej wartości k. Jeśli jednak Chia Network będzie miała taki zamiar, użytkownicy zostaną poinformowani z rocznym wyprzedzeniem.

 

Czy można mieszać ze sobą poziomy kompresji?

Tak, poziomy kompresji działek można ze sobą mieszać. Farmerzy powinni dostosować poziomy kompresji pod kątem mocy obliczeniowej sprzętu oraz zużycia energii elektrycznej.

 

Kiedy oficjalna premiera?

Diskplot oraz Ramplot Bladebit ze wsparciem dla kompresji są gotowe i przechodzą testy wewnętrzne. Obsługa kompresji plotów dla klienta Chia jest już niemal gotowa. Po zakończeniu prac pełen pakiet zostanie udostępniony w programie beta.

 

Czy stworzenie skompresowanej działki będzie szybsze?

Benefitem obecnej metody kompresji jest fakt, że niektóre tabele nie muszą być przechowywane w ostatecznym pliku plotu. Redukuje to w niewielkim stopniu czas tworzenia działek.

 

Jak kompresja wpłynie na Raspberry Pi pracujące jako zbieracz?

Farmerzy i zbieracze korzystający ze sprzętu o małym poborze prądu i mocy obliczeniowej będą w stanie korzystać z niskich poziomów kompresji (1 – 4). W przyszłości opracowane zostaną usprawnienia protokołu zbieracza, które umożliwią zewnętrznym zbieraczom zdalne uruchomienie dekompresji na sprzęcie farmera. Będzie to miało pozytywny wpływ na wydajność energetyczną.

 


powrót ››


 

Kontakt do nas

Szpitalna 12
32-500 Chrzanów

kontakt@kopalniekrypto.pl

Robert Wiecheć
+48 608 503 833

Roman Majewski
+48 530 474 039

Zapisz się do newslettera

 
Proszę podać adres e-mail
Proszę zaakceptować warunki newslettera