Qu'est-ce que l'exploitation minière? Pourquoi dans la grande majorité des cas, les cartes vidéo sont mieux adaptées à l'extraction de crypto-monnaie qu'un processeur? Pourquoi les asics sont-ils si bons? Dans cet article, j'ai essayé dans un langage compréhensible de parler des bases du côté technique de l'exploitation minière.
Pour comprendre le tableau général, les informations sont données sous une forme simplifiée, certains détails sont omis.
Qu'est-ce que l'exploitation minière?
Prenons l'exemple de la
blockchain Bitcoin . Pour le simplifier au maximum, la puissance de calcul des ordinateurs de minage vise à chiffrer les opérations de transfert de bitcoins d'un portefeuille à un autre.
À quoi ça ressemble?
Supposons que Satoshi Buterin ait envoyé 1 bitcoin de son portefeuille au portefeuille de Vitalik Nakamoto. Selon l'essence de la blockchain, vous devez
crypter les informations contenant les adresses des portefeuilles de Satoshi et Vitalik, ainsi que le nombre de bitcoins transférés. Ici, l'équipement minier entre en jeu - il doit trouver la bonne option de cryptage.
Selon l'algorithme de hachage SHA-256, sur lequel la chaîne de blocs Bitcoin est construite, vous devez le faire de manière strictement définie. Par exemple, l'algorithme a demandé de crypter les informations afin que la fin de la chaîne cryptée soit nulle. Une exigence similaire vient des développeurs de crypto-monnaie - ils ont besoin d'un chiffre avec un certain symbole afin d'augmenter la résistance à la fissuration.
Le fer commence à fonctionner - pour résoudre ce problème mathématique par la méthode de sélection. Les informations «Portefeuille Satoshi Buterin ---> 1 BTC ---> Portefeuille Vitalik Nakamoto» se transforment en une chaîne cryptée comme «dh523456l29e4f6ab42d99c81156d3a17228d6e1eef4139be78dgw5jh63f2348». Mais dans cette option, il n'y a pas de zéro à la fin. Ensuite, le matériel commence à prendre une nouvelle option de chiffrement, en ajoutant un symbole aux informations qui ne change pas sa signification.
Dès que la combinaison nécessaire de chiffrement est trouvée, elle est écrite dans la base de données (blockchain), et plus précisément, dans une petite partie de cette base de données, qui est appelée un bloc.
En bref sur la blockchainLa blockchain est une base de données qui est essentiellement un journal de transactions. Ses principales idées posées par les développeurs:
- qu'il y ait un seul journal des transactions;
- laissez tout le monde avoir un exemplaire du magazine;
- nous crypterons toutes les entrées de journal afin que l'ennemi ne les obtienne pas;
- nous divisons le magasin en blocs et nous connectons les blocs en chaînes.
Une copie de cette base de données (une copie de la blockchain) est stockée sur les disques durs de chacun des mineurs, mais cette base de données est en fait un organisme unique - elle est mise à jour et synchronisée sur tous les ordinateurs. Par conséquent, pour casser la blockchain, vous devez la casser immédiatement sur tous les ordinateurs connectés à la blockchain.
Les développeurs de blockchain Bitcoin ont déterminé que la taille maximale des blocs ne peut pas dépasser ~ 1 Mo. Et pour que le bloc soit considéré comme formé, il doit être rempli avec des enregistrements de transaction chiffrés. Une fois le bloc formé, la blockchain génère automatiquement une transaction d'émission de bitcoins afin de récompenser le
mineur pour son travail.
Mais ne pensez pas que vous pouvez simplement prendre et trier calmement un millier de combinaisons, en trouvant la bonne. Plus d'une douzaine, voire plus d'une centaine de capacités peuvent «travailler» sur une même tâche. Et qui sera le premier, «ça et les pantoufles». Il s'avère que plus vous avez de puissance de calcul, plus vous avez de chances d'être le premier à trouver la bonne option de cryptage.
Mais un homme mineur peut former un bloc séparé sur son ordinateur pendant très longtemps. Il est peu probable que quiconque soit satisfait de la perspective d'exploiter pendant plusieurs années sans interruption, de former un seul bloc, puis de recevoir 12,5 bitcoins en récompense (c'est le nombre de bitcoins qui est maintenant émis pour la formation d'un nouveau bloc). Par conséquent, les gens mettent leur pouvoir en commun. Dans ce cas, le réseau Bitcoin attribue une récompense pour les blocs formés non pas à un mineur individuel, mais à un pool. Le pool, à son tour, distribue les récompenses aux mineurs individuels, en fonction du temps passé et de la puissance (moins la commission).
Pourquoi des cartes vidéo, pas des CPU?
L'architecture du processeur graphique (GPU) et de l'unité centrale de traitement (CPU) sont très différentes. Les processeurs modernes se composent de 4 à 8 cœurs, ce qui les rend adaptés à la résolution de tâches complexes et de grande envergure. De plus, avec cette architecture, ils peuvent rapidement passer d'une tâche à l'autre.
Et les processeurs graphiques ont été créés afin de résoudre un grand nombre de petites et simples tâches. Par conséquent, ils ne sont pas constitués d'une paire de gros noyaux, mais de milliers de petits nucléoles. Sous cette forme, il leur est beaucoup plus pratique de traiter des millions de pixels et de polygones. Mais effectuer des tâches complexes, en plus de passer de l'une à l'autre, est trop difficile pour le GPU.
Les créateurs de cartes vidéo ont d'abord cherché à améliorer l'image et son traitement dans les jeux informatiques. Et ils ne s'attendaient certainement pas à ce qu'une architecture similaire de leurs GPU soit la mieux adaptée à l'exploitation minière.
Après tout, qu'est-ce que l'exploitation minière? Il s'agit d'une énumération de centaines de milliers de combinaisons différentes pour le chiffrement, qui diffèrent essentiellement par un seul caractère. Des milliers de cœurs GPU peuvent faire face à un travail aussi simple et simple beaucoup plus rapidement que 4-8 cœurs intelligents mais petits.
A titre de comparaison: le cœur du processeur traite huit instructions 32 bits par horloge (AVX). Et le processeur de la carte graphique Radeon HD 5970 traite 3200 instructions 32 bits par cycle.
Mais il existe des appareils sur lesquels l'extraction est encore plus rapide - ils sont appelés ASIC.
ASIC
Traduit de l'anglais, circuit intégré spécifique à l'application signifie «circuit intégré à usage spécial». Il s'agit d'un équipement conçu pour résoudre un problème strictement spécifique. Si nous parlons d'ASIC pour l'exploitation minière, alors c'est essentiellement «tout en un»: une unité d'alimentation, un dispositif de refroidissement et une petite carte sur laquelle se trouvent les CPU, les ROM, la RAM et d'autres blocs. Et si les cartes vidéo n'ont pas été créées à l'origine pour le minage, un tel matériel est «affûté» précisément pour cette tâche.
Prenons par exemple la carte graphique AMD Radeon RX 580, populaire auprès des mineurs de bitcoins, qui coûte environ 26 000 roubles et sa puissance d'extraction est de 1,5 GH / s. Nous opposons ASIC AntMiner R4 à un coût d'environ 100 000 p. Sa capacité est de 8,7 TH / s. La différence est évidente.
Antminer r4De plus, les fabricants d'ASIC miniers les créent pour l'extraction d'une certaine crypto-monnaie. Ils sélectionnent les composants et configurent le logiciel dans ASIC de telle manière qu'il résout le mieux la résolution des problèmes en fonction de l'algorithme spécifique sur lequel une crypto-monnaie spécifique est construite (par exemple, SHA-256 pour extraire le bitcoin). C'est-à-dire qu'en théorie, l'asic pour le bitcoin peut être utilisé pour
extraire une autre crypto -
monnaie , mais ses performances dans ce cas ne seront pas impressionnantes.
Mais si vous pouvez ensuite brancher la carte vidéo sur l'ordinateur et jouer à divers jeux avec elle, vous ne pouvez pas le faire avec l'ASIC - ils y installent des systèmes d'exploitation très simplifiés, dont les capacités sont spécialement conçues pour l'extraction de crypto-monnaie.
Résumé
Nous avons présenté l'exploitation minière sur l'exemple du bitcoin sous une forme simplifiée et avons essayé de l'expliquer de la manière la plus compréhensible. Il convient de noter que pour différentes crypto-monnaies, les cartes vidéo de différents fabricants conviennent mieux: l'une conviendra mieux à Nvidia et AMD sera la meilleure solution pour l'autre. Cela est dû au fait que les crypto-monnaies sont construites sur différents algorithmes: la carte vidéo dont les caractéristiques de conception sont les mieux adaptées à chacune est la meilleure.