EVM Paralelleştirme Atılımı: Çoklu İş Parçacığı Uygulaması İşlem Gücünü Artırıyor

robot
Abstract generation in progress

EVM'nin Paralelleşme Yolu: Seri İcradan Çoklu İşlemeye

Herkesin bildiği gibi, EVM Ethereum'un temel yürütme motorudur ve akıllı sözleşmelerin çalıştırılmasından sorumludur. Farklı düğümler üzerindeki akıllı sözleşmelerin aynı yürütme sonuçlarını almasını sağlamak için, EVM, Java sanal makinesi JVM'ye benzer, bir birleşik sanal ortam sağlar.

Akıllı sözleşmeler, blok zincirine dağıtıldığında, önce EVM bayt koduna derlenir. EVM, sözleşmeyi çalıştırırken bu bayt kodlarını sırayla okur, her bir komutun karşılık gelen Gas maliyeti vardır. EVM, her bir komutun çalıştırılması sırasında Gas tüketimini takip eder, tüketim miktarı işlemin karmaşıklığına bağlıdır.

Reddio örneğinde, paralel EVM'nin optimizasyon yolunu açıklama

Geleneksel EVM, işlemleri seri bir şekilde işleyerek, tüm işlemleri tek bir kuyrukta sırayla yürütmektedir. Bu tasarım basit ve bakımı kolaydır, ancak kullanıcı sayısının artması ve TPS taleplerinin yükselmesi ile birlikte, seri yürütmenin performans darboğazı giderek belirginleşmektedir, özellikle Layer 2 çözümlerinde daha da belirgindir.

Reddio örneğiyle paralel EVM'nin optimizasyon yolunu açıklama

EVM dışında, Ethereum işlemlerinin yürütülmesinde bir diğer temel bileşen stateDB'dir; bu, hesap durumlarını ve veri depolamayı yönetmek için kullanılır. EVM, her işlem yürütüldüğünde stateDB'deki verileri günceller ve bu değişiklikler nihayetinde küresel durum ağacında yansıtılır.

Seri yürütme modunda, EVM ve stateDB'nin işlem işleme süreci aşağıdaki gibidir:

  1. Bir blok içindeki işlemler sırayla tek tek işlenir.
  2. Her işlem bağımsız bir EVM örneği kullanır, ancak aynı stateDB'yi paylaşır.
  3. EVM yürütme süreci boyunca sürekli olarak stateDB ile etkileşime girer, veri okur ve yazar.
  4. Tüm işlemler tamamlandıktan sonra, stateDB'deki değişiklikler küresel durum ağacına gönderilecektir.

Reddio örneğiyle, paralel EVM'nin optimizasyon yolunu açıklama

Bu seri modunun temel sorunu, karmaşık akıllı sözleşme işlemlerinin diğer işlemleri engellemesi ve donanım kaynaklarını tam olarak kullanamamasıdır.

Bu sorunu çözmek için bazı projeler EVM'nin paralel optimizasyon çözümlerini keşfetmeye başladı. Örneğin, bir Layer 2 projesinin temel fikri, her bir iş parçacığına geçici bir durum veritabanı (pending-stateDB) tahsis etmektir:

  1. Farklı işlemleri çoklu iş parçacığı ile paralel yürütme
  2. Her bir iş parçacığı, durum değişikliklerini kaydetmek için bağımsız bir pending-stateDB kullanır.
  3. Tüm işlemler tamamlandığında, pending-stateDB'deki değişiklikler global stateDB'ye senkronize edilecektir.

Reddio örneği ile paralel EVM'nin optimizasyon yolunu açıklamak

Bu çözüm, okuma ve yazma işlemleri için özel bir işlem yapmıştır:

  • Okuma işlemi önce pending-stateDB'yi kontrol eder, eğer veri yoksa global stateDB'den okur.
  • Yazma işlemi, doğrudan global stateDB'yi değiştirmeden pending-stateDB'de bekletilir.

Reddio örneği ile paralel EVM'nin optimizasyon yolunu açıklama

Durum çatışmalarını önlemek için, bu plan bir çatışma tespiti mekanizması getirmiştir:

  • Farklı işlemlerin okuma-yazma kümesinin örtüşüp örtüşmediğini izleme
  • Çatışma tespit edildiğinde ilgili işlemleri yeniden yürütmek için işaretleyin

Reddio örneği ile, paralel EVM'nin optimizasyon yolunu açıklama

Son olarak, birden fazla pending-stateDB değişikliğini global stateDB'ye birleştirerek yeni bir durum kökü oluşturun.

Reddio örneği ile paralel EVM optimizasyon yolunu açıklama

Bu paralel optimizasyon çözümü, düşük çakışma yüklerinde TPS'yi 3-5 kat artırabilir. Yüksek çakışma durumlarında, teorik olarak 60 kat artışa ulaşılabilir.

Reddio örneği ile, paralel EVM'nin optimizasyon yolunu açıklama

Genel olarak, EVM'nin paralelleştirilmesi, Ethereum ve Layer 2 performansını artırmanın önemli bir yönüdür. Çoklu iş parçacığı paralel yürütme ve geçici durum kütüphaneleri gibi teknolojilerle, tutarlılığı sağlama ön koşuluyla işlem işleme kapasitesi önemli ölçüde artırılabilir. Gelecekte, depolama verimliliğini daha da optimize ederek, çatışma işleme stratejilerini geliştirmek gibi yöntemlerle EVM'nin performansını daha da artırmak mümkün olacaktır.

Reddio örneğinde, paralel EVM optimizasyon yolunu açıklama

Reddio örneğiyle, paralel EVM'nin optimizasyon yolunu açıklama

Reddio örneğiyle, paralel EVM'in optimizasyon yolunu açıklamak

ETH-1.61%
View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Reward
  • 5
  • Share
Comment
0/400
FlatTaxvip
· 07-24 20:11
60 kat mı? Boğa gibi övünme.
View OriginalReply0
FastLeavervip
· 07-22 02:02
Güzel, TPS'yi 60 katına çıkarabilirsin.
View OriginalReply0
NftDeepBreathervip
· 07-22 00:27
Sonra BTC krallığına geri döndü
View OriginalReply0
CounterIndicatorvip
· 07-22 00:11
Boğa, zirve; düşüş, dip.
View OriginalReply0
SerumDegenvip
· 07-22 00:10
gerçekten başka bir copium, eth'i pump'lamak için... önce bana gerçek tps sayılarını göster.
View OriginalReply0
Trade Crypto Anywhere Anytime
qrCode
Scan to download Gate app
Community
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)