来源:比特币中文网
什么是采矿?
所谓采矿只是一种形象的说法。采矿实际上是通过消耗计算能力去寻找有效的block并创造新的比特币的过程。
从技术上说,采矿是计算之前的交易链块的hash和nonce。如果哈希值小于当前的difficulty,就会形成一个新的交易链块,采矿人同时会获得50个新创建的比特币作为回报。如果哈希值不小于当前的难度系数,一个新的nonce将被使用,再去计算新的哈希值。以上过程被每一个矿工每秒钟重复成千上万甚至百万次。
我挖了很久都没有获得任何新比特币,出了什么问题? 在比特币网络运行的早期,任何人都可以通过普通的CPU去找到新的交易链块。随着越来越多的人加入到采矿队伍,寻找新交易链块的难度系数随之大幅提高到用普通CPU平均可能需要几年才能找到一个有效的交易链块的程度。唯一可承受的或者有时效的采矿方法是使用高端显卡和特殊的软件(参见为何GPU采矿比CPU快)。由于CPU采矿越来越没有意义,比特币客户端软件在未来可能会删除这个功能。
采矿的计算过程是否用在某些有意义的计算上了? 由于采矿完全是比特币网络内部的事情,因此计算过程也是基于比特币网络进行的,与任何分布式计算项目无关。采矿的过程实际上是比特币网络的基础,起到了保护比特币网络的作用,因此是有用的,并不是无意义的计算。
这难道不算浪费能源? 在创建一个自由的货币系统上消耗能源很难说是浪费。同时,对于现时世界上的各种货币系统,比如银行或者信用卡公司,其运行都要消耗大量的能源,而且比比特币网络要多得多。
为何不使用对于其他方面也有用途的计算? 为了保证比特币网络系统的安全,使用的计算需要有一些必不可少的特性。这些特性与其他一般用途的计算有冲突。
为什么A卡挖矿比N卡快? 照官方WIKI的解释:
1. 就GPU构架来讲, A卡的ALU单元比N卡多得多。在这点上,A卡要快上2-3倍
2. 挖矿算法是基于SHA-256的,这个算法会有大量的位操作“right-rotate”,对于这个操作,A卡原生只需要1个硬件指令,而N卡需要用3个硬件指 令来模拟。在这点上,A卡又要快上1.7倍。
综合两点,在挖矿运算上,A卡的性能要比N卡快上3-5倍。N卡在游戏方面的性能不错,但是挖矿还是要用A卡。 |