La ejecución nativa de Cairo de Starknet utiliza su lenguaje de programación personalizado, Cairo, para aumentar la escalabilidad, reducir los costos y mejorar el rendimiento de los contratos inteligentes. Sin embargo, surgen desafíos a partir de la necesidad de una adopción más amplia por parte de los desarrolladores, la compatibilidad de las herramientas y el equilibrio entre la innovación y la accesibilidad en todo el ecosistema.
Starknet es un protocolo de capa 2 (L2) de Ethereum que aprovecha las pruebas criptográficas STARK (argumentos de conocimiento sucintos y transparentes) para impulsar la computación verificable a escala. Al igual que otras cadenas de bloques L2, Starknet puede ofrecer una escalabilidad y seguridad significativas para las transacciones L2, al tiempo que preserva la descentralización.
En el núcleo de Starknet se encuentra la máquina virtual Cairo, un entorno de ejecución especialmente diseñado para aprovechar las capacidades de prueba criptográfica de las STARK. A diferencia de otras máquinas virtuales, la máquina virtual Cairo de Starknet está diseñada para ejecutar programas demostrables, lo que reduce la sobrecarga asociada con la generación de pruebas para verificar los cálculos. Esto permite a Starknet procesar una gran cantidad de transacciones mientras mantiene una verificación sin confianza.
Dicho esto, la verdadera medida del rendimiento de Starknet, tal como lo experimentan los usuarios finales, depende de la velocidad a la que su secuenciador procesa las transacciones y confirma los resultados de la ejecución. También conocidas como "confirmaciones suaves", la confirmación del secuenciador del éxito (o fracaso) de la transacción es útil para los usuarios sensibles al tiempo que desean evitar esperar a que las transacciones finalicen en Ethereum L1 antes de conocer el estado de una transacción.
En la actualidad, el rendimiento de las transacciones de Starknet depende en gran medida de la eficiencia del secuenciador. El secuenciador es responsable de recibir, organizar y probar las transacciones antes de enviarlas a Ethereum para su verificación final. Aunque Starknet utiliza actualmente un único secuenciador, planea descentralizarlo para lograr una mejor resistencia a la censura y una mayor tolerancia a las fallas (un secuenciador fuera de línea no puede hacer caer la red).
El 29 de octubre, Starknet registró un promedio de 127 transacciones por segundo (TPS) durante un período continuo de 24 horas. No se trató de un pico único, sino de un hito de rendimiento sostenido logrado durante las operaciones normales, lo que demuestra la capacidad de la plataforma para gestionar grandes volúmenes de transacciones en condiciones del mundo real. Además de este logro, el rendimiento de Starknet se destaca por sus confirmaciones de transacciones ultrarrápidas (con un promedio de menos de dos segundos) y tarifas ultrabajas (0,002 dólares por transacción), lo que la convierte en una solución rentable y eficiente para escalar Ethereum.
Sin embargo, para mantener este nivel de rendimiento se necesita una innovación constante, especialmente a medida que aumenta la demanda de los usuarios. Aquí es donde entran en juego las próximas mejoras de Starknet en su modelo de ejecución, que introducen optimizaciones que prometen no solo un procesamiento de transacciones más rápido, sino también un uso más eficiente de los recursos. Estos avances marcan un paso fundamental para mejorar el entorno de ejecución de Starknet y satisfacer las demandas de un ecosistema en rápida evolución.
Starknet ya ha introducido actualizaciones transformadoras en su arquitectura para mejorar el rendimiento y reforzar la experiencia del usuario (por ejemplo, ejecución paralela y empaquetamiento de bloques mediante la actualización de Bolt). Estas innovaciones han reducido drásticamente los tiempos de procesamiento de transacciones y los costos de gas al permitir que el secuenciador gestione las transacciones de manera más eficiente. Para obtener más información sobre la actualización de Bolt y cómo mejora la escalabilidad de Starknet, lea nuestra explicación de Starknet Bolt .
Sobre esta base, Starknet se centra ahora en optimizar aún más su entorno de ejecución con Cairo-Native. Las próximas mejoras redefinirán la forma en que se procesan las transacciones, pasando de la emulación basada en máquinas virtuales a la ejecución nativa. Estos cambios prometen mejoras significativas en la velocidad de procesamiento y la eficiencia de los recursos, lo que garantiza que Starknet pueda satisfacer las crecientes demandas de los usuarios.
En la siguiente sección, analizaremos más de cerca el entorno de ejecución de Starknet y profundizaremos en cómo se están reimaginando la máquina virtual Cairo y la arquitectura más amplia para respaldar la siguiente fase de escalabilidad y eficiencia. ¡Vamos a profundizar!
El entorno de ejecución de Starknet ha evolucionado significativamente con el tiempo para mejorar el rendimiento y garantizar la seguridad. Inicialmente, Starknet dependía de un proceso sencillo en el que el código Cairo de alto nivel se compilaba directamente en CASM (Cairo Assembly) para su ejecución. Si bien este enfoque funcionaba, dejaba a la red vulnerable a ineficiencias y riesgos de seguridad. Por ejemplo, no se podía demostrar que el código no era válido y el secuenciador estaba expuesto a posibles ataques DoS debido a la falta de salvaguardas en la contabilidad de gas.
Para solucionar estos problemas, la actualización Cairo 1.0 introdujo Sierra, una representación intermedia (IR) que refuerza la seguridad por diseño. Inspirada en lenguajes como Rust, Sierra garantiza que los desarrolladores sigan patrones de codificación más estrictos, eliminando eficazmente los errores de tiempo de ejecución y permitiendo una contabilidad precisa del gas. Esta actualización ya está disponible en la red principal de Starknet y marca un paso crucial hacia un entorno de ejecución más sólido y seguro.
Cairo-Native se basa en este progreso y mejora aún más el rendimiento de Starknet al permitir la ejecución nativa. La ejecución nativa es un cambio con respecto al patrón anterior de ejecución de programas en la máquina virtual Cairo y representa el siguiente paso adelante en términos de rendimiento para Starknet.
Anteriormente, el secuenciador Starknet ejecutaba programas utilizando una máquina virtual que emulaba el código, lo que generaba una sobrecarga significativa y ralentizaba el procesamiento de transacciones. La emulación en este contexto implica programar la CPU para que se comporte como una CPU Cairo teórica, interpretando las instrucciones paso a paso. Si bien es funcional, este proceso es inherentemente ineficiente porque impide que la CPU utilice por completo sus capacidades nativas y estilos de ejecución.
Por el contrario, la ejecución nativa elimina esta incomodidad, permitiendo que los programas se ejecuten directamente en el sistema operativo en el conjunto de instrucciones nativo de la CPU. Este cambio mejora drásticamente la velocidad de ejecución y la eficiencia de los recursos, lo que permite a Starknet procesar transacciones más rápido que nunca.
Para lograrlo, la ejecución de Cairo-Native integra tecnologías de compilación avanzadas como MLIR ( Multi-Level Intermediate Representation ) y LLVM ( Low Level Virtual Machine ). Estas herramientas se utilizan ampliamente en el desarrollo de software moderno para compilar código en instrucciones optimizadas a nivel de máquina.
Cairo-Native toma los programas de Sierra y los organiza en una forma intermedia, MLIR, que también permite optimizaciones sofisticadas, mientras que LLVM los compila en ejecutables nativos adaptados al sistema operativo subyacente. Este proceso de compilación de doble capa garantiza que los ejecutables generados sean rápidos, eficientes y estén listos para la ejecución directa sin ninguna sobrecarga adicional.
El impacto de esta actualización en el rendimiento del secuenciador (y de la red en general) es profundo:
Aunque la ejecución nativa aporta mejoras significativas en la velocidad, surge una preocupación natural para los desarrolladores con respecto al flujo de trabajo de ejecución dual entre el secuenciador y el probador. Si bien el secuenciador se beneficia de la ejecución de transacciones mediante artefactos nativos para lograr velocidad, el probador aún depende de la máquina virtual Cairo para ejecutar transacciones paso a paso, lo que garantiza que puedan probarse ante el verificador STARK de Ethereum.
En este proceso todavía se utiliza CASM, ya que es la representación validada por el verificador STARK en Ethereum. Esta dualidad (ejecutar las mismas transacciones a través de dos sistemas diferentes) puede plantear preguntas válidas sobre la coherencia y la corrección. En concreto, ¿cómo podemos estar seguros de que los resultados de la ejecución nativa y la ejecución de la máquina virtual Cairo siempre coincidirán?
La respuesta breve está en pruebas y validaciones rigurosas. En concreto, el equipo de LambdaClass realizó pruebas de repetición exhaustivas, un proceso en el que se vuelven a ejecutar bloques históricos de Starknet con el nuevo sistema para garantizar que cada transacción produzca los mismos resultados.
Las pruebas de repetición son un método fundamental para verificar que, incluso con dos rutas de ejecución distintas, los resultados siguen siendo consistentes. Por lo tanto, los desarrolladores pueden estar seguros de que este extenso proceso de validación minimiza significativamente el riesgo de discrepancias.
Además, cabe destacar que Starknet siempre ha operado con dos flujos de ejecución separados. Incluso antes de Cairo-Native, el secuenciador no dependía completamente de la máquina virtual Cairo para tareas como llamadas al sistema o acceso al estado. Estas ya se manejaban de manera diferente, y el probador se enfocaba en producir pruebas criptográficas para actualizar el estado de Starknet en Ethereum.
En este sentido, la introducción de la ejecución nativa representa una evolución (no un cambio) respecto de la arquitectura establecida de Starknet. Esto también significa que los desarrolladores no deberían tener muchos problemas a la hora de diseñar aplicaciones que funcionen con el nuevo modelo de ejecución de Starknet.
En general, Cairo-Native abre un nuevo nivel de escalabilidad y velocidad para Starknet. Al pasar de la emulación basada en VM a la ejecución nativa, la red puede admitir más usuarios, manejar mayores volúmenes de transacciones y brindar una experiencia fluida tanto para desarrolladores como para usuarios finales. Esta transformación consolida la posición de Starknet como una solución L2 líder y allana el camino para una mayor innovación en el ecosistema Ethereum.
Cairo-Native marca una mejora revolucionaria en el entorno de ejecución de Starknet, que ofrece importantes mejoras de velocidad en comparación con la máquina virtual Cairo tradicional. A través de extensas pruebas comparativas realizadas por LambdaClass y Nethermind, se han cuantificado las mejoras de rendimiento de la ejecución nativa, lo que destaca la capacidad de Cairo-Native para mejorar drásticamente la velocidad de procesamiento de transacciones y contratos.
Los puntos de referencia revelaron que Cairo-Native logra una aceleración promedio de 5 veces más que Cairo VM, con ganancias de rendimiento que van desde 1,5x a 20x, según el contrato específico. Estos resultados son más que simples números: ilustran cómo la ejecución nativa beneficia directamente a los usuarios y desarrolladores.
Por ejemplo, una simple transferencia STRK entre dos cuentas Argent no solo se completó 2,3 veces más rápido, sino que también mostró una aceleración de 4,8 veces en la lógica del contrato ERC-20. Para los usuarios, esto significa menores tiempos de espera para las transacciones e interacciones más fluidas con aplicaciones descentralizadas (dApps). Para los desarrolladores, estas mejoras garantizan que sus aplicaciones funcionen más rápido y de manera más confiable, incluso bajo una gran carga de red.
En escenarios más exigentes, como los intercambios de STRK/ETH o las aplicaciones de juegos como Influenceth , los beneficios son aún más evidentes. Las transacciones de Influenceth registraron una aceleración de transacciones de 10,5 veces, y algunas ejecuciones de contratos mejoraron hasta 70 veces. Estos avances permiten a los desarrolladores crear aplicaciones descentralizadas complejas y de alto rendimiento, allanando el camino para experiencias de juego más ricas, protocolos DeFi avanzados y otros casos de uso de uso intensivo de computación.
La transición de la emulación a la ejecución nativa sustenta estos avances. Al compilar programas directamente en código nativo de la máquina, Cairo-Native elimina las ineficiencias de emular las instrucciones de Cairo, donde la CPU básicamente imita a otra CPU virtual. La ejecución nativa permite que el hardware funcione a plena capacidad, lo que ofrece mejoras de rendimiento inigualables en todos los tipos de transacciones.
Cairo-Native presenta un proceso de compilación más avanzado, que agrega varios pasos para traducir el código de Sierra en ejecutables nativos. Esto incluye procesos como convertir Sierra a MLIR, optimizar el código y, finalmente, compilarlo en instrucciones nativas de la máquina. Si bien este proceso más complejo puede parecer intuitivamente que aumentaría el tiempo de compilación general, los puntos de referencia muestran que los pasos adicionales contribuyen a menos del 15 % del tiempo de compilación total, lo que demuestra que el proceso sigue siendo eficiente.
También vale la pena señalar que los ejecutables nativos son más grandes en comparación con los artefactos CASM. Este aumento refleja el mayor nivel de detalle y optimización que se requiere para el código nativo de la máquina, pero no afecta el rendimiento de la red. Es importante destacar que la compilación solo se realiza una vez, en el momento en que se implementa el contrato en la red, lo que garantiza que este paso no afecte el rendimiento en tiempo real del secuenciador.
Las implicaciones de Cairo-Native para el ecosistema de Starknet son de largo alcance. Al permitir una ejecución de transacciones más rápida y eficiente, esta actualización está destinada a mejorar enormemente la experiencia del usuario para todas las aplicaciones de la red. Se prevé que la red gestione casi 1000 transacciones por segundo (TPS) para fines de 2024, lo que convertirá a Starknet en una de las cadenas L2 más escalables y con mayor capacidad de respuesta del ecosistema Ethereum.
Para los usuarios, la actualización a Cairo-Native significa una confirmación de transacciones más rápida y costos aún más bajos. Durante el desempeño récord de Starknet a principios de este año, las tarifas de gas promediaron alrededor de $0,002 por transacción. Con Cairo-Native, se espera que estos costos disminuyan aún más, consolidando a Starknet como una de las redes de Capa 2 más asequibles.
La introducción de la ejecución de Cairo-Native también potenciará los siguientes casos de uso:
Starknet ya ha ganado terreno como plataforma para juegos basados en blockchain, y Cairo-Native lleva esto al siguiente nivel. Juegos como Influenceth , que se basan en una lógica intrincada e interacciones de ritmo rápido, se beneficiarán significativamente de las mejoras de velocidad. Los tiempos de ejecución más rápidos reducen la latencia en el juego, lo que permite experiencias más fluidas para los jugadores.
Los desarrolladores también pueden introducir mecánicas de juego más complejas, como capacidades multijugador en tiempo real e interacciones NFT dinámicas, sin preocuparse por cuellos de botella en el rendimiento. Esto puede generar una nueva clase de aplicaciones de juegos en cadena cuya jugabilidad puede rivalizar con la de los competidores tradicionales.
Las plataformas de redes sociales descentralizadas exigen un alto rendimiento de transacciones y una baja latencia para garantizar interacciones fluidas entre los usuarios, como publicaciones, comentarios y votaciones. Con Cairo-Native, estas plataformas pueden escalar para admitir millones de usuarios, ofreciendo feeds en tiempo real y reacciones instantáneas, rivalizando con el rendimiento de las contrapartes tradicionales de Web2. Los menores costos de gas mejoran aún más la accesibilidad, lo que hace que las redes sociales descentralizadas sean una alternativa más viable a las plataformas centralizadas y las prepara para su adopción generalizada.
El ecosistema DeFi en Starknet también aprovechará los beneficios de Cairo-Native. Las operaciones financieras complejas como los swaps, los préstamos y la agricultura de rendimiento requieren un alto rendimiento y precisión. Los tiempos de ejecución más rápidos garantizan que las transacciones y liquidaciones se realicen en tiempo real, lo que minimiza el deslizamiento y brinda a los usuarios mejores resultados. Además, las tarifas de gas más bajas permiten las microtransacciones, lo que hace que los protocolos DeFi sean más accesibles para un público más amplio.
La ejecución de Cairo-Native es un hito fundamental en la hoja de ruta de Starknet . Al introducir un nuevo nivel de ejecución, Starknet no solo consolida su posición como plataforma líder de Capa 2, sino que también sienta un precedente para el ecosistema de rollups de Ethereum en general. La innovación de Starknet muestra cómo los rollups pueden lograr una escalabilidad y eficiencia incomparables, lo que ayuda a Ethereum a acercarse a su visión de adopción masiva al tiempo que mantiene sus principios de descentralización y seguridad.
Cairo-Native ofrece a los desarrolladores un entorno sólido y de alto rendimiento que admite aplicaciones más dinámicas e innovadoras. Al reducir los tiempos de ejecución y la sobrecarga de recursos, los desarrolladores pueden centrarse en crear experiencias más ricas e interactivas que antes estaban limitadas por las limitaciones de la red.
Como se señaló en un tweet , todavía hay potencial para una mayor optimización, lo que significa que el rendimiento de Cairo-Native puede seguir mejorando con el tiempo. En este sentido, la actualización a la ejecución de Cairo-Native representa un paso crucial para aprovechar todo el potencial de Starknet como una plataforma rápida, escalable y amigable para los desarrolladores y para avanzar en las capacidades de la tecnología de acumulación en todo el ecosistema de Ethereum.
Una versión de este artículo fue publicada originalmente aquí .