这是Monero门罗币系列文章的第四篇,给大家讲讲门罗币挖矿里面涉及的几个稍微高级一点的问题,比如效率问题,当然挖矿本身就有一定的运气成分,效率的高低自己衡量。
提高效率,第一点是使用64位的系统,现在的硬件一般都是支持64位的系统,但是因为内存可能在4G以下,部分机器装了32位的系统,这对算力有一定的影响的。通过经验目测,同样的硬件,32位系统只能达到64位系统的60%-80%收益。
1、如何选择使用CPU的核心数。
Monero门罗币是基于CryptoNote协议,大量的AES运算,需要消耗大量的内存,基于ASIC的矿机成本并不比CPU或GPU低多少,所以目前大规模的挖矿还是基于CPU或者GPU。不像比特币,使用ASIC矿机,下图就是比特币ASIC矿机。
如何设置CPU的核心数才能达到最大的效率,答案是由CPU L3(三级缓存)的大小决定,有一个简单的比例,就是把L3大小除以2,比如目前家用的比较流行的CPU I5 7500,四核心四线程,6MB L3三级缓存,那么使用6÷2=3个核心挖矿的时候效率最高。如果使用全部的4个线程,收益反而会有所降低。
2、如何选择pool difficulity?
大家在矿池的介绍都会看到一个Starting Difficulty(起始难度)参数,一些矿池的不同端口,起始难度也是不同的。矿池的难度,就是每次提交的shares数量,比如难度15000,那么一个成功的result提交的是15000个shares。
如何选择这个起始难度,对收益还是有一定的影响的,基本道理就是:如果算力低,选择起始难度低的端口,如果算力大,选择起始难度高的端口。
这个起始难度是由矿池决定的,挖着挖着,矿池也会更改难度的大小,但是我们可以设置一个固定值。
以下部分资料通过网络查阅得知,并非官方的资料,可以作为参考:
难度系数最大的作用是为了减少矿池被类似DDoS,如果难度设置比较低,矿工一秒可以提交很多的shares上来,矿池处理不了,就像被DDoS了。(参考一、参考二)
但是从另一个角度,如果矿池的起始难度太高,在矿池挖到一个块(Block)的时候,你一个share都没提交,那么根据PPLNS的收益分配规则,你是得不到收益的,那么就白挖了。
所以在寻找矿池的时候,还要仔细查看矿池的起始难度,这个难度值与矿机要有一定的匹配性。
那如何选择起始难度呢,有网友说是算力的12倍左右(这个是不确定的,有的说20倍,不是官方的说法,有机会可以自己摸索),比如你的算力是200 Hashes/s,那么选择难度在2400左右的矿池端口,但是现在矿池的起始难度感觉都比较高,比如minexmr矿池的起始难度是15000。
难度越大,提交一个result就需要更多的时间,当然这个result代表的shares也更多。
既然minexmr的起始难度比较高,如果我们的矿机性能不是特别好,我们可以限制矿池调整难度,使用最低的起始难度。不同的矿池有不同的设置方法,具体可以查看矿池的介绍页面,一般都是在钱包地址后面+难度值,比如minexmr的矿工可以设置为钱包地址+15000。
单纯靠CPU挖XMR太慢了…… 还是要依托显卡…… 用显卡挖XMR又不划算~