Apa itu penambangan? Mengapa dalam sebagian besar kasus, kartu video lebih cocok untuk penambangan cryptocurrency daripada CPU? Mengapa asics begitu baik? Dalam posting ini, saya mencoba dalam bahasa yang dapat dimengerti untuk berbicara tentang dasar-dasar dari sisi teknis pertambangan.
Untuk memahami gambaran umum, informasi diberikan dalam bentuk yang disederhanakan, beberapa detail dihilangkan.
Apa itu penambangan?
Ambil contoh
bitcoin blockchain . Untuk menyederhanakannya sebanyak mungkin, kekuatan komputasi dari komputer penambangan ditujukan untuk mengenkripsi operasi transfer bitcoin dari satu dompet ke dompet lainnya.
Seperti apa bentuknya?
Misalkan Satoshi Buterin mengirim 1 bitcoin dari dompetnya ke dompet Vitalik Nakamoto. Menurut esensi dari blockchain, Anda perlu
mengenkripsi informasi yang berisi alamat dompet Satoshi dan Vitalik, serta jumlah bitcoin yang ditransfer. Di sini peralatan penambangan ikut berperan - dia perlu menemukan opsi enkripsi yang tepat.
Menurut algoritma hashing SHA-256, di mana Bitcoin blockchain dibangun, Anda perlu melakukan ini dengan cara yang ditentukan secara ketat. Sebagai contoh, algoritma memerintahkan untuk mengenkripsi informasi sehingga akhir dari string yang dienkripsi adalah nol. Persyaratan serupa datang dari pengembang cryptocurrency - mereka membutuhkan cipher dengan simbol tertentu untuk meningkatkan resistensi terhadap cracking.
Besi mulai bekerja - untuk menyelesaikan masalah matematika ini dengan metode seleksi. Informasi "Dompet Satoshi Buterin ---> 1 BTC ---> Dompet Vitalik Nakamoto" berubah menjadi string terenkripsi seperti "dh523456l29e4f6ab42d99c81156d3a17228d6e1eef4139be78dgw5jh63f2348". Namun dalam opsi ini, tidak ada nol di akhir. Kemudian perangkat keras mulai mengambil opsi enkripsi baru, menambahkan simbol ke informasi yang tidak mengubah artinya.
Segera setelah kombinasi enkripsi yang diperlukan ditemukan, ia ditulis ke basis data (blockchain), dan lebih khusus lagi, untuk bagian kecil dari basis data ini, yang disebut blok.
Secara singkat tentang blockchainBlockchain adalah database yang pada dasarnya adalah log transaksi. Gagasan utamanya adalah para pengembang:
- biarkan ada satu transaksi transaksi;
- biarkan semua orang memiliki salinan majalah;
- kami akan mengenkripsi semua entri jurnal sehingga musuh tidak mendapatkannya;
- kami membagi majalah menjadi balok-balok, dan kami menghubungkan balok-balok itu menjadi rantai.
Salinan database ini (salinan blockchain) disimpan di hard drive masing-masing penambang, tetapi database ini sebenarnya adalah organisme tunggal - diperbarui dan disinkronkan di semua komputer. Oleh karena itu, untuk memecahkan blockchain, Anda harus segera memecahkannya pada semua komputer yang terhubung dengan blockchain.
Pengembang blockchain Bitcoin telah menentukan bahwa ukuran maksimum blok tidak boleh melebihi ~ 1 Mb. Dan agar blok dipertimbangkan untuk dibentuk, itu harus diisi dengan catatan transaksi terenkripsi. Setelah blok terbentuk, blockchain secara otomatis menghasilkan masalah transaksi bitcoin untuk memberi penghargaan kepada
penambang atas pekerjaannya.
Tetapi jangan berpikir bahwa Anda dapat mengambil dan dengan tenang memilah-milah seribu kombinasi, menemukan yang tepat. Lebih dari selusin atau bahkan lebih dari seratus kapasitas dapat "bekerja" pada satu tugas. Dan siapa yang akan menjadi yang pertama, "itu dan sandal." Ternyata semakin banyak daya komputasi yang Anda miliki, semakin tinggi peluang untuk menjadi yang pertama menemukan opsi enkripsi yang tepat.
Tapi satu penambang bisa membentuk blok terpisah di komputernya untuk waktu yang sangat lama. Tidak mungkin ada orang yang senang dengan prospek penambangan selama beberapa tahun tanpa istirahat, membentuk satu blok, dan kemudian menerima 12,5 bitcoin sebagai hadiah untuknya (ini adalah jumlah bitcoin yang sekarang dikeluarkan untuk pembentukan blok baru). Oleh karena itu, orang menyatukan kekuatan mereka di kolam. Dalam kasus ini, jaringan Bitcoin mengalokasikan hadiah untuk blok yang dibentuk bukan untuk penambang individual, tetapi untuk kumpulan. Kelompok ini, pada gilirannya, mendistribusikan hadiah kepada penambang individual, sesuai dengan waktu yang dihabiskan dan kekuasaan (dikurangi komisi).
Mengapa kartu video, bukan CPU?
Arsitektur prosesor grafis (GPU) dan unit pemrosesan pusat (CPU) sangat berbeda. CPU modern terdiri dari 4-8 core - ini membuatnya cocok untuk menyelesaikan tugas-tugas besar dan kompleks. Selain itu, dengan arsitektur ini, mereka dapat dengan cepat beralih dari satu tugas ke tugas lainnya.
Dan prosesor grafis diciptakan untuk menyelesaikan sejumlah besar tugas kecil dan sederhana. Oleh karena itu, mereka tidak terdiri dari sepasang inti besar, tetapi ribuan inti kecil. Dalam bentuk ini, jauh lebih nyaman bagi mereka untuk memproses jutaan piksel dan poligon. Tetapi melakukan tugas-tugas kompleks, selain beralih dari satu ke yang lain, terlalu sulit untuk GPU.
Pencipta kartu video awalnya berusaha untuk meningkatkan gambar dan pemrosesan dalam permainan komputer. Dan mereka pasti tidak berharap bahwa arsitektur GPU mereka yang serupa akan paling cocok untuk penambangan.
Lagipula, apa itu penambangan? Ini adalah penghitungan ratusan ribu kombinasi berbeda untuk enkripsi, pada dasarnya berbeda hanya dengan satu karakter. Ribuan inti GPU dapat mengatasi pekerjaan sesederhana itu, jauh lebih cepat daripada 4-8 inti CPU yang kecil tapi pintar.
Sebagai perbandingan: inti CPU memproses delapan instruksi 32-bit per clock (AVX). Dan prosesor kartu grafis Radeon HD 5970 memproses 3200 instruksi 32-bit per siklus.
Tetapi ada perangkat yang menambang lebih cepat - mereka disebut ASIC.
ASIC
Diterjemahkan dari bahasa Inggris, sirkuit terpadu khusus aplikasi berarti "sirkuit terpadu tujuan khusus." Ini adalah peralatan yang dibuat untuk memecahkan masalah yang sangat spesifik. Jika kita berbicara tentang ASIC untuk menambang, maka pada dasarnya adalah โall in oneโ: unit catu daya, perangkat pendingin dan papan kecil tempat CPU, ROM, RAM dan blok lainnya berada. Dan jika kartu video awalnya tidak dibuat untuk penambangan, maka perangkat keras tersebut โdipertajamโ tepatnya untuk tugas ini.
Ambil contoh, kartu grafis AMD Radeon RX 580, yang populer dengan penambang bitcoin, harganya sekitar 26.000 rubel, dan daya penambangannya 1,5 GH / s. Kami menentang ASIC AntMiner R4: dengan biaya ~ 100.000 p. Kapasitasnya adalah 8,7 TH / s. Perbedaannya jelas.
Antminer r4Selain itu, produsen ASIC penambangan menciptakannya untuk ekstraksi mata uang digital tertentu. Mereka memilih komponen dan mengkonfigurasi perangkat lunak dalam ASIC sedemikian rupa sehingga mengatasi masalah terbaik sesuai dengan algoritma spesifik di mana cryptocurrency tertentu dibangun (misalnya, SHA-256 untuk menambang bitcoin). Artinya, secara teori, asic untuk bitcoin dapat digunakan untuk
menambang cryptocurrency lain , tetapi kinerjanya dalam hal ini tidak akan mengesankan.
Tetapi jika Anda kemudian dapat menyambungkan kartu video ke komputer dan memainkan berbagai permainan dengannya, maka Anda tidak dapat melakukan ini dengan ASIC - mereka memasang sistem operasi yang sangat disederhanakan pada mereka, yang kemampuannya "disesuaikan" khusus untuk penambangan cryptocurrency.
Ringkasan
Kami menyajikan penambangan pada contoh bitcoin dalam bentuk yang disederhanakan dan mencoba menjelaskannya dengan cara yang paling dapat dimengerti. Perlu dicatat bahwa untuk cryptocurrency yang berbeda, kartu video dari produsen yang berbeda lebih cocok: yang satu lebih cocok untuk Nvidia, dan AMD akan menjadi solusi terbaik untuk yang lain. Ini karena fakta bahwa cryptocurrency dibangun pada algoritma yang berbeda: kartu video yang fitur desainnya paling cocok untuk masing-masing spesifik adalah yang terbaik.