Vitalik Buterin propose un moyen d'augmenter l'efficacité de l'EVM

Vitalik Buterin propose un moyen d'augmenter l'efficacité de l'EVM

Vitalik_Buterin Vitalik Buterin

La spécialisation et la parallélisation des calculs contribuent à accroître l'efficacité et la sécurité, a écrit le cofondateur d'Ethereum, Vitalik Buterin, dans un nouvel essai.

Selon le cryptographe, cela ouvre des possibilités de décentralisation accrue et de vérification plus facile du code.

Selon Buterin, tout calcul gourmand en ressources peut être divisé en deux parties :

  1. Une quantité relativement faible de logique métier complexe mais peu coûteuse.
  2. Beaucoup de « travail coûteux » intense mais très structuré.

Dans le premier cas, il est préférable de traiter en utilisant une architecture qui peut avoir une efficacité moindre mais devrait avoir une généralité très élevée, dans le second en utilisant une architecture aux propriétés opposées.

Dans l'EVM, ces deux formes d'exécution sont traitées différemment. La logique métier complexe est écrite dans un langage de niveau supérieur comme Solidity, qui est compilé dans la machine virtuelle.

Le « travail coûteux » est déclenché par les opcodes EVM (SLOAD, etc.), mais plus de 99 % du calcul réel est effectué dans des modules spécialisés directement dans le code client (ou même dans les bibliothèques).

Buterin explique que l'architecture la plus courante est celle qu'il appelle « glue and coprocessor » (colle et coprocesseur). Elle est composée d'un composant central, la « glue », à la généralité élevée mais à l'efficacité faible, qui est responsable du transfert des données entre un ou plusieurs composants du coprocesseur. Ce dernier a une généralité faible mais une efficacité élevée.

1-11881-1188
Données : vitalik.eth.limo.

Le cofondateur d'Ethereum a expliqué que le diagramme ci-dessus est simplifié car dans la pratique, par exemple dans l'architecture ZKP, il existe plus de deux niveaux sur la courbe de compromis efficacité/généralité. Mais, pour simplifier, il suffit de penser à deux niveaux. Il existe des parallèles à cela dans de nombreux domaines de l'informatique.

2-8812-881
Données : vitalik.eth.limo.

Selon Buterin, l'informatique est devenue si rapide que le coût d'exécution de la logique métier est devenu insignifiant. Cela a créé les conditions préalables à l'optimisation de la machine virtuelle dans laquelle la logique métier s'exécute à des fins autres que l'efficacité. commodité pour les développeurs, familiarité, sécurité, etc.

Dans le même temps, les modules « coprocesseurs » spécialisés peuvent continuer à être conçus dans un souci d'efficacité et tirer leurs propriétés de sécurité et de convivialité pour les développeurs de l'« interface » relativement simple qu'ils ont avec la « colle », a-t-il ajouté.

Il devient de plus en plus évident quelles opérations sont les plus importantes et les plus coûteuses. Cela est particulièrement vrai dans le domaine de la cryptographie, mais cela est également vrai dans le domaine de l'intelligence artificielle et dans d'autres domaines.

Poursuivant le récit, Buterin conclut que la « colle » devrait être optimisée pour améliorer ses propriétés, tout comme les coprocesseurs.

Le cofondateur d’Ethereum est convaincu que l’EVM n’a pas besoin d’être efficace, il suffit qu’elle soit familière. Le calcul dans une VM inefficace peut être amélioré en ajoutant les bons coprocesseurs (« précompilateurs »).

Il dit que les équipes d’optimisation EVM constatent parfois que le manque de parallélisation n’est souvent pas le principal obstacle à l’évolutivité.

Buterin estime que les meilleures façons d’améliorer la machine virtuelle sont les suivantes :

  • ajout de précompilations optimales ou d’opcodes spécialisés ;
  • améliorer l'agencement du stockage.

En conclusion, le cofondateur d’Ethereum a noté que les tendances répertoriées permettent :

  1. Augmentez l'efficacité de la spécialisation côté client, ce qui améliore la capacité à effectuer des calculs sensibles et gourmands en performances localement sur le matériel de l'utilisateur.
  1. Crée de nombreuses opportunités pour la recherche d'efficacité sans compromettre d'autres valeurs, notamment la sécurité, l'ouverture et la simplicité. Cela profite à la cryptographie, car elle représente les « calculs structurés coûteux » qui sont accélérés par cette tendance. Cette dernière crée les conditions préalables à une sécurité accrue et à une plus grande concentration sur l'optimisation des précompilations et d'autres fonctions qui « vivent » avec la machine virtuelle.
  1. Cela ouvre la possibilité à des acteurs plus petits et plus nouveaux de participer. Si l'informatique devient moins monolithique et plus modulaire, cela abaisse considérablement la barrière à l'entrée. Même le fait d'avoir un ASIC pour un type de calcul peut être un succès. La même chose se produira dans les domaines de l'optimisation ZKP et EVM. L'écriture de code avec une efficacité proche de la limite devient beaucoup plus facile et plus accessible. Cela facilite l'audit et la vérification formelle.

Rappelons qu'en août, les développeurs du projet Starknet ont présenté un mécanisme permettant l'exécution simultanée de plusieurs transactions dans une solution de deuxième niveau.

Auparavant, ForkLog complétait les cartes pédagogiques avec du matériel sur le thème de la parallélisation et son impact sur la mise à l'échelle de la blockchain.

Suivez ForkLog sur les réseaux sociaux

Vous avez trouvé une erreur dans le texte ? Sélectionnez-la et appuyez sur CTRL+ENTRÉE

Newsletters ForkLog : restez au courant de l'actualité du secteur du bitcoin !



Voir l’article original en russe