xmr-stak-cpu
是一个用于cpu
计算的开源软件,下面记录在ubuntu17.04
下的安装过程
sudo apt-get -y install git
git clone https://github.com/fireice-uk/xmr-stak-cpu.git
sudo apt-get -y install libmicrohttpd-dev libssl-dev cmake build-essential
cd xmr-stak-cpu/
此时可以选择捐赠作者的比例
编辑donate-level.h
更改完成后,执行编译和安装
cmake -DHWLOC_ENABLE=OFF .
make install
编辑 xmr-stak-cpu/bin/config.txt
cat /proc/cpuinfo | grep processor
查看总线程数n
将cpu_threads_conf
改成以下内容,threads
数量大约为cpu
总线程数的2/3,
以我使用的E5-2665
为例,共16
线程,使用10
线程时效率最高。
"cpu_threads_conf" :
[
{ "low_power_mode" : false, "no_prefetch" : true, "affine_to_cpu" : 0 },
{ "low_power_mode" : false, "no_prefetch" : true, "affine_to_cpu" : 1 },
{ "low_power_mode" : false, "no_prefetch" : true, "affine_to_cpu" : 2 },
{ "low_power_mode" : false, "no_prefetch" : true, "affine_to_cpu" : 3 },
{ "low_power_mode" : false, "no_prefetch" : true, "affine_to_cpu" : 4 },
{ "low_power_mode" : false, "no_prefetch" : true, "affine_to_cpu" : 5 },
{ "low_power_mode" : false, "no_prefetch" : true, "affine_to_cpu" : 6 },
{ "low_power_mode" : false, "no_prefetch" : true, "affine_to_cpu" : 7 },
{ "low_power_mode" : false, "no_prefetch" : true, "affine_to_cpu" : 8 },
{ "low_power_mode" : false, "no_prefetch" : true, "affine_to_cpu" : 9 },
],
如果使用nicehash
, 建议设置"nicehash_nonce" : true,
更改地址等信息(nicehash
为例)
"pool_address" : "cryptonight.hk.nicehash.com:3355",
"wallet_address" : "your-bitcoin-wallet-address.any-name-you-like",
"pool_password" : "x",
这时,在xmr-stak-cpu/bin
文件夹下执行./xmr-stak-cpu
已经可以开始计算
按h
键显示速率(初始几秒可能为0,不要着急)
可能显示MEMORY ALLOC FAILED: mmap failed
这一问题其实不需要解决,因为在笔者的机器上实测没有影响,但是下面还是提供解决方案。
解决方案:
sudo sysctl -w vm.nr_hugepages=128
另外,在/etc/security/limits.conf
中添加
* soft memlock 262144
* hard memlock 262144
exit
后重新登录
一切就位,让程序后台运行
nohup ./xmr-stak-cpu &
然后ctrl c
退出
运行top
命令可以看到
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
25706 svr 20 0 1044224 20616 7136 S 998.7 0.3 8:42.80 xmr-stak-cpu
25720 svr 20 0 46076 4224 3464 R 0.3 0.1 0:00.23 top
1 root 20 0 205088 7436 5436 S 0.0 0.1 0:05.40 systemd
程序已经在后台正确运行。