ETH挖矿算力简单来讲就是矿机每秒完成Ethash哈希运算的次数,算力计算主要分为显卡本地算力、矿池有效算力以及全网算力三个维度,三者计算逻辑各不相同,也是矿工核算收益最核心的数据依据。很多新手容易混淆挖矿软件显示的本地算力和矿池结算算力,两者数值往往存在偏差,并不是显卡硬件参数越高,算力就一定能够线性上涨,ETH的Ethash算法属于显存带宽密集型算法,对显存容量和读取速度要求极高,单纯依靠显卡CUDA核心数量很难精准算出理论算力,只能通过挖矿软件长时间跑测得到真实结果,这也是ETH算力不能直接用硬件参数公式推算的主要原因。算力行业常用单位从低到高依次为H/s、KH/s、MH/s、GH/s、TH/s,以太坊挖矿阶段矿工普遍使用MH/s作为算力计量单位,1MH/s代表设备每秒可以完成一百万次哈希碰撞运算。

单台矿机本地算力的测算,一般由挖矿客户端实时统计单位时间内显卡输出的哈希总数,再除以统计时长得出实时算力。挖矿软件每隔几秒刷新一次算力数值,短时算力会出现上下浮动,矿工通常取一小时以上的平均数值作为显卡稳定算力。由于Ethash挖矿需要加载DAG数据集,DAG文件每30000区块更新一次,也就是一个纪元周期,当DAG文件增大超出显存容量,显卡算力就会断崖式下跌甚至无法挖矿,所以显存大小会直接限制单卡算力上限。超频显存频率、调整内核参数、更换稳定驱动都能够改变最终跑出的算力结果,同一型号显卡,显存颗粒品质不一样,最终实测算力也会出现3‑5MH/s的差距。

矿池端有效算力,才是矿工分红结算的最终标准,这也是算力计算最容易被忽略的干货知识点。矿池不会直接读取挖矿软件上报的本地算力,而是根据矿工提交上来的有效份额反向计算算力,核心换算逻辑为有效算力等于周期内有效份额总数乘以矿池共享难度,再除以统计总秒数。本地算力包含大量无效哈希尝试,无法全部转化成有效份额,正常情况下矿池算力比本地算力低3%‑8%,网络延迟、掉线、算力短时卡顿,都会进一步扩大两者之间的差值。矿池一般提供实时算力、一小时平均算力以及24小时长效算力,其中24小时长效算力是矿工每日收益结算的基准数值,矿池手续费、孤块损耗不会改变算力数值,只会在最终收益当中直接扣除。

全网算力的计算方式又和矿工算力完全不同,区块链浏览器不会统计所有矿工上报的算力,而是依靠网络难度反向推算全网总算力。以太坊网络会自动调节挖矿难度,维持平均出块时间稳定在13秒左右,全网算力会随着难度同步变化,算力上涨难度随之升高,以此保证区块产出速度不会过快。全网算力计算公式依托实时区块难度换算而来,可以直观反映整个以太坊网络矿工的总体挖矿实力,矿工也可以用自身算力除以全网总算力,算出自己理论上能够占据全网收益的份额,再带入区块奖励数据,就能够预估每日挖矿产出收益。
