El desarrollo de contratos inteligentes es una habilidad básica para los ingenieros de blockchain. Los desarrolladores suelen utilizar lenguajes de alto nivel como Solidity para implementar la lógica de negocios. Sin embargo, la EVM no puede ejecutar directamente el código de Solidity y necesita ser compilado a un lenguaje de bajo nivel (código de operación/código de bytes) que la máquina virtual pueda interpretar. Las herramientas existentes pueden automatizar este proceso de conversión, aliviando la necesidad de que los desarrolladores se concentren en los detalles de la compilación.
Aunque el proceso de compilación puede conllevar algunos costos adicionales, los ingenieros familiarizados con la codificación de bajo nivel pueden escribir la lógica del programa directamente en Solidity utilizando códigos de operación, para lograr la máxima eficiencia y reducir el consumo de gas. Por ejemplo, el protocolo de una conocida plataforma de intercambio de NFT utiliza ampliamente ensamblador en línea para minimizar los costos de gas de los usuarios.
La variabilidad del rendimiento de la Máquina virtual de Ethereum: estándares e implementaciones
EVM, es decir, "capa de ejecución", es el lugar donde se ejecutan y procesan los códigos de operación de contratos inteligentes después de ser compilados. El bytecode definido por EVM se ha convertido en un estándar de la industria. Ya sea para redes de Ethereum Layer 2 o para otras cadenas de bloques independientes, la compatibilidad con el estándar EVM permite a los desarrolladores desplegar contratos inteligentes de manera eficiente en múltiples redes.
Aunque cumplir con el estándar de bytecode de EVM es la base de que la máquina virtual se llame EVM, la forma en que se implementa en la práctica puede variar mucho. Por ejemplo, un cliente de Ethereum implementó el estándar de EVM en el lenguaje Go, mientras que otro equipo de la Fundación Ethereum mantiene una implementación en C++. Esta diversidad ofrece la posibilidad de diferentes optimizaciones de ingeniería e implementaciones personalizadas.
Tecnología EVM en paralelo
Históricamente, la comunidad blockchain se ha centrado principalmente en la innovación de algoritmos de consenso, y algunos proyectos conocidos son más famosos por su mecanismo de consenso que por su capa de ejecución. Aunque estos proyectos también han innovado en la capa de ejecución, su rendimiento a menudo se confunde erróneamente como si solo proviniera del algoritmo de consenso.
En realidad, las blockchains de alto rendimiento requieren algoritmos de consenso innovadores y una capa de ejecución optimizada, similar a la teoría del barril. Para las blockchains de EVM que solo mejoran el algoritmo de consenso, aumentar el rendimiento a menudo requiere configuraciones de nodos más potentes. Por ejemplo, una conocida cadena inteligente, bajo un límite de gas de 2000 TPS, necesita configuraciones de máquina que son varias veces más potentes que las de un nodo completo de Ethereum. Aunque otra red conocida teóricamente admite hasta 1000 TPS, su rendimiento real a menudo no cumple con las expectativas.
demanda de procesamiento en paralelo
En la mayoría de los sistemas de blockchain, las transacciones se ejecutan en orden, similar a una CPU de un solo núcleo, donde el siguiente cálculo comienza solo después de que se complete el cálculo actual. Este enfoque, aunque es simple y tiene baja complejidad del sistema, es difícil de soportar una base de usuarios a gran escala. Cambiar a un modo de máquina virtual de múltiples núcleos puede procesar múltiples transacciones simultáneamente, aumentando significativamente el rendimiento.
La ejecución en paralelo trae desafíos de ingeniería, como manejar transacciones concurrentes que escriben en el mismo contrato inteligente. Es necesario diseñar nuevos mecanismos para resolver estos conflictos. La ejecución en paralelo de contratos inteligentes no relacionados puede aumentar el rendimiento en proporción al número de hilos de procesamiento paralelo.
Innovación en EVM paralelo
EVM paralelo representa una serie de innovaciones destinadas a optimizar la capa de ejecución de los sistemas de blockchain. Tomando como ejemplo un proyecto, sus innovaciones clave incluyen:
Ejecución de transacciones en paralelo: utiliza un algoritmo de ejecución paralela optimista, que permite que múltiples transacciones se procesen simultáneamente. Este método comienza las transacciones desde el mismo estado inicial, rastrea las entradas y salidas, y genera resultados temporales para cada transacción. Se decide ejecutar la siguiente transacción al verificar si las entradas de la próxima transacción están relacionadas con las salidas de la transacción que se está procesando actualmente.
Ejecución diferida: en el mecanismo de consenso, los nodos pueden alcanzar un orden formal de transacciones sin que sea necesario que el nodo principal o los nodos de validación ejecuten las transacciones. Al principio, el nodo principal ordena las transacciones y se alcanza un consenso entre los nodos. La ejecución de las transacciones se retrasa a un canal independiente, maximizando el uso del tiempo de bloque y mejorando la eficiencia general de la ejecución.
Base de datos de estado personalizada: optimiza el almacenamiento y acceso al estado al almacenar directamente el árbol de Merkle en SSD. Este enfoque minimiza el efecto de amplificación de lectura, aumentando la velocidad de acceso al estado, lo que hace que la ejecución de contratos inteligentes sea más rápida y eficiente.
Mecanismo de consenso de alto rendimiento: versión mejorada del mecanismo de consenso HotStuff, que admite la sincronización entre cientos de nodos distribuidos globalmente, con una complejidad de comunicación lineal. Utiliza fases de votación en pipeline, lo que permite que diferentes etapas del proceso de votación se superpongan, reduciendo la latencia y aumentando la eficiencia del consenso.
Desafío
Desafíos técnicos del EVM paralelo
El cuello de botella en la ejecución de transacciones secuenciales está relacionado principalmente con la CPU y el proceso de lectura/escritura de estado. La ejecución paralela introduce posibles conflictos de estado, que requieren una verificación de conflictos antes o después de la ejecución. Por ejemplo, cuando cuatro hilos paralelos manejan transacciones que interactúan con el mismo pool de DeFi, pueden producirse conflictos. Esta situación requiere mecanismos cuidadosos de detección y resolución de conflictos para garantizar un procesamiento paralelo eficiente.
Además de las diferencias técnicas para implementar EVM en paralelo, los equipos generalmente también deben rediseñar y mejorar el rendimiento de lectura/escritura de la base de datos de estado, así como desarrollar algoritmos de consenso compatibles.
Desafíos y consideraciones
Los dos principales desafíos que enfrenta la EVM paralela son la captura de valor de ingeniería a largo plazo de Ethereum y la centralización de nodos. Aunque la etapa de desarrollo actual aún no se ha abierto completamente para proteger la propiedad intelectual, estos detalles finalmente se revelarán cuando se inicien las redes de prueba y la red principal, enfrentando el riesgo de ser absorbidos por otras blockchains. El rápido desarrollo del ecosistema será clave para mantener la ventaja competitiva.
La centralización de nodos es un desafío al que se enfrentan todas las cadenas de bloques de alto rendimiento, y es necesario encontrar un equilibrio entre la "triple dificultad de la cadena de bloques" — operaciones sin permisos, sin necesidad de confianza y demandas de alto rendimiento. Indicadores como "TPS por requisito de hardware" pueden ayudar a comparar la eficiencia de las cadenas de bloques bajo condiciones de hardware específicas, y una menor demanda de hardware contribuye a lograr más nodos descentralizados.
El panorama de EVM paralelo
El patrón EVM paralelo incluye múltiples proyectos, algunos son cadenas de bloques Layer 1, otros pueden ser soluciones Layer 2. También hay algunos que son soluciones compatibles con EVM basadas en otras redes o clientes de código abierto.
Actualmente, las redes EVM paralelas existentes se pueden dividir en tres categorías:
Redes Layer 1 compatibles con EVM mejoradas mediante tecnología de ejecución paralela: estas redes no adoptaron inicialmente la ejecución paralela, pero luego se actualizaron a través de iteraciones tecnológicas para soportar EVM paralela.
Redes Layer 1 compatibles con EVM que utilizan tecnología de ejecución paralela desde el principio: algunos proyectos emergentes consideraron la ejecución paralela desde su diseño inicial.
Redes Layer 2 que utilizan tecnología de ejecución paralela no EVM: estas incluyen cadenas Layer 2 compatibles con EVM orientadas a la escalabilidad. Estas redes abstraen el EVM en módulos de ejecución intercambiables, permitiendo seleccionar la mejor "capa de ejecución de VM" según sea necesario, logrando así la capacidad de paralelismo.
Introducción del proyecto
Proyecto A: EVM paralela líder
El proyecto tiene como objetivo resolver el problema de escalabilidad del EVM tradicional mediante la optimización de la ejecución paralela y la arquitectura de tuberías, con el objetivo de alcanzar 10,000 TPS. El proyecto ha completado una gran financiación y el equipo fundador incluye miembros de instituciones de intercambio reconocidas. La red de pruebas interna ya se ha lanzado y se espera que se abra al público en breve.
Proyecto B: lanzamiento de la red EVM paralela
Este proyecto comenzó como una red Layer 1 centrada en el comercio, que ofrece una infraestructura avanzada para aplicaciones de comercio. Recientemente se anunció una actualización completa, convirtiéndose en un EVM paralelo de alto rendimiento, lo que aumenta significativamente el TPS. La red de pruebas del EVM paralelo ya está en línea, soportando la migración con un solo clic de aplicaciones EVM. Se espera que la red principal se lance en la primera mitad de este año.
Proyecto C: Mejora de la capa de ejecución a través de doble Máquina virtual
El proyecto tiene como objetivo mejorar la escalabilidad de la red Layer 1 mediante la expansión del soporte de EVM para la ejecución paralela. Al construir un sistema de doble máquina virtual, se busca mejorar el rendimiento de la blockchain de EVM y la eficiencia en la ejecución de la red. La red de pruebas pública ya está en línea y se ha lanzado un programa de incentivos para el ecosistema.
Proyecto D: Introducción de la tecnología EVM paralela
Esta es una red Layer 1 compatible con EVM construida sobre un SDK, diseñada para aplicaciones DeFi. Recientemente se anunciaron planes de desarrollo con el objetivo de introducir tecnología de ejecución paralela de EVM para mejorar el rendimiento de la red.
Proyecto E: Solución de compatibilidad EVM para redes específicas
El proyecto es una EVM paralela construida sobre una red de alto rendimiento, siendo la primera solución de compatibilidad EVM para dicha red. Soporta a los desarrolladores de EVM en Solidity y Vyper para desplegar DApp con un solo clic, disfrutando de un alto rendimiento y bajos costos de gas.
Proyecto F: Introducir VM específica en Ethereum
Esta es una solución modular y general de Rollup Layer 2 soportada por una máquina virtual. Asienta los datos de transacciones en Ethereum, utilizando ETH como gas, pero su capa de ejecución opera en un entorno VM específico. Recientemente completó una gran financiación y se espera que la red principal se abra pronto a los desarrolladores.
Proyecto G: Capa 2 de VM modular
Este proyecto está construido sobre una pila tecnológica específica y es una red modular de Layer 2 de Máquina virtual. Su objetivo es introducir una máquina virtual de alto rendimiento en las principales redes de Layer 2 de Ethereum y Bitcoin existentes. Soporta el uso de Ethereum o Bitcoin como capa de liquidación, y la capa de ejecución puede utilizar múltiples máquinas virtuales para la ejecución en paralelo.
Conclusión
Con el desarrollo de la tecnología blockchain, es igualmente importante prestar atención a la capa de ejecución y los algoritmos de consenso para lograr un alto rendimiento. Innovaciones como EVM paralela proporcionan soluciones prometedoras para aumentar el rendimiento y la eficiencia, haciendo que la blockchain sea más escalable y capaz de soportar una amplia base de usuarios. El desarrollo e implementación de estas tecnologías darán forma al futuro del ecosistema blockchain, impulsando un mayor avance y aplicaciones en el campo.
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.
8 me gusta
Recompensa
8
3
Republicar
Compartir
Comentar
0/400
alpha_leaker
· hace12h
gas caro hasta el punto de comer tierra, ¿a quién le importa si compilas o no?
Ver originalesResponder0
RetailTherapist
· hace12h
¿Quién puede soportar que las tarifas de gas sean tan caras~
Innovación y desafíos en la capa de ejecución de la Cadena de bloques con la tecnología EVM paralela
Máquina virtual de Ethereum EVM
Máquina virtual de Ethereum y Solidity
El desarrollo de contratos inteligentes es una habilidad básica para los ingenieros de blockchain. Los desarrolladores suelen utilizar lenguajes de alto nivel como Solidity para implementar la lógica de negocios. Sin embargo, la EVM no puede ejecutar directamente el código de Solidity y necesita ser compilado a un lenguaje de bajo nivel (código de operación/código de bytes) que la máquina virtual pueda interpretar. Las herramientas existentes pueden automatizar este proceso de conversión, aliviando la necesidad de que los desarrolladores se concentren en los detalles de la compilación.
Aunque el proceso de compilación puede conllevar algunos costos adicionales, los ingenieros familiarizados con la codificación de bajo nivel pueden escribir la lógica del programa directamente en Solidity utilizando códigos de operación, para lograr la máxima eficiencia y reducir el consumo de gas. Por ejemplo, el protocolo de una conocida plataforma de intercambio de NFT utiliza ampliamente ensamblador en línea para minimizar los costos de gas de los usuarios.
La variabilidad del rendimiento de la Máquina virtual de Ethereum: estándares e implementaciones
EVM, es decir, "capa de ejecución", es el lugar donde se ejecutan y procesan los códigos de operación de contratos inteligentes después de ser compilados. El bytecode definido por EVM se ha convertido en un estándar de la industria. Ya sea para redes de Ethereum Layer 2 o para otras cadenas de bloques independientes, la compatibilidad con el estándar EVM permite a los desarrolladores desplegar contratos inteligentes de manera eficiente en múltiples redes.
Aunque cumplir con el estándar de bytecode de EVM es la base de que la máquina virtual se llame EVM, la forma en que se implementa en la práctica puede variar mucho. Por ejemplo, un cliente de Ethereum implementó el estándar de EVM en el lenguaje Go, mientras que otro equipo de la Fundación Ethereum mantiene una implementación en C++. Esta diversidad ofrece la posibilidad de diferentes optimizaciones de ingeniería e implementaciones personalizadas.
Tecnología EVM en paralelo
Históricamente, la comunidad blockchain se ha centrado principalmente en la innovación de algoritmos de consenso, y algunos proyectos conocidos son más famosos por su mecanismo de consenso que por su capa de ejecución. Aunque estos proyectos también han innovado en la capa de ejecución, su rendimiento a menudo se confunde erróneamente como si solo proviniera del algoritmo de consenso.
En realidad, las blockchains de alto rendimiento requieren algoritmos de consenso innovadores y una capa de ejecución optimizada, similar a la teoría del barril. Para las blockchains de EVM que solo mejoran el algoritmo de consenso, aumentar el rendimiento a menudo requiere configuraciones de nodos más potentes. Por ejemplo, una conocida cadena inteligente, bajo un límite de gas de 2000 TPS, necesita configuraciones de máquina que son varias veces más potentes que las de un nodo completo de Ethereum. Aunque otra red conocida teóricamente admite hasta 1000 TPS, su rendimiento real a menudo no cumple con las expectativas.
demanda de procesamiento en paralelo
En la mayoría de los sistemas de blockchain, las transacciones se ejecutan en orden, similar a una CPU de un solo núcleo, donde el siguiente cálculo comienza solo después de que se complete el cálculo actual. Este enfoque, aunque es simple y tiene baja complejidad del sistema, es difícil de soportar una base de usuarios a gran escala. Cambiar a un modo de máquina virtual de múltiples núcleos puede procesar múltiples transacciones simultáneamente, aumentando significativamente el rendimiento.
La ejecución en paralelo trae desafíos de ingeniería, como manejar transacciones concurrentes que escriben en el mismo contrato inteligente. Es necesario diseñar nuevos mecanismos para resolver estos conflictos. La ejecución en paralelo de contratos inteligentes no relacionados puede aumentar el rendimiento en proporción al número de hilos de procesamiento paralelo.
Innovación en EVM paralelo
EVM paralelo representa una serie de innovaciones destinadas a optimizar la capa de ejecución de los sistemas de blockchain. Tomando como ejemplo un proyecto, sus innovaciones clave incluyen:
Ejecución de transacciones en paralelo: utiliza un algoritmo de ejecución paralela optimista, que permite que múltiples transacciones se procesen simultáneamente. Este método comienza las transacciones desde el mismo estado inicial, rastrea las entradas y salidas, y genera resultados temporales para cada transacción. Se decide ejecutar la siguiente transacción al verificar si las entradas de la próxima transacción están relacionadas con las salidas de la transacción que se está procesando actualmente.
Ejecución diferida: en el mecanismo de consenso, los nodos pueden alcanzar un orden formal de transacciones sin que sea necesario que el nodo principal o los nodos de validación ejecuten las transacciones. Al principio, el nodo principal ordena las transacciones y se alcanza un consenso entre los nodos. La ejecución de las transacciones se retrasa a un canal independiente, maximizando el uso del tiempo de bloque y mejorando la eficiencia general de la ejecución.
Base de datos de estado personalizada: optimiza el almacenamiento y acceso al estado al almacenar directamente el árbol de Merkle en SSD. Este enfoque minimiza el efecto de amplificación de lectura, aumentando la velocidad de acceso al estado, lo que hace que la ejecución de contratos inteligentes sea más rápida y eficiente.
Mecanismo de consenso de alto rendimiento: versión mejorada del mecanismo de consenso HotStuff, que admite la sincronización entre cientos de nodos distribuidos globalmente, con una complejidad de comunicación lineal. Utiliza fases de votación en pipeline, lo que permite que diferentes etapas del proceso de votación se superpongan, reduciendo la latencia y aumentando la eficiencia del consenso.
Desafío
Desafíos técnicos del EVM paralelo
El cuello de botella en la ejecución de transacciones secuenciales está relacionado principalmente con la CPU y el proceso de lectura/escritura de estado. La ejecución paralela introduce posibles conflictos de estado, que requieren una verificación de conflictos antes o después de la ejecución. Por ejemplo, cuando cuatro hilos paralelos manejan transacciones que interactúan con el mismo pool de DeFi, pueden producirse conflictos. Esta situación requiere mecanismos cuidadosos de detección y resolución de conflictos para garantizar un procesamiento paralelo eficiente.
Además de las diferencias técnicas para implementar EVM en paralelo, los equipos generalmente también deben rediseñar y mejorar el rendimiento de lectura/escritura de la base de datos de estado, así como desarrollar algoritmos de consenso compatibles.
Desafíos y consideraciones
Los dos principales desafíos que enfrenta la EVM paralela son la captura de valor de ingeniería a largo plazo de Ethereum y la centralización de nodos. Aunque la etapa de desarrollo actual aún no se ha abierto completamente para proteger la propiedad intelectual, estos detalles finalmente se revelarán cuando se inicien las redes de prueba y la red principal, enfrentando el riesgo de ser absorbidos por otras blockchains. El rápido desarrollo del ecosistema será clave para mantener la ventaja competitiva.
La centralización de nodos es un desafío al que se enfrentan todas las cadenas de bloques de alto rendimiento, y es necesario encontrar un equilibrio entre la "triple dificultad de la cadena de bloques" — operaciones sin permisos, sin necesidad de confianza y demandas de alto rendimiento. Indicadores como "TPS por requisito de hardware" pueden ayudar a comparar la eficiencia de las cadenas de bloques bajo condiciones de hardware específicas, y una menor demanda de hardware contribuye a lograr más nodos descentralizados.
El panorama de EVM paralelo
El patrón EVM paralelo incluye múltiples proyectos, algunos son cadenas de bloques Layer 1, otros pueden ser soluciones Layer 2. También hay algunos que son soluciones compatibles con EVM basadas en otras redes o clientes de código abierto.
Actualmente, las redes EVM paralelas existentes se pueden dividir en tres categorías:
Redes Layer 1 compatibles con EVM mejoradas mediante tecnología de ejecución paralela: estas redes no adoptaron inicialmente la ejecución paralela, pero luego se actualizaron a través de iteraciones tecnológicas para soportar EVM paralela.
Redes Layer 1 compatibles con EVM que utilizan tecnología de ejecución paralela desde el principio: algunos proyectos emergentes consideraron la ejecución paralela desde su diseño inicial.
Redes Layer 2 que utilizan tecnología de ejecución paralela no EVM: estas incluyen cadenas Layer 2 compatibles con EVM orientadas a la escalabilidad. Estas redes abstraen el EVM en módulos de ejecución intercambiables, permitiendo seleccionar la mejor "capa de ejecución de VM" según sea necesario, logrando así la capacidad de paralelismo.
Introducción del proyecto
Proyecto A: EVM paralela líder
El proyecto tiene como objetivo resolver el problema de escalabilidad del EVM tradicional mediante la optimización de la ejecución paralela y la arquitectura de tuberías, con el objetivo de alcanzar 10,000 TPS. El proyecto ha completado una gran financiación y el equipo fundador incluye miembros de instituciones de intercambio reconocidas. La red de pruebas interna ya se ha lanzado y se espera que se abra al público en breve.
Proyecto B: lanzamiento de la red EVM paralela
Este proyecto comenzó como una red Layer 1 centrada en el comercio, que ofrece una infraestructura avanzada para aplicaciones de comercio. Recientemente se anunció una actualización completa, convirtiéndose en un EVM paralelo de alto rendimiento, lo que aumenta significativamente el TPS. La red de pruebas del EVM paralelo ya está en línea, soportando la migración con un solo clic de aplicaciones EVM. Se espera que la red principal se lance en la primera mitad de este año.
Proyecto C: Mejora de la capa de ejecución a través de doble Máquina virtual
El proyecto tiene como objetivo mejorar la escalabilidad de la red Layer 1 mediante la expansión del soporte de EVM para la ejecución paralela. Al construir un sistema de doble máquina virtual, se busca mejorar el rendimiento de la blockchain de EVM y la eficiencia en la ejecución de la red. La red de pruebas pública ya está en línea y se ha lanzado un programa de incentivos para el ecosistema.
Proyecto D: Introducción de la tecnología EVM paralela
Esta es una red Layer 1 compatible con EVM construida sobre un SDK, diseñada para aplicaciones DeFi. Recientemente se anunciaron planes de desarrollo con el objetivo de introducir tecnología de ejecución paralela de EVM para mejorar el rendimiento de la red.
Proyecto E: Solución de compatibilidad EVM para redes específicas
El proyecto es una EVM paralela construida sobre una red de alto rendimiento, siendo la primera solución de compatibilidad EVM para dicha red. Soporta a los desarrolladores de EVM en Solidity y Vyper para desplegar DApp con un solo clic, disfrutando de un alto rendimiento y bajos costos de gas.
Proyecto F: Introducir VM específica en Ethereum
Esta es una solución modular y general de Rollup Layer 2 soportada por una máquina virtual. Asienta los datos de transacciones en Ethereum, utilizando ETH como gas, pero su capa de ejecución opera en un entorno VM específico. Recientemente completó una gran financiación y se espera que la red principal se abra pronto a los desarrolladores.
Proyecto G: Capa 2 de VM modular
Este proyecto está construido sobre una pila tecnológica específica y es una red modular de Layer 2 de Máquina virtual. Su objetivo es introducir una máquina virtual de alto rendimiento en las principales redes de Layer 2 de Ethereum y Bitcoin existentes. Soporta el uso de Ethereum o Bitcoin como capa de liquidación, y la capa de ejecución puede utilizar múltiples máquinas virtuales para la ejecución en paralelo.
Conclusión
Con el desarrollo de la tecnología blockchain, es igualmente importante prestar atención a la capa de ejecución y los algoritmos de consenso para lograr un alto rendimiento. Innovaciones como EVM paralela proporcionan soluciones prometedoras para aumentar el rendimiento y la eficiencia, haciendo que la blockchain sea más escalable y capaz de soportar una amplia base de usuarios. El desarrollo e implementación de estas tecnologías darán forma al futuro del ecosistema blockchain, impulsando un mayor avance y aplicaciones en el campo.