Introducción a la Ejecución en Paralelo

/
10

Puntos clave

  • La ejecución en paralelo representa una solución innovadora para mejorar la eficiencia y la escalabilidad de las blockchains, ofreciendo una forma de procesar transacciones de manera más rápida y rentable.
  • La ejecución en paralelo ofrece beneficios como escalabilidad, tiempos de confirmación reducidos y rendimiento mejorado, lo que la hace más eficiente y receptiva frente a cargas de trabajo pesadas.
  • Varios proyectos blockchain han implementado con éxito la ejecución en paralelo, mejorando significativamente el procesamiento de transacciones y la escalabilidad.
Desde los inicios de las blockchains, una de las metas más importantes ha sido mejorar su capacidad para procesar más transacciones a un menor costo. Se han explorado diversas estrategias para abordar este desafío, como la ejecución fuera de la cadena, el sharding de la red y la ampliación del espacio en bloque, entre otras.
DESCARGO DE RESPONSABILIDAD

La información, investigación y material contenido en este documento, se ofrece únicamente con el propósito de brindar información y no debe bajo ninguna circunstancias considerarse como una oferta para comprar, vender o ser partícipe en operaciones relacionadas al proyecto o activo mencionado. Kairos no asegura que los valores a los que se refiere este reporte son apropiados para algún inversionista en particular.

Ninguna información en este reporte se considerará como asesoría en materia de inversiones, legal, contable o tributaria ni de otro tipo. Tampoco se considera que esta o cualquier inversión o estrategia es apropiada para sus circunstancias individuales y de ninguna forma constituye una recomendación personal para usted.

Kairos ha obtenido la información y los materiales incluidos en la Web de fuentes consideradas como fiables, pero, si bien se han tomado medidas razonables para asegurarse de que la información contenida sea correcta, Kairos no garantiza que sea exacta, completa, o actualizada y, consecuentemente, no debe confiarse en ella como si lo fuera. Asimismo, no se asume responsabilidad por ningún tipo de pérdidas que surjan del uso directo o indirecto del material presentado en este documento. Kairos se reserva el derecho a modificar, suspender, cancelar o restringir el contenido del sitio, sin necesidad de previo aviso.

Miembros de nuestro equipo pueden poseer alguno de los criptoactivos mencionados en este análisis. Esta declaración tiene como objetivo revelar cualquier conflicto de intereses y no deben interpretarse erróneamente como una recomendación financiera. Este contenido solo tiene fines informativos y usted no debe tomar decisiones basándose únicamente en esta investigación. Bajo ninguna circunstancia esta publicación puede considerarse una asesoría en materia de información.

Agradecimientos a yoSoyDev, CryptoReuMD y Cypherpunkfish1 por sus valiosos comentarios, revisiones y discusiones en la realización de este artículo.

En los últimos años, un enfoque que ha captado mucha atención es la ejecución en paralelo, una técnica que proyectos innovadores como Solana, Aptos y Sui han adoptado para impulsar el rendimiento de las transacciones. ¡Es fascinante ver cómo la tecnología sigue evolucionando para brindar soluciones más eficientes y accesibles en el mundo de las blockchains!

Panorama de la ejecución de transacciones

Antes de sumergirnos en el mundo de los contratos inteligentes, es fundamental entender dos componentes clave: el mecanismo de consenso y la máquina virtual. Estos dos elementos trabajan en conjunto para mantener la integridad de la información en cualquier red que ejecute contratos inteligentes.

El mecanismo de consenso reúne a cientos de nodos para ponerse de acuerdo sobre el orden y la inclusión de las transacciones es como un gran equipo que trabaja en armonía para garantizar que todo funcione sin problemas. Por otro lado, la máquina virtual (VM, por sus siglas en inglés) es como el motor que ejecuta el código de la aplicación y actualiza el estado general de la red bloque tras bloque, es decir, los saldos globales en todas las direcciones, el balance en los contratos, la cantidad de transacciones que ocurrieron en el último bloque, etc.

Ejecución en redes EVM vs no EVM

La Ethereum Virtual Machine (EVM, por sus siglas en inglés) es una de las máquinas virtuales más populares en el mundo de la tecnología blockchain. Sin embargo, su método de procesamiento secuencial de transacciones y bloques puede presentar desafíos para la escalabilidad y eficiencia. Imagina este proceso como una fila en un supermercado: cada transacción espera su turno para ser procesada, y cada bloque debe esperar a que el anterior termine de ser ejecutado. Esto puede generar tiempos de espera largos y costos elevados, especialmente cuando hay una gran cantidad de transacciones por procesar.

