Innovación en el lenguaje MOVE: análisis del método de cálculo del consumo de Gas en la cadena Aptos

robot
Generación de resúmenes en curso

Diseño de Gas del lenguaje MOVE: Método de cálculo del consumo de Gas en la cadena Aptos

La medición de Gas es un concepto fundamental de Aptos y muchas otras cadenas de bloques, que define la cantidad de recursos computacionales y de almacenamiento necesarios para ejecutar y almacenar transacciones en la cadena. El plan de Gas determina el costo de todos los consumos de ejecución en la cadena, utilizado para calcular el gasto de Gas durante la ejecución de transacciones.

Proceso

Para una ejecución efectiva, los procesos en la cadena de Aptos incluyen:

  1. Definición de principios
  2. Preparar el 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 segura para MOVE
  4. Importar el marco de Gas upstream en Aptos
  5. Hacer que el marco Gas tenga conciencia de almacenamiento
  6. Refinar aún más el plan de Gas

Principios

Los principios definidos incluyen:

  1. El costo de operación debe estar directamente relacionado con los recursos disponibles en la red. Después de las mejoras tecnológicas y de procesos, el costo del Gas debería disminuir.
  2. El gas debe ser configurado por la gobernanza on-chain y puede ser configurado sin problemas.
  3. Gas puede prevenir ataques DoS a conjuntos de recursos fijos de la red, y puede ser necesario ajustar rápidamente a través de propuestas de gobernanza según las condiciones de la red.
  4. El precio del gas de Aptos refleja el deseo de acelerar el crecimiento y mantener la popularidad de la blockchain.
  5. Fomentar la realización de elecciones excelentes en el diseño, como priorizar la seguridad, la modularidad, las afirmaciones, etc.

Cálculo de Gas

Cuando el usuario envía una transacción, necesita especificar dos cantidades:

  • Cantidad máxima de Gas: medida en unidades de Gas, el número máximo de unidades de Gas que el usuario está dispuesto a gastar para ejecutar la transacción.
  • Precio del Gas: se calcula en octal por unidad de Gas, 1 octal = 0.00000001 APT.

Durante el proceso de ejecución, se cobrará una tarifa por la transacción:

  1. Costos fijos: base fija más los costos adicionales de transacciones grandes
  2. Costo de ejecución: utilizado para ejecutar instrucciones MOVE
  3. Costo de lectura: utilizado para leer datos del almacenamiento persistente
  4. Costo de escritura: utilizado para escribir datos en el almacenamiento persistente

La tarifa de transacción final se puede calcular multiplicando la cantidad total de Gas consumido por el precio del Gas por unidad. 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, la tarifa de transacción final será 670 * 100 = 67000 Octa = 0.00067 APT.

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

Establecimiento del plan de Gas

configuración básica

El plan de Gas tiene varios componentes que no están relacionados con los detalles de una operación individual, incluyendo el tamaño de la transacción y la unidad máxima de Gas.

escala de transacciones

La mayoría de los tamaños de transacción pueden estar en el rango de kilobytes. La publicación del módulo MOVE puede tener varios miles de bytes, mientras que el marco Aptos tiene aproximadamente 100 KB. El tamaño del módulo de usuario generalmente varía entre 4 KB y 40 KB. El tamaño de la transacción se estableció inicialmente en 32 KB y luego se ajustó a 64 KB según las reacciones de la comunidad.

Transacciones a gran escala pueden aumentar los costos de ancho de banda de la red, lo que podría tener un impacto negativo en el rendimiento. Se alentará a la memoria a ignorar transacciones de mayor tamaño, por lo que es necesario encontrar un equilibrio entre el tamaño máximo de transacción y la accesibilidad.

unidad máxima de Gas

La unidad máxima de Gas definida en el plan de Gas establece cuántas operaciones puede ejecutar una transacción como máximo. Esto es diferente de la cantidad máxima de Gas que el usuario especifica en la transacción. Establecer un límite demasiado alto puede tener un impacto negativo en el rendimiento de la blockchain. Incluso con la actualización máxima del marco, no se alcanzará el 90% de la unidad máxima de Gas del plan de Gas ( configurada en 1,000,000).

ejecutar

Para evaluar los costos de ejecución, se construyó un marco de referencia y se utilizó Valgrind para analizar Move VM. La salida es un conjunto de código fuente comentado que muestra la cantidad de instrucciones de máquina generadas por cada línea de código.

Con base en los resultados del análisis, se estimaron los costos relativos de todas las instrucciones MOVE y funciones nativas. Se notó que existían algunos problemas con las funciones en línea, que se resolvieron sumando los números.

Considerando ejemplos de codificación que mejoren la robustez y seguridad del sistema, se obtiene la cantidad final de instrucciones de máquina ejecutadas. Este número se pondera con el almacenamiento y la unidad máxima de Gas, determinando el valor actual en el plan de Gas.

almacenamiento

