1/ Nowy post: Jolt teraz weryfikuje programy RISC-V z rejestrami 64-bitowymi (RV64IMAC) z prędkościami przekraczającymi te, które wcześniej raportowaliśmy dla 32-bitowych. 1,5M cykli/sek na 32-rdzeniowym CPU, 500k cykli/sek na MacBooku. Oto dlaczego to ma znaczenie 🧵
2/ Dlaczego warto zwracać uwagę na 64-bitowe dowody? Dwa powody: 🔹 Wydajność: wiele aplikacji potrzebuje mniej cykli z rejestrami 64-bitowymi. Przykład: mnożenie 256-bitowe zajmuje 6× mniej cykli. 🔹 Wsparcie językowe: niektóre języki (jak Go) nie kompilują do RV32, więc RV64 jest potrzebne do dowodzenia programów takich jak Geth
3/ Jak więc Jolt osiągnął prędkości RV64, które odpowiadają naszym wynikom RV32? Dwa powody: 1️⃣ Jolt jest zaprojektowany do obsługi dużych rejestrów. Inne zkVM dzielą wartości 64-bitowe na bajty (8 elementów pola na wartość), co wiąże się z ogromnym narzutem. Pola o dużej charakterystyce Jolt obsługują je bezpośrednio.
4/ W rezultacie, gdy inne zkVM-y podwajają rozmiar rejestru, często są 2× wolniejsze na cykl. Jolt jest tylko 1,5× wolniejszy.
5/ 2️⃣ Kontynuujemy optymalizację. Oprócz znanych technik, dodajemy nowe, na poziomie badań, osiągnięcia. Te zyski już w pełni rekompensują spowolnienie o 1,5×, więc uruchamianie RV64 teraz działa szybciej niż RV32 dwa miesiące temu.
6/ Zużycie pamięci również ciągle spada, teraz wynosi ~700 MB na milion cykli. Dziś, w <2 GB, możesz udowodnić znajomość wielu podpisów cyfrowych lub że dziesiątki KB danych zostały poprawnie zhaszowane za pomocą SHA.
7/ Z zintegrowanym Twist & Shout, jesteśmy na stałym rytmie osiągania kamieni milowych. Następne w kolejce: – Rekursja – Prover strumieniowy (utrzymuj przestrzeń prover poniżej 2 GB dla dowolnie dużych liczby cykli, bez rekursji) – Zero-knowledge
17,28K