
Autor: Georgios Konstantopoulos, Paradigm Research Partner & amp;
Wir haben 2022 begonnen, Madd zu bauen, um Ethereum L1 Elastizität zu versorgen und gleichzeitig die Expansion der Ausführungsschicht auf L2 zu lösen.
Heute freuen wir uns, Ihnen mitzuteilen, wie der Reth -Plan im Jahr 2024 einen Gasdurchsatz von 1 GB pro Sekunde erreicht und wie wir dieses Ziel für eine langfristige Roadmap übertreffen können.
Wir laden das gesamte Ökosystem zusammen, zusammen mit uns, um den meistgeschnittenen und strengen Benchmark -Test im Verschlüsselungsfeld gemeinsam zu fördern.
1. Haben wir eine Skalenexpansion erreicht?
Wenn Kryptowährungen die globale Skala erreichen und spekulatives Verhalten vermeiden möchten (wie der Hauptfall), gibt es einen sehr einfachen Weg: Transaktionen müssen niedrig und schnell sein.
1.1 Wie misst ich die Leistung?Was ist die Gasmenge pro Sekunde?
Die Leistung wird normalerweise mit „Anzahl der Transaktionen pro Sekunde“ (TPS) gemessen.Insbesondere für Ethereum und andere EVM -Blockchains ist ein empfindlicherer und genauerer Messstandard „Gasmenge pro Sekunde“.Dieser Indikator spiegelt die Berechnung der Arbeitsbelastung wider, die pro Sekunde verarbeitet werden kann.
Die Menge pro Sekunde wird als Leistungsindikator standardisiert, um die Kapazität und Effizienz der Blockchain besser zu verstehen.Es hilft auch, die Kosteneffekte des Systems zu bewerten und potenzielle Ablehnungsdienstangriffe (DOS) zu verhindern.Dieser Indikator hilft, die Leistung der Virtual Machine (EVM) und der fähigen Kette von Ethereum zu vergleichen.
Wir empfehlen, dass die EVM -Community die Gasmenge pro Sekunde als Standardindikator einnimmt und gleichzeitig mit anderen Abmessungen der Gaspreise kombiniert wird, um einen umfassenden Leistungsstandard zu schaffen.
1.2 Unsere Entwicklungsstufe heute
Die Menge an Gas pro Sekunde wird durch Entfernen des Zielgases jedes Blocks nach Blockzeit bestimmt.In der folgenden Tabelle zeigen wir den aktuellen Gasdurchsatz und die Verzögerung verschiedener EVM -Ketten L1 und L2 (nicht detailliert):
Wir betonen, dass die Menge an Gas pro Sekunde verwendet wird, um die EVM -Netzwerkleistung umfassend zu bewerten und gleichzeitig Berechnungs- und Speicherkosten zu erfassen.Die Netzwerke wie Solana, Sui oder Aptos sind aufgrund ihrer einzigartigen Kostenmodelle nicht enthalten.Wir ermutigen die Kostenmodelle aller Blockchain -Netzwerke, einen umfassenden und fairen Vergleich zu erreichen.
Wir entwickeln eine Reihe von nicht unterbrochenen Foundation -Test -Tools für Reth, um die reale Workload zu kopieren.Unsere Anforderungen an Knoten entsprechen dem TPC -Benchmark.
2. Wie erreicht Reth 1 GB Gas pro Sekunde?Noch höher?
Einige unserer Motivationen für die Schaffung von Reth im Jahr 2022 liegen darin, dass wir dringend einen Kunden für Web -Rollup benötigen.Wir glauben, dass unsere Vorwärtsstraße voller Hoffnung ist.
Während der Echtzeit-Synchronisation hat Reth 100-200 MB Gas erreicht (einschließlich des Absenders, Tries der Transaktion und Berechnung jedes Blocks). 10 Mal erweitert.
Mit der Entwicklung der Mäden muss unser Erweiterungsplan ein Gleichgewicht zwischen Skalierbarkeit und Effizienz finden:
-
Vertikale Expansion: Unser Ziel ist es, die Verwendung jeder „Box“ zu maximieren, um seinem Potenzial das volle Spiel zu verleihen.Durch die Optimierung der Art der Verarbeitung von Transaktionen und Daten jedes einzelnen Systems können wir die Gesamtleistung erheblich verbessern und gleichzeitig die Bediener jedes Knotens effizienter machen.
-
Horizontale Expansion: Obwohl optimiert, überschreitet das absolute Transaktionsvolumen der Webgröße die Verarbeitungskapazität eines jeden Servers.Um mit dieser Situation fertig zu werden, betrachten wir die Bereitstellung einer horizontalen Expansionsarchitektur, die dem Kubernetes -Modell des Blockchain -Knotens ähnelt.Dies bedeutet, dass es keine Knoten gibt, die ohne Knoten zu Engpässen werden können.
Die Optimierung, die wir hier erörtert, wird keine Statuswachstumslösungen beinhalten.Das Folgende ist ein Überblick über unseren Plan, um dieses Ziel zu erreichen:
Im gesamten Technologie -Stack haben wir auch das IO und die CPUs mit dem Schauspielermodell optimiert.Schließlich bewerten wir aktiv die alternative Datenbank, sie wurde jedoch nicht bestimmt.
2.1 Seithilfe der vertikalen Erweiterung Roadmap
Unser vertikales Erweiterungsziel ist es, die Leistung und Effizienz des Servers oder des Laptops zu maximieren, der das Molieren ausführt.
(1) Sogar (Just-in-Time) EVM und President-of-Time EVM
In einer Blockchain -Umgebung wie Ethereum Virtual Machine (EVM) wird die Ausführung von Bytecode über den Dolmetscher durchgeführt, und der Interpreter behandelt die Anweisungen in der Reihenfolge.Diese Methode bringt eine bestimmte Menge an Ausgaben mit sich, da sie nicht direkt die native Montageanweisung ausgeführt wird, die Operation jedoch über die VM -Ebene durchgeführt wird.
Instant Compilation (JIT), um dieses Problem zu lösen, indem der Byte -Code vor der Ausführung in den nativen Maschinencode konvertiert wird, wodurch die Leistung verbessert wird, indem der Interpretationsprozess von VM umgeht.Diese Technologie kann den Vertrag im Voraus in einen optimierten Maschinencode zusammenstellen, der in anderen virtuellen Maschinen wie Java und WebAssembly gut eingesetzt wurde.
JIT kann jedoch leicht durch böswillige Code angegriffen werden.Reth wird die höchsten Anforderungen für das Kompilieren (AOT) erstellen und auf der Festplatte speichern, um zu vermeiden, dass der Prozess nicht versucht wird, unseren nativen Code -Kompilierungsprozess während der realen Ausführung zu missbrauchen.
Wir haben den JIT/AOT -Compiler für REPM entwickelt und sind derzeit in Mut integriert.Wir werden sofort nach Abschluss des Benchmark -Tests in den nächsten Wochen Open Source Open Source.Im Durchschnitt werden etwa 50%der Ausführungszeit für den EVM -Interpreter ausgegeben. Daher sollte es etwa das 2 -fache der EVM -Ausführungsverbesserung erfordern. Wenn jedoch einige Berechnungsanforderungen höher sind, können die Auswirkungen größer sein.In den nächsten Wochen werden wir unseren Benchmark -Test teilen und unsere eigene JIT -EVM in Mut integrieren.
(2) Parallel EVM
Das Konzept der parallelen Ethereum Virtual Machine (Parallel EVM) unterstützt mehrere Transaktionen gleichzeitig, was sich von dem herkömmlichen Modell der seriellen EVM -Serienausführung unterscheidet.Wir haben die folgenden zwei Pfade:
-
Historische Synchronisation: Die Geschichte der Geschichte kann die beste parallele Melodie berechnen, indem historische Transaktionen analysiert und alle historischen staatlichen Konflikte identifiziert werden.
-
Real -Time -Synchronisation: Für die reale Synchronisation können wir Technologien verwenden, die STM ähnlich sind, um die Ausführung ohne zusätzliche Informationen (z. B. Zugriffsliste) zu schließen.Dieser Algorithmus hat während des schwerwiegenden staatlichen Wettbewerbs eine schlechte Leistung. Wir hoffen, dass wir den Wechsel zwischen serieller und paralleler Ausführung entsprechend dem Arbeitsbelastungsstatus untersuchen und auf welchen Speicherplatz zugegriffen werden sollen, um die parallele Qualität zu verbessern.
Laut unserer historischen Analyse sind etwa 80%des Ethereum -Speicherschlitzes unabhängig, was bedeutet, dass parallel die EVM -Ausführungseffizienz um das 5 -fache erhöhen kann.
(3) optimiertes staatliches Engagement
Im Reth -Modell ist die Berechnung der Statusroste ein Prozess unabhängig von Transaktionen, die die Verwendung von Standard -KV -Speicher ermöglichen, der keine Trie -Informationen erhalten muss.Dies erfordert derzeit & GT;
Wir haben festgestellt, dass die folgenden zwei „Easy Win“ -Kanäle ohne Übereinstimmungsänderungen um das 2-3-fache der Statuswurzelleistung erhöhen können:
-
VOLLSTÄNDIG PARALLEL STATE Wurzel: Jetzt werden wir nur noch den Speicherbaum verändert, der das Konto geändert hat, aber wir können weiter gehen.
-
Pipelined Status Root: Während des Ausführungsprozesses werden der am Status Root Service beteiligte Schlitz und Konto gespeichert, und der mittlere Trieknoten wird von der Festplatte vorgefertigt.
Darüber hinaus können wir auch von der Ethereum L1 Status Root -Aktivität abweichen, um einige Vorwärtswege zu untersuchen:
-
Berechnung von Wurzeln des niedrigeren Frequenzzustands: Die Statuswurzeln für jeden Block, sondern einmal in jedem T -Block berechnet.Dies verkürzt den Gesamtzeitanteil der Zustandswurzeln im gesamten System, was die einfachste und effektivste Lösung sein kann.
-
Tracking -Statuswurzeln: Anstatt die Statusroste im selben Block zu berechnen, ist es besser, es hinter mehrere Blöcke fallen zu lassen.Auf diese Weise kann die Ausführung fortgeschritten werden, ohne die Wurzelberechnung des Zustands zu blockieren.
-
Ersetzen Sie den RLP -Encoder & amp;
-
Breitere Trie: Fügen Sie Sub-Nodes für Baum-N-Rate hinzu, um die IO-Vergrößerung aufgrund der Tiefe des Tries-Protokolls zu verringern.
Hier gibt es mehrere Fragen:
-
Was sind die oben genannten Änderungen an Light -Clients, L2, Bridge, Mitarbeitern und anderen sekundären Auswirkungen von Protokollen, die auf häufigen Konten und Speicherzertifikaten beruhen?
-
Können wir gleichzeitig die Statusverpflichtung von Snark Proof und native Ausführungsgeschwindigkeit optimieren?
-
Was können wir mit unseren vorhandenen Tools das breiteste Versprechen, das wir bekommen können?Was sind die sekundären Auswirkungen auf den Zeugen?
2.2 Horizontaler Expansion Roadmap von Reth
Wir werden die oben genannten Mehrfachelemente in 2024 durchführen, um das Ziel von 1 GB Gas pro Sekunde zu erreichen.
Vertikale Erweiterungen werden jedoch letztendlich auf physische und praktische Einschränkungen stoßen.Keine Maschine kann die Computerbedürfnisse der Welt erfüllen.Wir glauben, dass es hier zwei Wege gibt, die uns unterstützen, um zu erweitern, indem wir mehr Box nach der Vergrößerung der Last einführen:
(1) Multi -Rollup -Reth
Der heutige L2 -Stack muss mehrere Dienste ausführen, um Ketten zu verfolgen: L1 CL, L1 EL, L1 -& GT;Obwohl dies sehr gut für die Modularisierung ist, wird die Situation beim Ausführen mehrerer Knotenstapel komplizierter.Stellen Sie sich vor, Sie müssen 100 Rollups ausführen!
Wir hoffen, dass Rollup während der Entwicklung von Reth gleichzeitig zuzulassen und die Betriebskosten von Tausenden von Rollup auf fast Null zu senken.
Wir haben dies in unseren Implementierungserweiterungsprojekten getan, und in den nächsten Wochen werden weitere Fortschritte erzielt.
(2) Yunyuan Reth
Sortierter mit hoher Leistung haben möglicherweise eine große Nachfrage an einer einzelnen Kette, sie müssen sich ausdehnen, und eine Maschine entspricht den Anforderungen nicht.Dies ist unmöglich, die heutige Single -Node -Bereitstellung bereitzustellen.
Wir hoffen, dass wir die laufenden Cloud -Knoten unterstützen, sie als Service -Stack bereitstellen, sie automatisch nach den Berechnungsanforderungen erweitern und den scheinbar unendlichen Cloud -Objektspeicher verwenden können, um dauerhaften Speicher zu erzielen.Dies ist eine gemeinsame Architektur im Serverdatenbankprojekt (wie Neondb, Cockrochdb oder Amazon Aurora).
3. Zukunftsaussichten
Wir hoffen, dass wir diese Routenkarte nach und nach an alle Reth -Benutzer starten können.Unsere Mission ist es, jedem eine höhere Geschwindigkeit von 1 GB Gas pro Sekunde zu ermöglichen.Wir werden optimierte Tests auf Reth Alphanet durchführen und hoffen, dass die Menschen Mades als SDK verwenden, um optimierte Hochleistungsknoten aufzubauen.
Wir haben die Antwort nicht gefunden.
-
Wie hilft Reth dazu, die Leistung der gesamten L2 -Ökologie zu verbessern?
-
Wie können wir einige unserer schlimmsten Situationen, die im Allgemeinen auftreten können, richtig messen?
-
Wie gehen wir mit möglichen Unterschieden zwischen L1 und L2 um?
Viele dieser Fragen haben keine Antworten, aber wir haben viele erste Ideen mit hellen Aussichten, die für eine Weile beschäftigt sein können.