Optimización de EVM en paralelo: una nueva dirección para mejorar la eficiencia del procesamiento de transacciones de Ethereum

Exploración de optimización de EVM en paralelo: el camino clave para mejorar la eficiencia en el procesamiento de transacciones

EVM, como el motor de ejecución central de Ethereum, su rendimiento afecta directamente la capacidad de procesamiento de toda la red. A medida que se expande la base de usuarios y se diversifican los escenarios de aplicación, las limitaciones del modelo de ejecución secuencial tradicional se vuelven cada vez más evidentes. Esto es especialmente claro en las soluciones de Capa 2, donde los cuellos de botella en el rendimiento de EVM son aún más pronunciados. Por lo tanto, explorar soluciones de ejecución paralela se convierte en una dirección importante para mejorar la eficiencia de EVM.

Componentes clave de EVM y flujo de ejecución en serie

EVM y stateDB son los dos componentes centrales de la ejecución de transacciones en Ethereum. EVM se encarga de interpretar y ejecutar instrucciones de contratos inteligentes, mientras que stateDB gestiona el almacenamiento del estado global. En el modelo tradicional de ejecución en serie, las transacciones se procesan una por una, cada transacción utiliza una instancia independiente de EVM, pero comparten el mismo stateDB.

El proceso de ejecución específico es el siguiente:

  1. Llamada a la función processBlock() para procesar las transacciones dentro del bloque mediante la función Process().
  2. El proceso ( ejecuta las transacciones una por una mediante un bucle for.
  3. Una vez que se completen todas las transacciones, llame a statedb.Commit)( para enviar el cambio de estado.

El principal problema de este modo de funcionamiento en serie es que las transacciones complejas pueden bloquear las transacciones posteriores, lo que impide aprovechar plenamente los recursos de hardware y limita gravemente la eficiencia del procesamiento.

![Tomando Reddio como ejemplo, describiendo el camino de optimización del EVM en paralelo])https://img-cdn.gateio.im/webp-social/moments-6618615055b17eadfa9646a0ea71fecd.webp(

Enfoques de optimización de EVM en paralelo

Para resolver el cuello de botella de eficiencia en la ejecución serial, la industria ha propuesto una solución de optimización de ejecución paralela. La idea central es: utilizar múltiples hilos para procesar varias transacciones simultáneamente, aumentando considerablemente el rendimiento. Sin embargo, el principal desafío de la ejecución paralela es cómo manejar el problema de conflictos de estado.

Un equipo de la industria propuso una solución de optimización de EVM en paralelo, cuyas principales características incluyen:

  1. Ejecución de transacciones en paralelo con múltiples hilos
  2. Asignar una base de datos de estado temporal )pending-stateDB( para cada hilo
  3. Después de que se complete la ejecución de la transacción, el estado se sincroniza y cambia a stateDB global.

Esta solución optimiza las operaciones de lectura y escritura:

  • Operación de lectura: prioriza leer del pending-stateDB, si no hay, lee del global stateDB
  • Operación de escritura: primero se registra en el WriteSet de pending-stateDB, luego se fusiona en el stateDB global.

Para resolver los conflictos de estado, el plan introdujo un mecanismo de detección de conflictos:

  • Monitorear el ReadSet y WriteSet de diferentes transacciones
  • Marcar transacciones relacionadas para reejecutar al detectar conflictos
  • Después de que todas las transacciones se hayan completado, fusionar pending-stateDB en el stateDB global

![Usando Reddio como ejemplo, explicando el camino de optimización del EVM en paralelo])https://img-cdn.gateio.im/webp-social/moments-2c09413238e16d168c5f593e2923708b.webp(

![Tomando Reddio como ejemplo, explicando el camino de optimización de EVM en paralelo])https://img-cdn.gateio.im/webp-social/moments-404bb55ec4d21fe81783881149ac0ad6.webp(

![Tomando como ejemplo Reddio, describiendo el camino de optimización de EVM paralelo])https://img-cdn.gateio.im/webp-social/moments-fc9301b18b6299dc8f792e68961977cd.webp(

![Usando Reddio como ejemplo, explicando el camino de optimización de EVM en paralelo])https://img-cdn.gateio.im/webp-social/moments-c62d7268de0c9ada677dc15618b1e024.webp(

![Ejemplo de Reddio, explicando el camino de optimización del EVM paralelo])https://img-cdn.gateio.im/webp-social/moments-75575d5ea4bfa2edcc71ad93d3277caf.webp(

![Tomando Reddio como ejemplo, explicando el camino de optimización del EVM paralelo])https://img-cdn.gateio.im/webp-social/moments-6274c33f6c958750df5cf3e53949b7fb.webp(

![Tomando como ejemplo Reddio, describiendo el camino de optimización del EVM paralelo])https://img-cdn.gateio.im/webp-social/moments-4966960247a4550afa25f04eaaabbbd8.webp(

![Usando Reddio como ejemplo, expone el camino de optimización del EVM en paralelo])https://img-cdn.gateio.im/webp-social/moments-af377193cf86df94c08df49ba217e327.webp(

![Tomando Reddio como ejemplo, explicando el camino de optimización de EVM en paralelo])https://img-cdn.gateio.im/webp-social/moments-cd65f3332323ef44ea8f5f572cafd188.webp(

Mejora del rendimiento de la optimización paralela

La optimización de paralelismo multihilo ha mejorado significativamente el rendimiento de EVM, especialmente al manejar transacciones de contratos inteligentes complejos. Según los datos de investigación:

  • Con cargas de trabajo de bajo conflicto, el TPS aumenta de 3 a 5 veces.
  • En cargas de trabajo de alta conflictividad, se puede aumentar teóricamente hasta 60 veces.

Este esquema de paralelización sienta las bases para la mejora del rendimiento futuro de Ethereum y las soluciones de Layer 2. Con el desarrollo adicional de la tecnología, como la optimización de la eficiencia del almacenamiento, la aceleración por GPU, etc., se espera que el rendimiento de EVM mejore aún más.

![Usando Reddio como ejemplo, describiendo el camino de optimización del EVM paralelo])https://img-cdn.gateio.im/webp-social/moments-77a2eed7aad280b3028c93d8cb81f124.webp(

ETH0.01%
Ver originales
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
  • Recompensa
  • 6
  • Republicar
  • Compartir
Comentar
0/400
Whale_Whisperervip
· 08-07 21:42
Entender cómo manejar el cuello de botella de l2. Siento que eth está a punto de caer.
Ver originalesResponder0
ContractCollectorvip
· 08-05 12:14
¿Quién puede explicar qué es stateDB? Solo entiendo que DB es una base de datos.
Ver originalesResponder0
ApeWithNoChainvip
· 08-05 09:58
¿El ETH demasiado viejo todavía juega parallel, verdad? Mejor no lo muevas.
Ver originalesResponder0
SchrodingerGasvip
· 08-05 09:44
La optimización del gas y más optimización realmente no es tan práctica como ajustar un límite de gas alto en L2.
Ver originalesResponder0
CryptoMotivatorvip
· 08-05 09:42
La casa del terrateniente tampoco tiene más provisiones, L2 no puede salvar ETH.
Ver originalesResponder0
GasFeeCriervip
· 08-05 09:36
¿Qué vas a mover para la Billetera? L2 no es barato.
Ver originalesResponder0
  • Anclado
Opere con criptomonedas en cualquier momento y lugar
qrCode
Escanee para descargar la aplicación Gate
Comunidad
Español
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)