Mecanismo GAS pionero del lenguaje MOVE: Explicación detallada del método de cálculo GAS y principios de diseño de una cadena pública.

robot
Generación de resúmenes en curso

Diseño del primer GAS del lenguaje MOVE: Método de cálculo del gasto de GAS de una cadena pública

Una cadena de bloques recientemente anunció su plan de GAS. Como el primer diseño de GAS en el lenguaje MOVE, esto se considera un intento "arriesgado". El plan describe los principios, procesos, métodos de cálculo y el mecanismo de ajuste futuro para establecer el GAS.

La medición de GAS es un concepto básico en muchas blockchains, utilizado para cuantificar los recursos de computación y almacenamiento requeridos para ejecutar y almacenar transacciones en la cadena. El plan de GAS determina el costo de todas las operaciones ejecutadas en la cadena, utilizado para calcular el gasto de GAS durante la ejecución de transacciones.

Proceso de diseño

El proceso de diseño de GAS de esta cadena pública incluye:

  1. Definir principios
  2. Preparar un marco de evaluación, determinar el precio de cada ejecución
  3. Establecer un sistema de medición de GAS y un álgebra de GAS seguro para MOVE
  4. Importar el marco de GAS de upstream
  5. Hacer que el marco GAS sea consciente del almacenamiento
  6. Refinar aún más el plan de GAS

Principios de diseño

  1. El costo de operación debe estar directamente relacionado con los recursos disponibles en la red y disminuir con los avances tecnológicos.
  2. GAS es configurado por gobernanza en la cadena, se puede configurar sin problemas.
  3. GAS puede prevenir ataques DoS y puede ajustarse rápidamente según la situación de la red.
  4. El precio del GAS refleja la visión de acelerar el crecimiento y mantener la accesibilidad de la blockchain.
  5. Fomentar la toma de buenas decisiones en el diseño, como priorizar la seguridad, la modularidad, etc.

Método de cálculo de GAS

El usuario debe especificar dos cantidades al enviar una transacción:

  • Cantidad máxima de GAS: el número máximo de unidades de GAS que el usuario está dispuesto a gastar para ejecutar una transacción
  • Precio del GAS: se calcula en octal por unidad de GAS, 1 octal = 0.00000001 token nativo

Durante el proceso de ejecución de la transacción se cobrará:

  1. Costos fijos
  2. Costo de ejecución ( ejecutar la instrucción MOVE )
  3. Leer el costo ( desde el almacenamiento persistente leer datos )
  4. Escribir el costo ( para guardar datos en almacenamiento persistente )

Costo total de la transacción = Cantidad total de GAS consumido × Precio por GAS

Por ejemplo, si una transacción consume 670 unidades de GAS, y el precio del GAS especificado por el usuario es de 100 Octa por unidad, entonces la tarifa final de la transacción es 670 × 100 = 67000 Octa = 0.00067 tokens nativos.

Si se agota el GAS durante la ejecución de la transacción, el remitente será cobrado por la cantidad máxima de GAS, y todos los cambios realizados por el intercambio serán revertidos.

GAS计划表

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 el número máximo de unidades de GAS.

escala de transacciones

La mayoría de las transacciones tienen un tamaño de kilobyte, pero el módulo Move puede alcanzar varios kilobytes. Inicialmente, el tamaño de la transacción se estableció en 32KB, y luego se ajustó a 64KB según los comentarios de la comunidad.

Transacciones a gran escala aumentarán los costos de ancho de banda de la red, lo que podría afectar el rendimiento. El grupo de memoria tenderá a ignorar transacciones de mayor tamaño, por lo que es necesario encontrar un equilibrio entre la máxima escala y la accesibilidad.

unidad máxima de GAS

La unidad máxima de GAS definida en el plan de GAS establece la cantidad máxima de operaciones que se pueden ejecutar en una sola transacción. Establecerla demasiado alta puede tener un impacto negativo en el rendimiento de la blockchain. Según las pruebas, incluso con una actualización de marco a gran escala, no se alcanzó el 90% de la unidad máxima de GAS ( establecida en 1,000,000).

evaluación de costos de ejecución

A través de la construcción de un marco de referencia y el uso de herramientas de análisis, el equipo estimó el costo relativo de todas las instrucciones MOVE y funciones nativas. Teniendo en cuenta la robustez y seguridad del sistema, se determinó la cantidad de instrucciones de máquina a ejecutar y se realizó un equilibrio con el almacenamiento y la unidad máxima de GAS, obteniendo así el valor en el plan de GAS actual.

costo de almacenamiento

El costo del almacenamiento de GAS considera la escasez temporal del acceso a datos y el costo permanente del espacio en disco. La fórmula de cálculo de costos es:

El almacenamiento de la tarifa de GAS = tarifa del proyecto + ( tarifa por byte × número de bytes )

El acceso a los elementos de estado se divide en tres tipos: lectura, creación y escritura, cada uno con diferentes tarifas. La tarifa de lectura se basa en la calibración de IOPS de disco y capacidad de ancho de banda, la tarifa de creación se basa en la calibración del espacio en disco de referencia, y la tarifa de escritura se sitúa entre ambas.

Es importante tener en cuenta que los costos relacionados con el almacenamiento se evalúan por cada transacción, incluso si se lee/escribe el mismo recurso varias veces, solo se cobrará una vez.

Costo unitario de GAS estable

Para mantener la estabilidad del plan GAS y desvincularlo del valor de mercado del token nativo, cada operación y transacción en sí misma requiere un costo unitario relativamente fijo. El equipo representa la unidad de GAS con una precisión de aproximadamente 3 dígitos, por ejemplo, el costo de una transacción de transferencia es de aproximadamente 700 unidades de GAS.

Participación de la comunidad

Como proyecto comunitario, los usuarios pueden:

  1. Señalar las inconsistencias en el plan de GAS
  2. Participar en discusiones de la comunidad, expresar preocupaciones sobre el plan GAS
  3. Votar sobre las propuestas de gobernanza relacionadas

Mecanismo de ajuste de costos de GAS

El plan GAS, como almacenamiento de configuración en la cadena, puede ser modificado a través de propuestas de gobernanza. Está diseñado para ser escalable, permitiendo actualizaciones a través de propuestas de gobernanza. Con los avances tecnológicos y los comentarios de la comunidad, los parámetros de GAS pueden ajustarse con el tiempo.

Los cambios complejos en la fórmula de GAS requieren actualizar el software del nodo y aprobar la nueva versión a través de una propuesta de gobernanza.

Dirección futura del trabajo

  1. Reducir los costos de ejecución: mejorando la eficiencia del compilador y de la máquina virtual
  2. Cálculo de GAS multidimensional: permite a los usuarios especificar presupuestos separados para la ejecución y el almacenamiento
  3. Aliviar la expansión del estado: explorar el concepto TTL de cada proyecto, eliminar los elementos de estado no visitados cuando expire el TTL
GAS-3.48%
MOVE3.33%
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
  • 3
  • Compartir
Comentar
0/400
DevChivevip
· 07-20 05:13
¿Es necesario aumentar la apuesta otra vez, abuelo?
Ver originalesResponder0
MevTearsvip
· 07-20 05:07
No es nada nuevo, tiene un sabor a trampa del mundo Cripto.
Ver originalesResponder0
LidoStakeAddictvip
· 07-20 04:57
¿Nuevas formas de costos otra vez??!! Solo hay que ver quién optimiza primero el gas para quemar.
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)