Viime viikolla en ole jakanut paljon päivityksiä @ethrex_client:stä, @class_lambda @ethereum L1 -suoritusohjelmastamme ja ZK L2 -pinosta. Seuraa @ethrex_client saadaksesi lisätietoja kaikesta, mitä teemme. L1:ssä käytämme jo menestyksekkäästi Ethereum-testiverkkoja ja L2:ssa testiverkkoja identiteetti- ja DeFi-sovelluksille, joita rakennamme kumppaneille ja kumppaneiden kanssa. Uskon rehellisesti, että olemme lähellä yksinkertaisinta koodikantaa ja pinoa ylläpidettäväksi, päivitettäväksi ja muokattavaksi Ethereumissa. Emme olisi päässeet tähän pisteeseen tarkistamatta koodia @NethermindEth ja @go_ethereum Kumppaneideni @rj_aligned, @fran_aligned @alignedlayer ja @SantiDiPaolo @AguuMg @PolFinance_ kanssa olemme julkaisemassa yhden ensimmäisistä whitepapereista RWA L2:sta, joka toimii Ethrexillä ja @alignedlayer. Meillä on paljon lisää tulossa, mutta olen erityisen innoissani tästä, koska se yhdistää erittäin mielenkiintoisen käyttötapauksen TradFi:stä ja DeFistä. Saimme neuvonantajiksi ja kumppaneiksi alan vahvimpia tiimejä. Olen innokas jakamaan lisää tästä projektista. Päivitykset L1 Olemme työskennelleet monilla rintamilla. Olemme parantaneet havainnoitavuutta Grafanan avulla, poistaneet käyttämättömät ominaisuudet koodikannan yksinkertaistamiseksi ja lisänneet tuen engine_getBlobsV1-päätepisteelle. Muutosloki: feat(l1): engine_getBlobsV1-pyynnön päätepiste (#3636) Kotityö(L1): Poista REDB-tuki (#4103) Refactor(L1): Poista tarpeettomat Usizet lohkoketjulaatikosta (#4110) Fix(L1): Poistettu tarpeeton tilaklooni (#4117) Fix(L1): Käytä oikeaa Docker-kuvaa localnet-verkkojen käynnistämiseen. (#4131) Chore(L1): Lisää Block Time Grafana Dashboardiin. (#4112) fix(l1): vähennä tietokannan lukuajat lohkon suorituksesta. (#4051) Kotityö (L1): Metriset parannukset. (#4118) TYÖ (LEVM): Paranna uuden LEVM-testijuoksijan organisaatiota (#3958) L2 Minimalistisen lähestymistapamme mukaisesti poistimme merkittävän määrän koodia käyttämättömistä L2-tietokannoista. Jatkamme koodikannan yksinkertaistamista ja kuolleen koodin poistamista. Lisäksi CI vakiintui kaasun hintoihin liittyvän virheen korjaamisen jälkeen. Vertailemme L2:ta kahdella rintamalla: - L2-verkon ylläpitokustannukset: Hienosäädämme L2-parametreja simuloimalla erilaisia skenaarioita erilaisilla transaktiokuormilla ja verkkokokoonpanoilla. Tavoitteena on määrittää likimääräiset ylläpitopalkkiokustannukset tapahtumaa kohden, jotka käyttäjien on maksettava, jotta verkko saavuttaa omavaraisuuden. - Eristetyt lohkojen suoritustodisteiden luontivertailuarvot: Ethrex-replay-työkalun avulla testaamme lohkoja Hoodista, Sepoliasta ja Mainnetistä tunnistaaksemme mahdolliset virheet koodikannassa ja mitataksemme testaajamme suorituskykyä. Ethrex-replay-puolella työkalu on riittävän vakaa, ja meillä on infrastruktuuri, joka toistaa säännöllisesti julkisten verkkojen lohkosuorituksia ja todistuksia. Korjaamme nyt näiden ajojen aikana ilmenneitä virheitä. Jotkut virheet johtuvat ethrexin loogisista virheistä, kun taas toiset liittyvät muistin käyttöön. Ensin mainitut on suurimmaksi osaksi ratkaistu, ja edistymme merkittävästi jälkimmäisessä. Olemme myös alkaneet tutkia @ziskvm ja @0xLita ZKVM:iä mahdollisen lyhyen aikavälin integraation varalta. Tuemme jo @RiscZero ja @SuccinctLabs. Tällä viikolla yhdistimme ethrex-toistoa vakauttavan PR:n, jonka avulla pystyimme tunnistamaan ja ratkaisemaan kaksi ethrexin virhettä. Myös nämä korjaukset on yhdistetty. Ensimmäinen virhe liittyi reunatapaukseen ecrecover-esikäännöksessämme, jossa tietty syöte aiheutti suorituksen epäonnistumisen kaasun yhteensopimattomuuden vuoksi. Perusteellisen tutkimuksen jälkeen jäljitimme ongelman viralliseen SP1-korjattuun secp256k1-kirjastoon. Ratkaisimme ongelman siirtymällä SP1-korjattuun k256-kirjastoon. Toinen virhe johtui virheellisestä oletuksesta usize-tyypin bittipituudesta osassa koodikantaa. Vastaavien ongelmien estämiseksi suoritimme koodikannan kattavan tarkistuksen ja lähetimme useita pull-pyyntöjä rajoittaaksemme usizen käytön kahteen erityistapaukseen: indeksointiin ja API:n tai kirjaston rajoittamiin skenaarioihin. Lisäksi lisäämme tuen EF-testipakettien, mukaan lukien lohkoketju- ja tilatestien, suorittamiseen SP1:llä, parantaaksemme testauksen kattavuutta ja varmistaaksemme kestävyyden erilaisissa suoritusskenaarioissa. Kun nämä virheet on korjattu, ongelmia ei enää esiinny. Pelaamme onnistuneesti uusia Hoodi- ja Sepolia-lohkoja, ja pääverkon lohkojen suoritukset paranivat merkittävästi, ja SP1:n suoritusten onnistumisprosentti nousi 1/10:stä 6/10:een. Tämä edistyminen raivaa tietä jäljellä olevien haasteidemme ratkaisemiseksi viimeaikaisilla lohkotoistoilla: muisti loppuu -virheet lohkon suorituksen aikana SP1 zkVM:ssä ja suorituskykyongelmat suorituksessa ja todistuksessa. Näiden ratkaisemiseksi olemme määrittäneet työkalun laatikon muistin profilointia varten Jemalloc-laatikon avulla. Pyrimme myös tukemaan historiallisten lohkojen toistamista. Tämän ominaisuuden MVP on PR-luonnoksessa ja toimii hyvin ethrex-, reth- ja geth-asiakkaiden kanssa, mutta kohtaa ongelmia nethermind-asiakkaiden kanssa. Ennen ensimmäisen version julkaisemista pyrimme optimoimaan RPC-pyynnöt varmistaaksemme tarkat lohkotietojen lataukset useimmille lohkoille myös käytettäessä ilmaisia RPC-palveluja. DevExin parannukset: - Korjasimme binäärikoontiversiomme niin, että ne eivät enää vaadi CUDA:ta oletusriippuvuutena tietyissä käyttöjärjestelmissä ja arkkitehtuureissa. Tämä korjaus sisältyy uusimpaan versioon. - PR on lähetetty ethrexin version päivittämiseksi rexissä, mikä varmistaa yhteensopivuuden ethrex L2:n viimeisimpien muutosten kanssa. - Olemme alkaneet kehittää uutta välilehteä ethrex L2 -näytölle kehitysympäristöissä. Tämä välilehti näyttää kehittäjille tärkeitä tietoja, kuten luettelon monipuolisista tileistä sekä L1- ja L2-sopimusten osoitteet. Muutosloki: - Refactor(L2): Korvasi Usize-tilan vertailuvakiot. - Reature(L1,L2): Määritetty Ethrex-toisto muistin profilointia varten. - Refactor(L1): Poistettu tarpeeton Usize-käyttö lohkoketjulaatikossa (liittyy virheenkorjaukseen). - Feature(L1,L2): Lisätty uusia komentoja suorituksen todistajaan. - Fix(levm): Korjattu 32-bittiseen arkkitehtuuriin liittyvät ongelmat (liittyvät virheenkorjaukseen). - Refactor(levm): Päivitetty ECREPal-toteutus käyttämään k256:ta secp256k1:n sijaan (liittyy virheenkorjaukseen). - ci(L1,L2): erotti GPU-koontiversiot ja otti käyttöön x86-64-v2-kohteen. Suorituskyky Tällä viikolla jatkoimme keskittymistä suorittimen kulutukseen ja vertailuarvoihin. Mitä tulee suorittimen kulutukseen, tunnistimme 2 erilaista tapausta, joista toisessa lohkojen rakentaminen on läsnä ja toisessa ei. Priorisoimme ne, joissa ei ole lohkojen rakentamista, koska ne ovat aina läsnä ja vaikuttavat muihin pyrkimyksiin (kuten pikasynkronointiin). Sikäli kuin tutkimme, se liittyy täysin p2p:hen. Jatkamme ponnistelujamme tällä rintamalla Mitä tulee vertailuarvoihin, viime viikolla tapahtuneen modexp-suorituskyvyn parannuksen jälkeen keskityimme joihinkin havaittuihin parannuksiin, kuten koodikopiointiin ja siihen liittyviin toimintoihin sekä signextendiin, mulmodiin ja addmodiin. Jatkamme keskittymistä sekä suorittimen kulutukseen että testin suorituskykyyn, jotka määrittelimme seuraaviksi vaiheiksi mahdollisille parannuksille, kuten eth-siirroille ja muille levm-opkoodeille.
11,01K