Este enfoque, aunque sólido en principio, puede limitar la capacidad de las aplicaciones construidas en la red Ethereum para manejar un gran volumen de transacciones de manera eficiente y económica. ¿Qué significa esto en la práctica? Que las aplicaciones en Ethereum pueden encontrar dificultades para escalar y satisfacer una demanda masiva sin experimentar retrasos significativos y costos adicionales.

Es natural preguntarse por qué no procesamos todas estas transacciones simultáneamente en lugar de una tras otra. Para responder a esta pregunta, podemos enfocarnos en tres aspectos principales que explican por qué las redes basadas en la EVM pueden no ser las más adecuadas para esta tarea:

Conflicto de cuentas:

Imagina dos eventos que intentan procesar el saldo o cualquier otro atributo de una cuenta de dirección al mismo tiempo. ¿Cómo garantizamos que el resultado sea coherente con el procesamiento secuencial, es decir, que refleje el estado global de forma correcta?

Conflicto de almacenamiento de la misma dirección

Este escenario se presenta cuando dos contratos modifican el almacenamiento de la misma variable global. ¿Cómo resolvemos este conflicto y aseguramos la integridad de los datos?

Conflicto de llamadas entre contratos

Si desplegamos el contrato A primero, el contrato B debe esperar hasta que el despliegue del contrato A esté completo antes de llamarlo. Sin embargo, en transacciones simultáneas, esta secuencia no está garantizada, lo que puede generar conflictos. ¿Cómo abordamos esta situación para evitar problemas de ejecución entre contratos?

¿Qué es la Ejecución en Paralelo?

Las blockchains tradicionales, especialmente las cadenas EVM comparten la misma debilidad, la ejecución secuencial lo que lleva a cuellos de botella, velocidades lentas de transacción y costos más altos a medida que la red crece. Por otro lado, la ejecución en paralelo propone dividir las tareas dentro de la red y ejecutarlas simultáneamente, lo que mejora la eficiencia y la escalabilidad del sistema.

En esencia, la ejecución en paralelo en entornos de blockchain implica la simultánea ejecución de múltiples aplicaciones o componentes de una aplicación, sin depender una de otra. Este enfoque, que distingue entre nodos de consenso y nodos de ejecución, agiliza procesos y reduce costos. Los nodos de consenso confirman transacciones simples, mientras que para las más complejas, las distribuyen entre grupos de ejecución para ejecutarlas simultáneamente, similar a múltiples instancias ejecutándose al mismo tiempo.

Tipos de Ejecución en Paralelo

Existen 3 formas o niveles en los cuales se puede realizar la ejecución en paralelo:

  • A nivel de transacciones
    Implica el procesamiento simultáneo de varias transacciones. Reduce el tiempo de confirmación de las transacciones, lo que mejora la experiencia del usuario.
  • A nivel de bloques
    Se centra en paralelizar la creación y validación de bloques. Acelera el mecanismo de consenso, mejorando la velocidad general de la cadena de bloques.
  • A nivel del contrato inteligente
    Permite la ejecución simultánea de múltiples contratos inteligentes. Optimiza el procesamiento de aplicaciones descentralizadas (DApps, por sus siglas en inglés) y contratos inteligentes complejos.

Beneficios de la Ejecución en Paralelo

Estos tres enfoques para abordar el problema de la escalabilidad ofrecen grandes beneficios, tales como:

Escalabilidad

Permite que las redes blockchain manejen un mayor volumen de transacciones sin comprometer su rendimiento, lo que facilita su adopción en entornos de alta demanda.

Tiempos de confirmación reducidos

Acelera el proceso de confirmación de transacciones, lo que mejora la experiencia del usuario al reducir los tiempos de espera y hacer que las operaciones sean más ágiles.

Rendimiento mejorado

La ejecución en paralelo eleva el rendimiento general de la red blockchain, lo que la hace más eficiente y receptiva frente a cargas de trabajo pesadas. Esto significa una mayor capacidad de respuesta y fiabilidad para las aplicaciones y usuarios que interactúan con la blockchain.

Retos de la Ejecución en Paralelo

El principal desafío de la ejecución en paralelo radica en la identificación de transacciones independientes. Por ejemplo, Solana ha abordado este problema mediante la implementación de programas sin estado y requiriendo que las transacciones especifiquen todo el estado que se leerá o escribirá durante la ejecución. Esto posibilita la ejecución en paralelo de transacciones independientes y simultáneas que acceden al mismo estado.

Sin embargo, existen otros dos desafíos importantes que vale la pena mencionar para comprender mejor las dificultades al utilizar este tipo de cadenas:

Complejidad

La ejecución simultánea de numerosas transacciones exige a los nodos una rápida actualización de la información. Este rápido ritmo de procesamiento, aunque ventajoso en términos de velocidad, puede imponer una carga considerable a los nodos, exigiéndoles una actualización exponencialmente más rápida.

Centralización de la red

