Conception du premier GAS en MOVE : Analyse du mode de facturation du GAS sur une certaine chaîne
La mesure du GAS est un concept fondamental de nombreuses blockchains, elle définit le montant des ressources de calcul et de stockage nécessaires pour exécuter et stocker des transactions sur la chaîne. Le plan GAS détermine le coût consommé par toutes les exécutions sur la chaîne, utilisé pour calculer le coût en GAS utilisé pendant l'exécution des transactions.
processus
Pour une exécution efficace, le processus off-chain est :
Définir les principes
Préparer le cadre d'évaluation, déterminer le prix de chaque exécution.
Établir un système de mesure de GAS et une algèbre de GAS pour MOVE
Importer le cadre GAS en amont
Rendre le cadre GAS conscient du stockage
Affiner davantage le plan GAS
principe
Les principes définis incluent :
Les coûts d'opération devraient être directement liés aux ressources disponibles sur le réseau et diminuer avec les améliorations technologiques.
GAS devrait être configuré par la gouvernance off-chain, pouvant être configuré sans couture.
Le GAS peut prévenir les attaques DoS et peut être ajusté rapidement en fonction de l'état du réseau.
Le prix du GAS reflète la vision de la croissance accélérée et de la généralisation de la blockchain
Encourager à faire de bons choix dans la conception, tels que privilégier la sécurité, la modularité, etc.
méthode de calcul GAS
L'utilisateur doit spécifier deux quantités lors de la soumission de la transaction :
Quantité maximale de GAS : le nombre maximum d'unités de GAS que l'utilisateur est prêt à payer
Prix unitaire du GAS : calculé en octal par unité de GAS, 1 octal = 0.00000001 APT
Des frais seront appliqués lors de l'exécution de la transaction :
Coûts fixes
Coût de l'exécution de l'instruction MOVE
Coût de la lecture des données depuis le stockage
Coût d'écriture des données dans le stockage
Frais de transaction final = Quantité totale de GAS consommée × Prix unitaire du GAS
Établissement du plan GAS
Configuration de base : y compris la taille de la transaction et l'unité maximale de GAS
Taille de la transaction : actuellement fixée à 64 Ko, équilibrant la taille et l'accessibilité.
Maximum d'unités GAS : définit le nombre maximum d'opérations pouvant être exécutées par transaction, fixé à 1 000 000
Coût d'exécution : évaluation du coût relatif des instructions MOVE et des fonctions natives par des tests de référence et des analyses.
Coût de stockage : tenir compte de la bande passante des dispositifs de stockage, des IOPS et des coûts d'occupation permanente.
Frais de stockage de GAS = Frais de projet + ( frais par octet × Nombre d'octets )
lire, créer et écrire des opérations
Opérations de lecture : les plus courantes, calibrées selon les IOPS et la capacité de bande passante du disque.
Création d'opération : coût le plus élevé, calibré en fonction de l'espace disque de référence
Opération d'écriture : Met à jour les éléments existants, des frais identiques à ceux de la création sont appliqués aux octets mis à jour.
Définit 6 paramètres de GAS constituant le coût total :
par_article_lu
par_octet_lu
per_item_create
per_byte_create
per_item_write
per_byte_write
Coût unitaire de GAS stable
Maintenir un coût unitaire de GAS fixe pour assurer la stabilité du programme GAS. Le coût des transactions de transfert est d'environ 700 unités de GAS.
participation communautaire
Les membres de la communauté peuvent :
Indiquer les points déraisonnables du plan GAS
Participer aux discussions communautaires
Voter sur les propositions de gouvernance pertinentes
ajustement des coûts GAS
Le plan GAS, en tant que stockage de configuration off-chain, peut être modifié par des propositions de gouvernance. Conçu pour être extensible, permettant des mises à niveau par propositions. Les changements complexes nécessitent une mise à jour du logiciel des nœuds et une large adoption.
orientation de travail future
Réduire les coûts d'exécution
Réaliser un calcul GAS multidimensionnel, permettant de spécifier séparément le budget d'exécution et de stockage.
Soulager l'état lourd, explorer le concept de TTL de chaque projet
C'est le premier cadre GAS fonctionnel pour le langage MOVE, jetant les bases pour les travaux futurs. L'équipe continuera à améliorer le compilateur et la machine virtuelle pour réduire les coûts d'exécution, explorera des solutions de tarification GAS plus granulaire et s'attaquera aux défis de la suppression des données off-chain.
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
9 J'aime
Récompense
9
5
Partager
Commentaire
0/400
digital_archaeologist
· 07-11 17:04
Ce gas de chaîne est vraiment trop élevé.
Voir l'originalRépondre0
VCsSuckMyLiquidity
· 07-11 06:44
Bien expliqué, on a l'impression que ça coûte encore cher.
Voir l'originalRépondre0
ChainDoctor
· 07-11 06:38
Ce gas est si cher que j'envisage de quitter.
Voir l'originalRépondre0
AltcoinAnalyst
· 07-11 06:34
D'après les données, il y a encore trop de pièges de consommation de gas.
Voir l'originalRépondre0
RumbleValidator
· 07-11 06:24
Tu penses que c'est la meilleure mesure de gas ? Les nœuds de validation expérimentés ne le pensent pas.
Détails sur le mécanisme de facturation GAS du langage MOVE : méthodes de calcul et développement futur
Conception du premier GAS en MOVE : Analyse du mode de facturation du GAS sur une certaine chaîne
La mesure du GAS est un concept fondamental de nombreuses blockchains, elle définit le montant des ressources de calcul et de stockage nécessaires pour exécuter et stocker des transactions sur la chaîne. Le plan GAS détermine le coût consommé par toutes les exécutions sur la chaîne, utilisé pour calculer le coût en GAS utilisé pendant l'exécution des transactions.
processus
Pour une exécution efficace, le processus off-chain est :
principe
Les principes définis incluent :
méthode de calcul GAS
L'utilisateur doit spécifier deux quantités lors de la soumission de la transaction :
Des frais seront appliqués lors de l'exécution de la transaction :
Frais de transaction final = Quantité totale de GAS consommée × Prix unitaire du GAS
Établissement du plan GAS
Configuration de base : y compris la taille de la transaction et l'unité maximale de GAS
Taille de la transaction : actuellement fixée à 64 Ko, équilibrant la taille et l'accessibilité.
Maximum d'unités GAS : définit le nombre maximum d'opérations pouvant être exécutées par transaction, fixé à 1 000 000
Coût d'exécution : évaluation du coût relatif des instructions MOVE et des fonctions natives par des tests de référence et des analyses.
Coût de stockage : tenir compte de la bande passante des dispositifs de stockage, des IOPS et des coûts d'occupation permanente.
Frais de stockage de GAS = Frais de projet + ( frais par octet × Nombre d'octets )
lire, créer et écrire des opérations
Définit 6 paramètres de GAS constituant le coût total :
Coût unitaire de GAS stable
Maintenir un coût unitaire de GAS fixe pour assurer la stabilité du programme GAS. Le coût des transactions de transfert est d'environ 700 unités de GAS.
participation communautaire
Les membres de la communauté peuvent :
ajustement des coûts GAS
Le plan GAS, en tant que stockage de configuration off-chain, peut être modifié par des propositions de gouvernance. Conçu pour être extensible, permettant des mises à niveau par propositions. Les changements complexes nécessitent une mise à jour du logiciel des nœuds et une large adoption.
orientation de travail future
C'est le premier cadre GAS fonctionnel pour le langage MOVE, jetant les bases pour les travaux futurs. L'équipe continuera à améliorer le compilateur et la machine virtuelle pour réduire les coûts d'exécution, explorera des solutions de tarification GAS plus granulaire et s'attaquera aux défis de la suppression des données off-chain.