Diseño de GAS del primer MOVE: esquema de cálculo de gastos de GAS on-chain
La versión anterior del lenguaje MOVE estaba originalmente planeada para funcionar sin GAS, por lo que no se preparó para el plan de GAS. El plan de GAS recientemente anunciado por una plataforma de blockchain es el primer diseño de GAS para el lenguaje MOVE, que ha sido denominado oficialmente como "una aventura".
El plan de GAS establece los principios, procesos, métodos de cálculo, ajustes posteriores y la apertura a las sugerencias de la comunidad sobre la formulación del GAS. La medición de GAS es un concepto fundamental en esta cadena de bloques y muchas otras, que define la cantidad de recursos de cómputo y almacenamiento necesarios para ejecutar y almacenar transacciones en la cadena. El plan de GAS determina el costo consumido por todas las ejecuciones en la cadena, utilizado para calcular el gasto de GAS durante la ejecución de transacciones.
proceso
Para llevar a cabo de manera efectiva, el proceso en la cadena incluye:
Definición de principios
Preparar un marco de evaluación, determinar el precio de cada ejecución
Establecer un sistema de medición de GAS y un álgebra de GAS seguro para MOVE.
Importar el marco de GAS de upstream
Hacer que el marco GAS tenga conciencia de almacenamiento
Refinar aún más el plan de GAS
principio
Los principios definidos incluyen:
El costo de operación debe estar directamente relacionado con los recursos disponibles en la red y disminuir con los avances tecnológicos.
El Gas debe ser configurado por la gobernanza on-chain, y puede ser configurado sin problemas.
Gas puede prevenir ataques DoS y se puede 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 cadena de bloques.
Fomentar la toma de buenas decisiones en el diseño, como priorizar la seguridad, la modularidad, etc.
calcular GAS
El usuario debe especificar dos cantidades al enviar la transacción:
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: calculado en octal por unidad de GAS, 1 octal = 0.00000001 APT
Durante el proceso de ejecución, se cobrará una transacción:
Costos fijos: base fija más los costos adicionales de grandes transacciones
Costo de ejecución: utilizado para ejecutar instrucciones MOVE
Costo de lectura: utilizado para leer datos del almacenamiento persistente
Costo de escritura: utilizado para escribir datos en almacenamiento persistente
La tarifa de transacción final = Cantidad total de GAS consumido × Precio por unidad de GAS. Por ejemplo, si la 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 es 670 × 100 = 67000 Octa = 0.00067 APT.
Si se agota el gas durante la ejecución de la transacción, se cobrará al remitente según la cantidad máxima de gas, y todos los cambios realizados por el intercambio serán revertidos.
Establecer el plan de GAS
Configuración básica
El plan GAS incluye 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.
Escala de transacciones
La mayoría de las transacciones son del tamaño de kilobytes, el módulo Move puede alcanzar varios kilobytes. Inicialmente se estableció en 32KB, luego se ajustó a 64KB según las necesidades de la comunidad.
Máximo de unidades de GAS
Definir la cantidad máxima de operaciones que se pueden ejecutar en una transacción, estableciéndola en 1,000,000, incluso con la actualización máxima del marco, no será superior al 90%.
Ejecutar
A través del marco de referencia y el análisis de Valgrind del MOVE VM, se estima el costo relativo de las instrucciones MOVE y las funciones nativas.
Almacenamiento
Considerar el ancho de banda del dispositivo de almacenamiento, la capacidad de IOPS y el costo de ocupación del disco permanente para diseñar un plan de GAS de almacenamiento.
leer, crear y escribir
El acceso a los elementos de estado se divide en tres tipos: lectura, creación y escritura, cada uno con un diferente método de cálculo de tarifas.
costo unitario de GAS estable
El costo unitario fijo del gas ayuda a mantener estable el plan de gas, desvinculándolo del valor de mercado de APT.
participación de la comunidad
Los miembros de la comunidad pueden:
Señalar los aspectos irracionales del plan GAS
Participar en discusiones de la comunidad
Votar sobre propuestas de gobernanza relacionadas con GAS
ajuste de costes de GAS
El plan GAS se puede modificar a través de propuestas de gobernanza, diseñado para ser escalable, permitiendo ajustes de parámetros a lo largo del tiempo.
trabajo futuro
Reducir los costos de ejecución
Implementar cálculos multidimensionales de GAS
Aliviar el problema del estado hinchado
Este es el primer marco de GAS viable de MOVE, que sienta las bases para trabajos futuros, incluyendo la mejora de la eficiencia del compilador y la máquina virtual, la implementación de una fijación de precios de GAS más granular, y la exploración de soluciones para la falta de motivación para eliminar datos on-chain.
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.
16 me gusta
Recompensa
16
6
Compartir
Comentar
0/400
DataPickledFish
· 07-11 09:02
¿Por qué otra vez estas cosas tan llamativas?
Ver originalesResponder0
GateUser-40edb63b
· 07-10 14:08
La forma de cálculo es muy rica.
Ver originalesResponder0
GasOptimizer
· 07-09 07:42
La tarifa es realmente científica.
Ver originalesResponder0
OnChainArchaeologist
· 07-09 07:24
Hay una nueva estructura de tarifas, es un poco interesante.
Ver originalesResponder0
Rugman_Walking
· 07-09 07:19
¿Quién es responsable de establecer el precio del gas?
Ver originalesResponder0
LiquidityHunter
· 07-09 07:18
Diseño lo suficientemente robusto, el cálculo de gas es preciso hasta el byte.
Diseño de GAS pionero en el lenguaje MOVE: análisis del esquema de cálculo del costo de la transacción en cadena.
Diseño de GAS del primer MOVE: esquema de cálculo de gastos de GAS on-chain
La versión anterior del lenguaje MOVE estaba originalmente planeada para funcionar sin GAS, por lo que no se preparó para el plan de GAS. El plan de GAS recientemente anunciado por una plataforma de blockchain es el primer diseño de GAS para el lenguaje MOVE, que ha sido denominado oficialmente como "una aventura".
El plan de GAS establece los principios, procesos, métodos de cálculo, ajustes posteriores y la apertura a las sugerencias de la comunidad sobre la formulación del GAS. La medición de GAS es un concepto fundamental en esta cadena de bloques y muchas otras, que define la cantidad de recursos de cómputo y almacenamiento necesarios para ejecutar y almacenar transacciones en la cadena. El plan de GAS determina el costo consumido por todas las ejecuciones en la cadena, utilizado para calcular el gasto de GAS durante la ejecución de transacciones.
proceso
Para llevar a cabo de manera efectiva, el proceso en la cadena incluye:
principio
Los principios definidos incluyen:
calcular GAS
El usuario debe especificar dos cantidades al enviar la transacción:
Durante el proceso de ejecución, se cobrará una transacción:
La tarifa de transacción final = Cantidad total de GAS consumido × Precio por unidad de GAS. Por ejemplo, si la 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 es 670 × 100 = 67000 Octa = 0.00067 APT.
Si se agota el gas durante la ejecución de la transacción, se cobrará al remitente según la cantidad máxima de gas, y todos los cambios realizados por el intercambio serán revertidos.
Establecer el plan de GAS
Configuración básica El plan GAS incluye 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.
Escala de transacciones La mayoría de las transacciones son del tamaño de kilobytes, el módulo Move puede alcanzar varios kilobytes. Inicialmente se estableció en 32KB, luego se ajustó a 64KB según las necesidades de la comunidad.
Máximo de unidades de GAS Definir la cantidad máxima de operaciones que se pueden ejecutar en una transacción, estableciéndola en 1,000,000, incluso con la actualización máxima del marco, no será superior al 90%.
Ejecutar A través del marco de referencia y el análisis de Valgrind del MOVE VM, se estima el costo relativo de las instrucciones MOVE y las funciones nativas.
Almacenamiento Considerar el ancho de banda del dispositivo de almacenamiento, la capacidad de IOPS y el costo de ocupación del disco permanente para diseñar un plan de GAS de almacenamiento.
leer, crear y escribir
El acceso a los elementos de estado se divide en tres tipos: lectura, creación y escritura, cada uno con un diferente método de cálculo de tarifas.
costo unitario de GAS estable
El costo unitario fijo del gas ayuda a mantener estable el plan de gas, desvinculándolo del valor de mercado de APT.
participación de la comunidad
Los miembros de la comunidad pueden:
ajuste de costes de GAS
El plan GAS se puede modificar a través de propuestas de gobernanza, diseñado para ser escalable, permitiendo ajustes de parámetros a lo largo del tiempo.
trabajo futuro
Este es el primer marco de GAS viable de MOVE, que sienta las bases para trabajos futuros, incluyendo la mejora de la eficiencia del compilador y la máquina virtual, la implementación de una fijación de precios de GAS más granular, y la exploración de soluciones para la falta de motivación para eliminar datos on-chain.