Move.

Publication

Partagez vos connaissances.

Mister_CocaCola.
Mar 28, 2025
Discussion

Différence de performance entre les assertions modulo et les assertions de comparaison ?

Je suis curieux de savoir si l'utilisation assert!(arg3 % arg0 == 0, 6);est plus économe en gaz que assert!(arg3 < arg0, 6);? Je suis tombé sur ça dans Deepbook et je m'interrogeais sur le choix. Existe-t-il une différence de performance significative entre l'utilisation de modulo et les assertions de comparaison en termes de consommation de gaz ?

  • Move CLI
  • Move
1
1
Partager
Commentaires
.

Réponses

1
dudley_smith.
Mar 28 2025, 20:11

Cette dernière (assert!(arg3 < arg0, 6);) sera légèrement moins chère en termes de gaz car il s'agit d'une seule instruction (Cmp) au lieu de trois (Mod, LDConst<0>, Eq). Cependant, il n'y a généralement pas lieu de s'inquiéter en raison de la présence de godets d'essence. Les instructions arithmétiques ont tendance à être beaucoup moins chères que les autres instructions. De plus, le modèle de gaz Sui facture différemment uniquement pour les programmes dont les temps d'exécution des horloges murales sont constamment différents, et les délais d'exécution arithmétiques peuvent naturellement varier considérablement. Vous trouverez plus de détails dans la documentation de Sui tokenomics : https://docs.sui.io/concepts/tokenomics/gas-in-sui#computation.

1
Meilleure réponse
Commentaires
.

Connaissez-vous la réponse ?

Veuillez vous connecter et la partager.

Move is an executable bytecode language used to implement custom transactions and smart contracts.

148Publications231Réponses
Sui.X.Peera.

Gagne ta part de 1000 Sui

Gagne des points de réputation et obtiens des récompenses pour avoir aidé la communauté Sui à se développer.

Nous utilisons des cookies pour vous assurer la meilleure expérience sur notre site Web.
Plus d'infos