Révolution GPU : comment nous utilisons les zk-SNARKs pour rendre Ethereum 1000 fois plus rapide

Cet article analysera une percée technologique clé : grâce à la combinaison de GPU haute performance et de zk-SNARKs, nous sommes en train d'améliorer l'efficacité opérationnelle d'Ethereum de centaines, voire de milliers de fois. Cela résout non seulement le goulot d'étranglement de performance qui existe depuis longtemps dans la Blockchain, mais offre également une voie technologique viable pour l'infrastructure Web3 de demain.

Si vous vous êtes déjà demandé : pourquoi Ethereum fonctionne lentement et les frais de transaction restent élevés ? Ou peut-être êtes-vous préoccupé par les facteurs clés qui motivent la prochaine génération de technologies Blockchain ? Alors, cet article vous fournira des réponses claires.

Essence de la question : Pourquoi la Blockchain ressemble-t-elle à une autoroute embouteillée ?

On peut imaginer Ethereum comme une autoroute. Aujourd'hui, tous les utilisateurs et applications se disputent les ressources limitées des voies, ce qui entraîne une congestion du réseau, un traitement des transactions lent et des frais de Gas élevés.

Les approches traditionnelles se résument essentiellement à deux types :

  • Réparer plus de voies —— c'est-à-dire construire un réseau Layer 2 (par exemple Rollups)
  • Réduire la taille du véhicule, c’est-à-dire compresser les données de transaction

Mais que se passerait-il s’il y avait un moyen de « téléporter » le véhicule au lieu de continuer à courir dans la voie ? Il s’agit de la révolution paradigmatique provoquée par les preuves à divulgation nulle de connaissance (ZKP). L’idée centrale est que l’authenticité d’une transaction peut être vérifiée en générant une preuve mathématique sans qu’il soit nécessaire de transmettre toutes les données de la transaction elles-mêmes. En d’autres termes, au lieu de faire rouler toutes les voitures sur l’autoroute, nous pouvons vérifier directement que « ces voitures ont effectivement atteint la fin ». Cela réduit non seulement la charge de transmission des données, mais rend également compatible « haut débit + sécurité renforcée + vérification sans confiance ».

The Verge : L'évolution suivante d'Ethereum

Ethereum est actuellement en train de promouvoir un grand plan technique - The Verge, que vous pouvez comprendre comme le "programme de réduction" d'Ethereum. L'objectif est de : abaisser considérablement le seuil d'exécution d'un nœud Ethereum, rendant cela aussi simple que de faire fonctionner une application sur un téléphone. À l'avenir, tout le monde pourra facilement rejoindre le réseau Ethereum, sans avoir besoin de dépendre d'un ordinateur de jeu haute performance.

Mais il y a un défi technique clé derrière ce plan : il nécessite d'effectuer des millions de calculs mathématiques complexes en un temps très court.

C'est exactement la direction de percée sur laquelle l'équipe Polyhedra se concentre - comment utiliser les GPU pour accélérer le calcul ZK à grande échelle, tout en garantissant la sécurité de la validation et en améliorant considérablement l'efficacité d'exécution.

Défis techniques : Ces données vont bouleverser votre perception

Pour comprendre la complexité à laquelle nous sommes confrontés, voici l'échelle réelle des opérations en cours sur la chaîne d'Ethereum :

  • Vérification des consensus (Consensus Verification) : Chaque bloc contient environ 90 millions de calculs de hachage SHA 2-256, ainsi que 2 048 vérifications de signatures numériques BLS.
  • Preuves de transition d'état (State Transition Proofs) : Chaque bloc nécessite environ 500 000 opérations de hachage Keccak.
  • Goulot d'étranglement actuel :
    Le prouveur de zk-SNARKs basé sur CPU ne peut actuellement traiter qu'environ 2 millions de calculs de hachage Poseidon par seconde.