Para conseguir las ventajas de la ejecución paralela se necesita una red más amplia de nodos, lo que puede comprometer la naturaleza descentralizada del sistema de cadena de bloques. Este equilibrio entre velocidad y descentralización sigue siendo una consideración crítica tanto para los desarrolladores como para los usuarios de blockchain.

Proyectos construyendo en Paralelo

Diversas blockchains han implementado con éxito la Ejecución Paralela en sus sistemas, transformando de manera significativa el procesamiento de transacciones y mejorando la escalabilidad. A continuación, examinaremos algunos ejemplos destacados de esta innovación:

Sui
Sui ha adoptado un sistema de ejecución de transacciones en paralelo, impulsando su velocidad de procesamiento de transacciones a niveles sin precedentes. Al enviar la red a través de múltiples estados simultáneamente y garantizar un estado uniforme tras la ejecución.

Sei
Especializada como blockchain de capa 1 para el intercambio de activos digitales, Sei optimiza cada capa de su cadena para ser sumamente rápida, especialmente para el intercambio de activos digitales. Su consenso twin-turbo y su paralelización basada en el mercado proporcionan una experiencia de usuario superior para las aplicaciones de intercambio.

Aptos
Aptos emplea la ejecución paralela para permitir el procesamiento simultáneo de múltiples transacciones. Este enfoque estratégico, junto con el método de procesamiento basado en instantáneas, ha mejorado significativamente el rendimiento de las transacciones de Aptos, abordando las limitaciones de escalabilidad inherentes a la ejecución secuencial.

Solana
Solana emplea la tecnología Sealevel para ejecutar transacciones en varios nodos simultáneamente. Este avance ha reducido notablemente los tiempos de confirmación de las transacciones, situando a Solana a la vanguardia en la búsqueda de mayores velocidades de transacción dentro del ecosistema blockchain.

Monad
Monad ha incorporado un mecanismo de ejecución en paralelo al mismo tiempo que garantiza una alta compatibilidad con la EVM. Al clasificar las transacciones en grupos relacionados y no relacionados y ejecutarlas en paralelo, logrando así una notable eficiencia en el procesamiento de transacciones.

Linera
Linera aprovecha la tecnología Byzantine Consistent Broadcast, centrada en acelerar los pagos independientes, especialmente en redes de puntos de venta. Esta tecnología sirve como evolución de los sistemas de liquidación bruta en tiempo real, garantizando la integridad de los pagos al tiempo que ofrece una experiencia de procesamiento de transacciones fluida y eficiente.

Fuel
Fuel se distingue por su sólida capacidad de procesamiento, habilitada por la ejecución de transacciones en paralelo utilizando estrictas listas de acceso a estados dentro de un modelo UTXO. Aprovechando el potencial computacional sin explotar de múltiples hilos y núcleos de CPU, Fuel ha logrado con éxito un notable rendimiento computacional, de accesos a estados y de transacciones, superando las capacidades de los sistemas blockchain de un solo proceso.

Si bien existen muchos otros proyectos que exploran esta solución como Polygon, Neon EVM o Vara Network, podemos observar que cado de ellos exhibe diversas aplicaciones y beneficios de la ejecución paralela, resaltando su relevancia para potenciar la eficiencia en el sector y la capacidad en la gestión de transacciones.

Conclusión

A medida que la tecnología blockchain continúa evolucionando, la integración de la ejecución paralela emerge como un elemento fundamental en la trayectoria del sector. Enfrentando los desafíos de la escalabilidad y velocidad de las transacciones, los desarrolladores y las partes interesadas deben navegar cuidadosamente entre las compensaciones asociadas a la descentralización. Varios líderes en plataformas de blockchain demuestran que la adopción de la ejecución paralela refleja el compromiso de la industria para aprovechar plenamente el potencial de las transacciones digitales descentralizadas, seguras y de alto rendimiento.

La ejecución paralela representa una frontera prometedora en el desarrollo de blockchain, proporcionando soluciones a los desafíos de escalabilidad que han obstaculizado la adopción generalizada durante mucho tiempo. A medida que los protocolos de blockchain evolucionen, la integración del procesamiento paralelo desempeñará un papel crucial para desbloquear nuevos niveles de eficiencia, escalabilidad y rendimiento, allanando el camino hacia un futuro descentralizado más sólido y versátil.

Fuentes

POSTS RELACIONADOS

Nuestro Newsletter

suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete

ANÁLISIS

Nuestro Newsletter

suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete suscribete

Al utilizar este sitio web, aceptas el almacenamiento de cookies en tu dispositivo para mejorar la navegación del sitio, analizar el uso del sitio y asistir en nuestros esfuerzos de marketing. Consulta nuestra Política de Privacidad para más información.

Genial
Logo Kairos Research
© 2023 Kairos Research. All rights reserved