Diseño del primer mecanismo de GAS del lenguaje MOVE: explicación detallada del cálculo del consumo de GAS on-chain
El 14 de octubre, se anunció un importante avance en la tecnología blockchain. Esta es la primera vez que el lenguaje MOVE diseña un mecanismo de GAS, que ha sido oficialmente llamado "una aventura". Este mecanismo define un método de cálculo abstracto que determina la cantidad de recursos computacionales y de almacenamiento necesarios para ejecutar y almacenar transacciones on-chain, utilizado para calcular el consumo de GAS durante la ejecución de transacciones.
Proceso de diseño
Para ejecutar de manera efectiva, el equipo de diseño siguió el siguiente proceso:
Definir los principios de diseño
Establecer un marco de evaluación y determinar el precio de cada operación.
Establecer un sistema de medición de GAS y álgebra de GAS para MOVE
Importar el marco GAS de upstream en on-chain
Hacer que el marco GAS tenga conciencia de almacenamiento
Optimizar aún más el plan de GAS
Principios de diseño
Los principios principales incluyen:
El costo de operación está directamente relacionado con los recursos disponibles en la red y disminuye con el avance de la tecnología.
GAS se establece mediante gobernanza on-chain, se puede configurar de manera flexible.
GAS puede prevenir ataques DoS y ajustar rápidamente según la situación de la red.
El precio del GAS refleja la visión de un crecimiento acelerado y de mantener la accesibilidad de la blockchain.
Fomentar la toma de decisiones excelentes en el diseño, como centrarse en la seguridad, la modularidad, etc.
Método de cálculo de GAS
El usuario debe especificar dos cantidades al enviar la transacción:
Cantidad máxima de GAS: el número máximo de unidades de GAS que el usuario está dispuesto a pagar
Precio del GAS: calculado en octal por unidad de GAS, 1 octal = 0.00000001 APT
Se cobrará durante el proceso de ejecución de la transacción:
Costos fijos
Costo de ejecución
Leer costo
Costo de escritura
Costo de la transacción final = Cantidad total de GAS consumido * Precio del GAS
Por ejemplo, una transacción consume 670 unidades de GAS, el precio del GAS especificado por el usuario es de 100 Octa/unidad, por lo que el costo final es 670 * 100 = 67000 Octa = 0.00067 APT.
Si la ejecución de la transacción agota el GAS, el remitente será cobrado por la cantidad máxima de GAS, y todos los cambios en la transacción serán revertidos.
Construcción de la tabla del plan GAS
1. Configuración básica
El plan de GAS incluye algunos componentes que no están relacionados con una sola operación, como el tamaño de la transacción y la unidad máxima de GAS.
2. Escala de transacciones
La mayoría de las transacciones tienen un tamaño de nivel de kilobyte, pero la publicación del módulo MOVE puede alcanzar varios kilobytes. Actualmente, el límite de tamaño de la transacción se establece en 64KB, logrando un equilibrio entre el tamaño y la accesibilidad.
3. Unidad máxima de GAS
Definir la cantidad máxima de operaciones que se pueden ejecutar en una sola transacción, establecida en 1,000,000. Incluso con la actualización del marco máximo, solo se utiliza menos del 90%.
4. Evaluación de costos de ejecución
A través del marco de referencia y la herramienta de análisis Valgrind, estima el costo relativo de todas las instrucciones MOVE y funciones nativas. Considerando la robustez y seguridad del sistema, se obtiene el número final de instrucciones ejecutadas.
5. Costo de almacenamiento
Considerando el ancho de banda de los dispositivos de almacenamiento, la capacidad de IOPS y el costo de ocupación permanente, diseñe un plan de GAS de almacenamiento. La fórmula básica es:
Almacenamiento de tarifas GAS = tarifa del proyecto + ( tarifa por byte * número de bytes )
lectura, creación y escritura de operaciones
Lectura: Calibrar según la capacidad de IOPS y ancho de banda del disco
Crear: costo más alto, calibrado según el espacio en disco de referencia
Escribir: se cobrará la misma tarifa por los bytes de actualización que por la creación.
Se definen 6 parámetros de GAS que constituyen el costo total:
per_item_read
por_byte_leído
per_item_create
per_byte_create
per_item_write
per_byte_write
Costo unitario de GAS estable
El costo fijo por unidad de GAS ayuda a mantener estable el plan de GAS. El equipo representa la unidad de GAS con una precisión de aproximadamente 3 dígitos, como el costo de una transacción de transferencia de aproximadamente 700 unidades de GAS.
Participación de la comunidad
Como proyecto comunitario, los miembros pueden:
Señalar las inconsistencias en el plan de GAS
Participar en discusiones de la comunidad
Votación sobre propuestas de gobernanza relacionadas
Ajuste de costos de GAS
El plan GAS se configura como almacenamiento en la cadena, y puede ser modificado a través de propuestas de gobernanza. Está diseñado para ser escalable, permitiendo actualizaciones. Los cambios complejos requieren actualizar el software de los nodos y obtener una amplia adopción, y finalmente ser aprobados mediante propuestas de gobernanza.
Trabajo del Futuro
Como el primer marco de GAS viable de MOVE, el trabajo futuro incluye:
Reducir el costo de ejecución
Implementar el cálculo de GAS multidimensional
Mitigar el problema de la expansión de estado
El equipo está explorando el concepto de TTL de cada proyecto, eliminando los proyectos de estado no visitados cuando expire el TTL.
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
6
Compartir
Comentar
0/400
LuckyHashValue
· hace15h
Por fin hay gas. El gas de Sui ha sido destruido por move.
Mecanismo de GAS innovador del lenguaje MOVE: explicación detallada del cálculo del consumo de recursos en la cadena
Diseño del primer mecanismo de GAS del lenguaje MOVE: explicación detallada del cálculo del consumo de GAS on-chain
El 14 de octubre, se anunció un importante avance en la tecnología blockchain. Esta es la primera vez que el lenguaje MOVE diseña un mecanismo de GAS, que ha sido oficialmente llamado "una aventura". Este mecanismo define un método de cálculo abstracto que determina la cantidad de recursos computacionales y de almacenamiento necesarios para ejecutar y almacenar transacciones on-chain, utilizado para calcular el consumo de GAS durante la ejecución de transacciones.
Proceso de diseño
Para ejecutar de manera efectiva, el equipo de diseño siguió el siguiente proceso:
Principios de diseño
Los principios principales incluyen:
Método de cálculo de GAS
El usuario debe especificar dos cantidades al enviar la transacción:
Se cobrará durante el proceso de ejecución de la transacción:
Costo de la transacción final = Cantidad total de GAS consumido * Precio del GAS
Por ejemplo, una transacción consume 670 unidades de GAS, el precio del GAS especificado por el usuario es de 100 Octa/unidad, por lo que el costo final es 670 * 100 = 67000 Octa = 0.00067 APT.
Si la ejecución de la transacción agota el GAS, el remitente será cobrado por la cantidad máxima de GAS, y todos los cambios en la transacción serán revertidos.
Construcción de la tabla del plan GAS
1. Configuración básica
El plan de GAS incluye algunos componentes que no están relacionados con una sola operación, como el tamaño de la transacción y la unidad máxima de GAS.
2. Escala de transacciones
La mayoría de las transacciones tienen un tamaño de nivel de kilobyte, pero la publicación del módulo MOVE puede alcanzar varios kilobytes. Actualmente, el límite de tamaño de la transacción se establece en 64KB, logrando un equilibrio entre el tamaño y la accesibilidad.
3. Unidad máxima de GAS
Definir la cantidad máxima de operaciones que se pueden ejecutar en una sola transacción, establecida en 1,000,000. Incluso con la actualización del marco máximo, solo se utiliza menos del 90%.
4. Evaluación de costos de ejecución
A través del marco de referencia y la herramienta de análisis Valgrind, estima el costo relativo de todas las instrucciones MOVE y funciones nativas. Considerando la robustez y seguridad del sistema, se obtiene el número final de instrucciones ejecutadas.
5. Costo de almacenamiento
Considerando el ancho de banda de los dispositivos de almacenamiento, la capacidad de IOPS y el costo de ocupación permanente, diseñe un plan de GAS de almacenamiento. La fórmula básica es:
Almacenamiento de tarifas GAS = tarifa del proyecto + ( tarifa por byte * número de bytes )
lectura, creación y escritura de operaciones
Se definen 6 parámetros de GAS que constituyen el costo total:
Costo unitario de GAS estable
El costo fijo por unidad de GAS ayuda a mantener estable el plan de GAS. El equipo representa la unidad de GAS con una precisión de aproximadamente 3 dígitos, como el costo de una transacción de transferencia de aproximadamente 700 unidades de GAS.
Participación de la comunidad
Como proyecto comunitario, los miembros pueden:
Ajuste de costos de GAS
El plan GAS se configura como almacenamiento en la cadena, y puede ser modificado a través de propuestas de gobernanza. Está diseñado para ser escalable, permitiendo actualizaciones. Los cambios complejos requieren actualizar el software de los nodos y obtener una amplia adopción, y finalmente ser aprobados mediante propuestas de gobernanza.
Trabajo del Futuro
Como el primer marco de GAS viable de MOVE, el trabajo futuro incluye:
El equipo está explorando el concepto de TTL de cada proyecto, eliminando los proyectos de estado no visitados cuando expire el TTL.