Cuando un nodo de Aptos accede a los ítems de estado del libro mayor o datos almacenados en el almacenamiento persistente, envía una solicitud de lectura o escritura al dispositivo de almacenamiento. El número total de accesos a datos por segundo depende del ancho de banda y la capacidad de IOPS del dispositivo de almacenamiento. El acceso a datos es la escasez instantánea que los usuarios compiten en el mercado de tarifas bajo una carga del sistema. El costo de ocupación del disco para escribir datos es permanente en la cadena.

Acceder y almacenar cualquier ítem de estado genera costos relacionados con la estructura de datos ( árbol de Merkle de medusa ) que verifica el estado completo de la cadena de bloques. Este costo está relacionado con la cardinalidad de los diferentes ítems de estado. También hay un costo que es proporcional al tamaño de cada ítem.

Costo de almacenamiento de Gas = item_fee + (byte_fee * bytes)

leer, crear y escribir

El acceso a los elementos de estado se divide en tres tipos: lectura, creación o escritura. El acceso se cobra según el costo del proyecto y el costo por byte.

Las operaciones de lectura son las más comunes y solo están limitadas por la escasez momentánea de recursos. Los costos de lectura se calibran según el IOPS del disco y la capacidad de ancho de banda de las especificaciones de hardware de referencia.

Crear implica agregar nuevos elementos en el almacenamiento de estado, aumentando la estructura de datos de autenticación, con un costo máximo. La tarifa de creación se calibra según el espacio en disco de referencia que tiene la red.

Las operaciones de escritura actualizan los elementos existentes en el almacenamiento de estado, sin generar costos adicionales en la estructura de datos de autenticación. Se cobra la misma tarifa por los bytes en los elementos actualizados que al crear.

Los costos relacionados con el almacenamiento se evalúan en función de cada transacción: incluso si se lee/escribe el mismo recurso varias veces, solo se paga una tarifa.

Con base en lo anterior, se definen 6 parámetros de Gas:

  • per_item_read: según la calibración de IOPs
  • per_byte_read: calibrar según el ancho de banda real
  • per_item_create: Calibrar según el total del proyecto objetivo
  • per_byte_create: ajustar según el tamaño total objetivo
  • per_item_write: igual que per_item_read
  • per_byte_write: igual que per_byte_create

Costo unitario de Gas estable

Cada operación y transacción en sí misma requiere un costo unitario fijo en relación con los costos de almacenamiento y ejecución. El costo unitario fijo de Gas ayuda a mantener el plan de Gas constante, desvinculándolo del valor de mercado libre de APT. El equipo de Aptos representa el costo de Gas con una precisión de aproximadamente 3 cifras. El costo de las transacciones de transferencia es de aproximadamente 700 unidades de Gas.

Participación de la comunidad

Los miembros de la comunidad Aptos pueden:

  1. Identificar las irregularidades del plan de Gas
  2. Expresar preocupaciones sobre el plan de Gas, participar en discusiones de la comunidad
  3. Votar sobre las propuestas de gobernanza relacionadas con Gas en Aptos

Ajuste de costos de Gas

El plan Gas se configura como almacenamiento en cadena y puede ser modificado a través de propuestas de gobernanza de Aptos, además de permitir la adición sin problemas de nuevas instrucciones o funciones nativas. El plan Gas está diseñado para ser escalable, permitiendo actualizaciones a través de propuestas de gobernanza. A medida que Aptos y la comunidad mejoran Move VM e incorporan la retroalimentación de los usuarios, 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 distinguirlo con diferentes marcas características de Gas. Se debe publicar el software del nodo y adoptarlo en gran medida, y finalmente publicar y aprobar la propuesta de gobernanza para usar la nueva versión de Gas.

Trabajo Futuro

Como el primer marco de Gas viable de MOVE, las direcciones de trabajo futuras incluyen:

  1. Reducir los costos de ejecución: mejorar la eficiencia del compilador y de la máquina virtual.
  2. Cálculo de Gas multidimensional: permite a los usuarios especificar un presupuesto separado para la ejecución y el almacenamiento.
  3. Aliviar el estado de hinchazón: explorar el concepto de TTL de cada proyecto, eliminando los proyectos de estado no visitados al expirar el TTL.
MOVE-7.38%
APT-6.68%
GAS-7.04%
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
  • 10
  • Republicar
  • Compartir
Comentar
0/400
FlashLoanKingvip
· 07-15 09:55
El arbitraje off-chain también es bueno.
Ver originalesResponder0
FloorPriceWatchervip
· 07-15 04:26
el gas aún no es tan bueno como subir hasta el techo
Ver originalesResponder0
SandwichDetectorvip
· 07-14 16:16
Es un poco complicado, lo revisaré de nuevo el próximo mes.
Ver originalesResponder0
DancingCandlesvip
· 07-12 16:24
Realmente no siento que haya algo especial en move~
Ver originalesResponder0
BlockDetectivevip
· 07-12 16:22
move es el rey de la popularidad
Ver originalesResponder0
VitaliksTwinvip
· 07-12 16:21
move卷麻了
Responder0
CryptoComedianvip
· 07-12 16:16
Otra vez va a haber una gran pérdida, ¿verdad que quieren jugar con las tarifas de gas?
Ver originalesResponder0
CryptoPunstervip
· 07-12 16:07
Otra nueva excusa para ser engañados
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)