Le véritable défi réside dans le fait que nous devons utiliser la technologie zk-SNARKs pour effectuer tous les calculs mentionnés ci-dessus, ce qui augmente sans aucun doute considérablement la complexité computationnelle.

Point de rupture : la révolution de la puissance de calcul des GPU

Il est bien connu que les GPU sont très appréciés des joueurs et des ingénieurs en IA. En réalité, ces unités de traitement graphique montrent des capacités bien supérieures à celles des CPU lorsqu'il s'agit de traiter des calculs mathématiques massivement parallèles nécessaires aux zk-SNARKs.

Chez Polyhedra, nous avons effectué une optimisation native GPU pour le système de preuve ZK et avons réalisé des indicateurs de performance révolutionnaires impressionnants :

Saut de performance, largement au-delà des attentes

  • Accélération des opérations mathématiques de base (domaine de Mersenne 31) de 362 fois
  • Accélération des opérations cryptographiques complexes (courbe elliptique BN 254) jusqu'à 2826 fois
  • Un calcul zk-SNARKs qui prenait initialement 21 minutes a désormais été compressé à seulement 450 millisecondes.

En d'autres termes, cela équivaut à ce que votre temps de trajet pendant les heures de pointe du matin passe de 20 minutes à moins d'une demi-seconde. Ce n'est pas une optimisation progressive, mais un saut computationnel au niveau du paradigme.

Pourquoi cette percée vous concerne-t-elle directement ?

  1. Coûts de transaction plus bas : une génération de preuve plus rapide signifie une réduction significative des coûts de calcul globaux, entraînant ainsi des frais de Gas plus bas. Un gagnant-gagnant pour les utilisateurs et le réseau.
  2. Sécurité renforcée : Vous vous souvenez lorsque nous avons mentionné qu’Ethereum dispose d’un budget de sécurité moyen de plus de 40 millions de dollars par an ? Grâce à notre technologie, les nœuds légers peuvent facilement vérifier l’ensemble de la chaîne de consensus Ethereum et profiter d’une sécurité au niveau du réseau principal sans surcharge de ressources énorme.
  3. Une exécution de nœuds plus répandue, les téléphones peuvent également exécuter Ethereum : Nos optimisations continues en matière de performance et d'efficacité rendent possible l'exécution d'un nœud Ethereum sur des appareils ordinaires. À l'avenir, la validation des données de la blockchain pourrait peut-être être réalisée uniquement avec un téléphone.

Cœur technologique : Comment y sommes-nous parvenus

1. Conception native GPU : protocole Sumcheck optimisé par CUDA

