Popularne tematy
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.

LambdaClass
LambdaClass to studio venture, które pracuje nad trudnymi problemami związanymi z systemami rozproszonymi, ML, kompilatorami i kryptografią.
Użytkownik LambdaClass udostępnił ponownie
Ostatnie kilka tygodni nie dzieliłem się wieloma aktualizacjami na temat @ethrex_client, naszego klienta wykonawczego @class_lambda @ethereum L1 oraz stosu ZK L2.
Proszę śledzić @ethrex_client, aby dowiedzieć się więcej o wszystkim, co robimy.
W L1 już z powodzeniem uruchamiamy testnety Ethereum, a w L2 uruchamiamy testnety dla aplikacji tożsamości i DeFi, które budujemy dla i z partnerami. Szczerze wierzę, że jesteśmy blisko posiadania najprostszej bazy kodu i stosu do utrzymania, aktualizacji i modyfikacji w Ethereum. Nie dalibyśmy rady osiągnąć tego punktu bez sprawdzenia kodu @NethermindEth i @go_ethereum.
Z moimi partnerami @rj_aligned, @fran_aligned z @alignedlayer oraz @SantiDiPaolo, @AguuMg z @PolFinance_ jesteśmy bliscy wydania jednego z pierwszych białych ksiąg na temat RWA L2, które będą zasilane przez Ethrex i @alignedlayer. Mamy wiele innych w drodze, ale szczególnie ekscytuje mnie ten, ponieważ połączy bardzo interesujący przypadek użycia z TradFi i DeFi. Mamy jako doradców i partnerów niektóre z najsilniejszych zespołów w branży. Nie mogę się doczekać, aby podzielić się większą ilością informacji na temat tego projektu.
Aktualizacje
L1
Pracowaliśmy nad wieloma frontami. Poprawiliśmy obserwowalność za pomocą Grafana, usunęliśmy nieużywane funkcje, aby uprościć bazę kodu i dodaliśmy wsparcie dla punktu końcowego `engine_getBlobsV1`.
Dziennik zmian:
feat(l1): `engine_getBlobsV1` punkt końcowy żądania (#3636)
chore(l1): usunięcie wsparcia dla redb (#4103)
refactor(l1): usunięcie niepotrzebnych usizes z crate blockchain (#4110)
fix(l1): usunięcie niepotrzebnego klonowania stanu (#4117)
fix(l1): użycie odpowiedniego obrazu dockera do uruchamiania lokalnych sieci. (#4131)
chore(l1): dodanie czasu bloku do pulpitu nawigacyjnego grafana. (#4112)
fix(l1): odjęcie czasów odczytu DB od wykonania bloku. (#4051)
chore(l1): poprawki metryk. (#4118)
chore(levm): poprawa organizacji nowego testera levm (#3958)
L2
W zgodzie z naszym minimalistycznym podejściem usunęliśmy znaczną ilość kodu z nieużywanych baz danych L2. Kontynuujemy uproszczenie bazy kodu i eliminację martwego kodu. Dodatkowo, CI został ustabilizowany po naprawieniu błędu związanego z cenami gazu.
Benchmarkujemy L2 na dwóch frontach:
- Koszt utrzymania sieci L2: Dostosowujemy parametry L2, symulując różne scenariusze z różnymi obciążeniami transakcyjnymi i konfiguracjami sieci. Celem jest określenie przybliżonego kosztu prowizji za utrzymanie na transakcję, który użytkownicy muszą ponieść, aby sieć mogła osiągnąć samowystarczalność.
- Izolowane benchmarki generacji dowodów wykonania bloku: Używając narzędzia ethrex-replay, udowadniamy bloki z Hoodi, Sepolia i Mainnet, aby zidentyfikować potencjalne błędy w bazie kodu i zmierzyć wydajność naszego dowodzącego.
Po stronie ethrex-replay narzędzie jest wystarczająco stabilne, a my mamy infrastrukturę ustawioną do okresowego odtwarzania wykonania bloków i dowodów publicznych sieci. Teraz zajmujemy się błędami, które pojawiły się podczas tych uruchomień. Niektóre błędy wynikają z błędów logicznych w ethrex, podczas gdy inne są związane z użyciem pamięci. Te pierwsze są w większości rozwiązane, a my robimy znaczące postępy w przypadku tych drugich.
Zaczęliśmy również przyglądać się @ziskvm i @0xLita ZKVMs w celu potencjalnej krótkoterminowej integracji. Już wspieramy @RiscZero i @SuccinctLabs.
W tym tygodniu połączyliśmy PR, który stabilizuje ethrex-replay, co pozwala nam zidentyfikować i rozwiązać dwa błędy w ethrex. Te poprawki również zostały połączone. Pierwszy błąd dotyczył przypadku brzegowego w naszym prekompilatorze ecrecover, gdzie określony input spowodował niepowodzenie wykonania z powodu niezgodności gazu. Po dokładnym zbadaniu, zidentyfikowaliśmy problem w oficjalnej bibliotece secp256k1 z poprawką SP1. Rozwiązaliśmy to, migrując do biblioteki k256 z poprawką SP1. Drugi błąd wynikał z błędnego założenia dotyczącego długości bitowej typu usize w części bazy kodu. Aby zapobiec podobnym problemom, przeprowadziliśmy kompleksowy przegląd bazy kodu i złożyliśmy wiele PR, aby ograniczyć użycie usize do dwóch konkretnych przypadków: indeksowania i scenariuszy ograniczonych przez API lub bibliotekę. Dodatkowo dodajemy wsparcie do uruchamiania zestawów testowych EF, w tym testów blockchain i stanu, z SP1, aby zwiększyć naszą pokrycie testowe i zapewnić solidność w różnych scenariuszach wykonawczych.
Po rozwiązaniu tych błędów problemy już się nie pojawiają. Z powodzeniem odtwarzamy nowe bloki Hoodi i Sepolia, a wykonania bloków Mainnet znacznie się poprawiły, z wskaźnikiem sukcesu wykonania SP1 wzrastającym z 1/10 do 6/10. Ten postęp otwiera drogę do rozwiązania naszych pozostałych wyzwań związanych z ostatnimi odtworzeniami bloków: błędami braku pamięci podczas wykonania bloków w SP1 zkVM oraz problemami z wydajnością w wykonaniu i dowodzeniu. Aby to rozwiązać, skonfigurowaliśmy crate narzędzia do profilowania pamięci przy użyciu crate Jemalloc.
Pracujemy również nad wsparciem dla odtwarzania historycznych bloków. MVP dla tej funkcji jest w roboczym PR i dobrze działa z klientami ethrex, reth i geth, ale napotyka problemy z klientami nethermind. Przed wydaniem pierwszej wersji zamierzamy zoptymalizować żądania RPC, aby zapewnić dokładne pobieranie danych bloków, nawet przy użyciu darmowych dostawców RPC, dla większości bloków.
Ulepszenia DevEx:
- Naprawiliśmy nasze kompilacje binarne, aby nie wymagały CUDA jako domyślnej zależności w niektórych systemach operacyjnych i architekturach. Ta poprawka jest zawarta w najnowszym wydaniu.
- Złożono PR, aby zaktualizować wersję ethrex w rex, zapewniając zgodność z najnowszymi zmianami w ethrex L2.
- Rozpoczęliśmy rozwój nowej zakładki dla monitora ethrex L2 w środowiskach deweloperskich. Ta zakładka wyświetli informacje istotne dla deweloperów, takie jak lista bogatych kont i adresy kontraktów L1 i L2.
Dziennik zmian:
- refactor(l2): zastąpiono stałe różnice stanu usize.
- feature(l1,l2): skonfigurowano ethrex-replay do profilowania pamięci.
- refactor(l1): usunięto niepotrzebne użycie usize w crate blockchain (związane z poprawką błędu).
- feature(l1,l2): dodano nowe polecenia do świadka wykonania.
- fix(levm): rozwiązano problemy związane z architekturą 32-bitową (związane z poprawką błędu).
- refactor(levm): zaktualizowano implementację ecrecover, aby używała k256 zamiast secp256k1 (związane z poprawką błędu).
- ci(l1,l2): oddzielono kompilacje GPU i przyjęto cel x86-64-v2.
Wydajność
W tym tygodniu kontynuowaliśmy naszą uwagę na zużyciu CPU i benchmarkach.
Jeśli chodzi o zużycie CPU, zidentyfikowaliśmy 2 różne przypadki, jeden, w którym obecne jest budowanie bloków, a drugi, w którym go nie ma. Priorytetowo traktujemy te bez budowania bloków, ponieważ są one zawsze obecne i wpływają na inne wysiłki (jak synchronizacja snap). Z tego, co zbadaliśmy, jest to całkowicie związane z p2p. Będziemy kontynuować nasze wysiłki w tym zakresie.
Jeśli chodzi o benchmarki, po naszym ostatnim tygodniu poprawy wydajności modexp skupiliśmy się na niektórych zidentyfikowanych ulepszeniach, takich jak codecopy i pokrewne operacje, a także signextend, mulmod i addmod.
Będziemy kontynuować naszą uwagę zarówno na zużyciu CPU, jak i wydajności testów, które zidentyfikowaliśmy jako następne kroki do możliwych ulepszeń, takich jak transfery eteru i inne opcode levm.

11,02K
Użytkownik LambdaClass udostępnił ponownie
Świętowaliśmy 10. rocznicę @ethereum w Buenos Aires w Argentynie z częścią zespołu @ethrex_client @class_lambda, @sovraio, @ready_co, @PolFinance_, @421Net i wieloma innymi przyjaciółmi.
To była wielka przyjemność świętować urodziny Ethereum z @fernandezdiego, @itamarl, @SantiDiPaolo, @realjuanruocco i wieloma innymi przyjaciółmi.
Ethereum będzie finansowym zapleczem całego rozwijającego się świata!
35,35K
Najlepsze
Ranking
Ulubione
Trendy onchain
Trendy na X
Niedawne największe finansowanie
Najbardziej godne uwagi