Ruptura de la paralelización EVM: la ejecución multihilo mejora la capacidad de procesamiento de transacciones

robot
Generación de resúmenes en curso

El camino de la paralelización de EVM: de la ejecución en serie a la multiprocesamiento

Como todos saben, EVM es el motor de ejecución central de Ethereum, encargado de la ejecución de contratos inteligentes. Para garantizar que los contratos inteligentes en diferentes nodos puedan obtener el mismo resultado de ejecución, EVM proporciona un entorno virtual unificado, similar a la máquina virtual Java (JVM).

Los contratos inteligentes, cuando se despliegan en la cadena de bloques, se compilan primero en código de bytes EVM. Al ejecutar el contrato, EVM lee estas instrucciones de bytes en orden, y cada instrucción tiene un costo de Gas correspondiente. EVM rastrea el consumo de Gas de cada instrucción ejecutada, y la cantidad consumida depende de la complejidad de la operación.

Tomando Reddio como ejemplo, explicando el camino de optimización de EVM paralelo

El EVM tradicional procesa las transacciones de manera secuencial, donde todas las transacciones se encolan y se ejecutan en orden en una única cola. Este diseño es simple y fácil de mantener, pero a medida que crece la base de usuarios y aumentan las demandas de TPS, los cuellos de botella de rendimiento de la ejecución secuencial se vuelven cada vez más evidentes, especialmente en las soluciones de Capa 2.

Usando Reddio como ejemplo, describiendo el camino de optimización del EVM paralelo

Además de EVM, otro componente central en la ejecución de transacciones de Ethereum es stateDB, que se utiliza para gestionar el estado de las cuentas y el almacenamiento de datos. Cada vez que EVM ejecuta una transacción, actualiza los datos en stateDB, y estos cambios se reflejan finalmente en el árbol de estado global.

En el modo de ejecución en serie, el proceso en el que EVM y stateDB colaboran para procesar transacciones es el siguiente:

  1. Las transacciones dentro de un bloque se procesan secuencialmente.
  2. Cada transacción utiliza una instancia EVM independiente, pero comparte la misma stateDB.
  3. Durante el proceso de ejecución de EVM, interactúa continuamente con stateDB, leyendo y escribiendo datos.
  4. Después de que todas las transacciones se hayan procesado, se enviarán los cambios en stateDB al árbol de estado global.

Tomando Reddio como ejemplo, explicando el camino de optimización del EVM en paralelo

El principal problema de este modo de funcionamiento en serie es que las transacciones complejas de contratos inteligentes pueden bloquear otras transacciones, impidiendo así el uso óptimo de los recursos de hardware.

Para abordar este problema, algunos proyectos han comenzado a explorar soluciones de optimización paralela para EVM. Tomando como ejemplo un proyecto de Layer 2, su idea central es asignar una base de datos de estado temporal a cada hilo (pending-stateDB):

  1. Ejecución paralela de diferentes transacciones en múltiples hilos
  2. Cada hilo utiliza un registro de estado pendiente independiente en stateDB para registrar los cambios de estado.
  3. Después de que se complete la ejecución de todas las transacciones, los cambios en pending-stateDB se sincronizarán con el stateDB global.

Tomando Reddio como ejemplo, explicando el camino de optimización de EVM en paralelo

El plan ha hecho un tratamiento especial para las operaciones de lectura y escritura:

  • La operación de lectura verifica primero el pending-stateDB, y si no hay datos, lee el stateDB global.
  • Las operaciones de escritura se almacenan temporalmente en pending-stateDB y no modifican directamente el stateDB global.

Tomando Reddio como ejemplo, explicando el camino de optimización de EVM en paralelo

Para evitar conflictos de estado, este plan introduce un mecanismo de detección de conflictos:

  • Monitorear si hay superposición en los conjuntos de lectura y escritura de diferentes transacciones.
  • Marcar las transacciones relevantes para su reejecución cuando se detecten conflictos.

Ejemplo de Reddio, explicando el camino de optimización de EVM en paralelo

Finalmente, se combinan múltiples cambios de pending-stateDB en el stateDB global, generando una nueva raíz de estado.

Tomando Reddio como ejemplo, describiendo el camino de optimización de EVM paralelo

Esta solución de optimización paralela puede aumentar el TPS de 3 a 5 veces bajo cargas de trabajo de bajo conflicto. En situaciones de alto conflicto, teóricamente puede alcanzar un aumento de 60 veces.

A modo de ejemplo con Reddio, describiendo el camino de optimización de EVM paralelo

En general, la paralelización del EVM es una dirección importante para mejorar el rendimiento de Ethereum y su Layer 2. A través de tecnologías como la ejecución paralela multihilo y bibliotecas de estados temporales, se puede aumentar significativamente la capacidad de procesamiento de transacciones, garantizando la coherencia. En el futuro, también se puede mejorar aún más el rendimiento del EVM mediante la optimización de la eficiencia del almacenamiento, la mejora de las estrategias de manejo de conflictos y otros métodos.

Tomando Reddio como ejemplo, describiendo el camino de optimización del EVM en paralelo

Tomando Reddio como ejemplo, explicando el camino de optimización del EVM paralelo

Usando Reddio como ejemplo, explicando el camino hacia la optimización de EVM en paralelo

ETH-1.61%
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
  • 5
  • Compartir
Comentar
0/400
FlatTaxvip
· 07-24 20:11
¿60 veces? Alcista sin impuestos.
Ver originalesResponder0
FastLeavervip
· 07-22 02:02
No está mal, puede aumentar el TPS por 60 veces.
Ver originalesResponder0
NftDeepBreathervip
· 07-22 00:27
Después, el rey BTC regresa
Ver originalesResponder0
CounterIndicatorvip
· 07-22 00:11
alcista es el techo, caída es el suelo
Ver originalesResponder0
SerumDegenvip
· 07-22 00:10
solo otro copium para pump eth tbh... muéstrame los números reales de tps primero
Ver originalesResponder0
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)