Notre mise en œuvre de Sumcheck basée sur CUDA tire pleinement parti des avantages du calcul parallèle des GPU :

  • Conception d'un noyau CUDA personnalisé pour les opérations sur les corps (addition, multiplication, exponentiation)
  • En utilisant le mode d'accès mémoire fusionné, maximisez l'utilisation de la bande passante GPU (la bande passante mesurée de la RTX 4090 atteint jusqu'à 1008 Go/s)
  • Utiliser des primitives de niveau warp pour réaliser des opérations de réduction efficaces.

Ce niveau de personnalisation approfondie permet au protocole Sumcheck de ne plus être limité par le goulot d'étranglement sériel du CPU.

  1. La mémoire est reine : l'optimisation des goulots d'étranglement de bande passante. La pensée traditionnelle considère que le goulot d'étranglement du calcul ZK Prover réside dans la puissance de calcul, mais nos preuves empiriques montrent que — Sumcheck est un problème typique de goulot d'étranglement de bande passante mémoire :
  • Analyse du débit de la mémoire : le taux d'utilisation de la bande passante atteint la limite théorique de 95 % +
  • Optimisation de la structure des données : utilisation de Structure-of-Arrays (SoA) au lieu de la structure traditionnelle Array-of-Structures (AoS)
  • Amélioration du taux d'utilisation des unités SM : optimisation de la configuration des blocs de threads pour atteindre un taux d'occupation matériel optimal.

En résolvant le problème de bande passante de la mémoire, nous avons transformé le calcul ZK en une véritable tâche de flux efficace.

3. Stratégies d'optimisation personnalisées pour différents domaines numériques

Différents domaines de la cryptographie ont des caractéristiques opérationnelles différentes, nous avons personnalisé des chemins d'optimisation pour chaque domaine principal :

  • Mersenne 31 (M 31) : optimisation d’entiers 31 bits, structure arithmétique modulo efficace
  • M 31 ext 3 : support des champs étendus, prenant en compte l'expansion polynomiale et les faibles coûts
  • BN 254 : Multiplicateur personnalisé basé sur l'algorithme de Montgomery, conçu pour le champ des entiers de 254 bits.

Cette optimisation de bas niveau hautement ciblée rend notre ZK Prover à la fois universel et extrêmement efficace.

Décomposition des données de performance : endroits où l'optimisation a eu lieu

Nous n'avons pas seulement rendu les choses "beaucoup plus rapides", mais nous avons porté les performances ZK à un niveau sans précédent. Voici les données de performance mesurées :

Révolution GPU : Comment nous utilisons les zk-SNARKs pour rendre Ethereum 1000 fois plus rapide

Révélation de l'architecture technique : la vérité sous le capot

GKR Stack : le noyau accéléré

Notre optimisation accélérée se concentre sur le protocole GKR (Goldwasser-Kalai-Rothblum), qui comprend spécifiquement :

  • Couche GKR linéaire : utilisée pour traiter les portes d'addition et de multiplication
  • Protocole Sumcheck : le goulot d'étranglement de performance, représentant près de 50 % du temps de calcul total du CPU
  • Phase d'évaluation des polynômes : réduction du temps de calcul sur GPU de 8,4 secondes à 9,5 millisecondes

Conception de noyau GPU détaillée

Première phase : évaluation des polynômes

  • Calculer en parallèle sur 2 ^n points
  • Utiliser le coefficient de cache de mémoire partagée pour améliorer la vitesse d'accès
  • Réaliser des opérations de réduction efficaces grâce à warp shuffle
  • Deuxième étape : génération de défi
  • Exécuter l'opération de hachage Fiat-Shamir à l'intérieur du GPU, évitant les commutations fréquentes entre le CPU et le GPU.
  • Réduire la latence de communication entre le CPU et le GPU

Optimisation du transfert de mémoire : débloquer le "dernier kilomètre" du flux de données

Nous avons également effectué des optimisations systématiques en matière d'interaction CPU-GPU pour garantir que la bande passante ne devienne pas un goulot d'étranglement :

  • Optimisation du débit de données PCIe : traitement de 2 ^{ 27 } éléments en seulement 737 millisecondes
  • Mémoire épinglée : supporte le transfert de données "sans copie", réduisant les coûts de copie
  • Programmation des opérations asynchrones : calcul et communication parallèles, maximisation de l'utilisation des ressources.

En toute franchise : les défis persistent.

Nous restons toujours transparents - l'accélération GPU n'est pas une solution miracle, et dans la mise en œuvre réelle, nous avons également rencontré de nombreux goulots d'étranglement techniques :

  1. La bande passante de la mémoire a atteint son maximum
  • Même si le H100 dispose d'une bande passante allant jusqu'à 3,35 To/s, il peut devenir un goulot d'étranglement en termes de performance sous forte charge.
  • En comparaison : un domaine de courbe elliptique plus grand (comme BN 254) atteint le sommet plus rapidement qu'un petit domaine (comme M 31)
  1. La capacité de mémoire vidéo GPU est limitée
  • RTX 4090 s'épuise en mémoire lors du traitement de 2 ^{ 29 } éléments
  • Une stratégie de planification de la mémoire précise est nécessaire lors du déploiement réel pour éviter le risque de débordement.
  1. Compromis entre la taille du domaine et la performance

Révolution GPU : Comment nous utilisons les zk-SNARKs pour accélérer Ethereum de 1000 fois

  1. Comparaison des "avantages du GPU" : depuis quand dépasse-t-il le CPU ?

Révolution GPU : comment nous utilisons zk-SNARKs pour accélérer Ethereum de 1000 fois

Mesures de performance multiplateforme

Nous avons effectué des tests de performance sur des GPU de différents niveaux, couvrant le matériel grand public et le matériel de centre de données :

GPU de consommation

  • RTX 3090 : bande passante mémoire 936 GB/s, augmentation de performance pouvant atteindre jusqu'à 951 fois
  • RTX 4090 : bande passante mémoire de 1008 Go/s, amélioration des performances allant jusqu'à 1565 fois
  • Centre de données GPU
  • NVIDIA H100 : bande passante allant jusqu'à 3,35 To/s, amélioration des performances pouvant atteindre jusqu'à 2826 fois

Conclusion claire et précise : la bande passante mémoire est la variable clé pour l'accélération des zk-SNARKs.

Perspectives d'avenir : notre feuille de route

Nous n'avons pas encore terminé, et nous allons continuer à relever les défis suivants:

  • Accélération ultime : pour certaines opérations, l'objectif est d'atteindre un gain de vitesse de 10 000 fois.
  • Compatibilité matérielle plus large : prise en charge complète des cartes graphiques de jeu haute performance aux cartes d'accélération de niveau centre de données.
  • Intégration native d'Éther : Nous collaborons avec l'équipe de développement des clients Ethereum pour intégrer directement notre pile de preuves GPU ZK dans la couche L1.

Rejoignez cette vague de transformation !

Ce n'est pas seulement une augmentation de la vitesse, mais une refonte totale de l'accessibilité de la Blockchain. Peu importe qui vous êtes, vous pouvez trouver un moyen de participer :

  • Développeurs : bienvenue pour consulter nos dépôts Expander et CUDA, et construire ensemble l'avenir
  • Apprenant : Suivez nos séminaires de recherche et nos plongées techniques, mise à jour continue pour rester à jour.
  • Tout le monde : Diffusez cette technologie ! Plus il y a de gens qui comprennent, plus l'avenir du Web3 est proche.

Revue des points clés

Nous sommes à un tournant technologique passionnant. La combinaison des zk-SNARKs et de l'accélération GPU ne se limite pas à une amélioration marginale des performances, mais constitue une véritable transformation de paradigme.

Nous redéfinissons les limites de la vitesse, du coût et de la disponibilité d'Ethereum.

Aperçu des résultats technologiques clés :

  • Mise en œuvre de la preuve ZK orientée vers l'environnement de production avec une accélération de plus de 1000 fois
  • L’utilisation de la bande passante de la mémoire GPU dépasse 95 %
  • Implémentation open source, intégrable à tout moment

L'avenir du Web3 n'est pas seulement décentralisé, mais aussi rapide d'accès, et il arrive plus vite que vous ne l'imaginez.

Quel aspect de ces avancées vous intéresse le plus ? N'hésitez pas à laisser un commentaire ci-dessous ou à interagir avec moi sur Twitter, nous serions ravis d'échanger en profondeur sur ces détails techniques !

L'avenir appartient à la vitesse, et aussi à vous. À la prochaine, continuez à construire, pas seulement rapidement !

Voir l'original
Le contenu est fourni à titre de référence uniquement, il ne s'agit pas d'une sollicitation ou d'une offre. Aucun conseil en investissement, fiscalité ou juridique n'est fourni. Consultez l'Avertissement pour plus de détails sur les risques.
  • Récompense
  • Commentaire
  • Partager
Commentaire
0/400
Aucun commentaire
  • Épingler
Trader les cryptos partout et à tout moment
qrCode
Scan pour télécharger Gate app
Communauté
Français (Afrique)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)