微信 QQ空间 QQ好友 新浪微博

Grin挖矿教程

分类:学院 / 挖矿教程

2019年01月23日

从什么是Grin和MimbleWimble说起……

mining

Grin似乎满足了很多人的期待。这是一种以社区为导向的加密货币,提倡隐私,旨在提高延展性,保持去中心化。和比特币一样,Grin也有一个独立且活跃的开发者社区。此外,ICO和基金会也不会出现在这里,因为这样才能打造出一个真正的去中心化加密货币,而非由企业主导。

Grin基于MimbleWimble协议,是一种全新的区块链协议。其创新设计减少了非必要的数据存储,提高了可延展性。另外,隐私是其自带的功能。

和比特币一样,Grin选择了经典的中本聪共识(PoW),但挖矿算法不同。Grin的算法Cuckoo Cycles,由于其内存密集型特点,维持了ASIC抗性。

开始挖矿之前你需要什么? 

- Linux或者MacOS系统(grin-miner暂不Windows系统,不过你也可以选择加入矿池)

- 版本较新的CPU

- 在主网挖矿需要新版GPU,至少6GB内存。英伟达的1080/2080/ti系列运行良好。

另外,你需要下载并安装Grin软件,运行一个同步节点并且已经进行初始化,具备运作钱包的能力。

Grin PoW基本知识 

Grin接受两种PoW算法,且均来源于Cuckoo Cycle概念。

- CuckARoo(有ASIC抗性)用于GPU挖矿,可以使用6GB内存的GPU。

- CuckAToo(针对ASIC)用于将来的ASIC挖矿,可以使用11GB内存的GPU。

Cuckoo算法解算器采用了被称为 "图形大小" 的方法作为参数。这决定了挖矿所需内存。CuckARoo使用2^29边的图形, 而CuckAToo使用具有2^(31+)边的图形, 因此存在不同的内存要求。

Cuckoo使用了每秒搜索图形数(GPS)来决定矿工的挖矿速度。在Grin的挖矿环境中,你经常能看到的是GPS,而非算力。这两个术语在某些情况下可以互换使用,但GPS更加准确。

上线之后,Grin就会进行调整,90%的区块通过GPU挖矿产出,10%由ASIC产出。按照现阶段的计划,未来Grin挖矿将逐渐向GPU挖矿产出0%,ASIC 100%靠拢。

下载Grin-miner软件 

新版的Grin-miner可以在这里找到。目前仅支持Linux和OSX。未来将出现更多的版本,也将在这里列出。

安装 

Linux(所有版本)

将压缩后的文件下载到你的电脑上,并进行解压。然后你就会看到一个名为“grin-miner”的文件目录,其中包含grin-miner二进制文件、GPU和CPU挖掘插件以及主配置文件“grin-miner.toml”。

我们建议将它放在与主目录相对的位置,并编辑path环境变量,以确保无论在何处运行,都可以使用grin-miner可执行文件。这些都可以在下载grin-miner的目录中运行以下命令来完成(在必要时替换grin-miner版本号)。

tar -C ~/ xzf grin-miner-v1.0.2-480780316-linux-amd64.tgz echo 'export PATH=~/grin-miner-v1.0.2:$PATH' >> ~/.bashrc source ~/.bashrc 挖矿模式下运行Grin 

设置Grin的stratum(挖矿)服务器

在文件~/.grin/main/grin-server.toml中,把enable_stratum_server = false改成enable_stratum_server = true

运行Grin钱包监听器(listener)和节点

在一个终端窗口中,运行钱包监听器(在提示时输入钱包密码)

grin wallet listen

在另一个终端窗口运行你的Grin节点:

grin

配置grin-miner 

挖矿插件的所有配置选项都可以在grin.toml中找到,并有完整的文档记录。以下步骤可帮助大多数人运行这一软件:

设置grin-miner用于CPU挖矿

配置文件默认会启用CPU挖矿。如果你的CPU版本较新,你可以使用cuckaroo_cpu_avx2_29插件。

设置grin-miner用于GPU挖矿(英伟达)

一定要保证英伟达驱动器是最新版。

在这一节,我们将编辑grin-miner设置,用英伟达GPU进行挖矿。

首先进入CUCKAROO (即GPU友好的) MINER PLUGIN CONFIGURATION部分。

按一下方式为CPU插件配置添加注释(每一行的开头都加上#):

#[[mining.miner_plugin_config]] #plugin_name = "cuckaroo_cpu_compat_29" #[mining.miner_plugin_config.parameters] #nthreads = 1

然后,取消以下几行设置(去掉每行的#):

[[mining.miner_plugin_config]] plugin_name = “cuckaroo_cuda_29” [mining.miner_plugin_config.parameters] device = 0

如果你有多个GPU,每个设备都需要输入这四行代码,并修改设备号。你可能希望使用与nvidia-smi等非CUDA程序相同的PCI总线ID枚举顺序中的设备号。为此,将shell脚本中的CUDA_DEVICE_ORDER环境变量设置为PCI_BUS_ID。这个变量的默认值是FASTEST_FIRST。可在这里找到更多信息。注意,这只在CUDA 7和更高版本中可用。

设置grin-miner用于GPU挖矿(AMD)

在这一节,我们将编辑grin-miner设置,用AMD GPU进行挖矿。

首先进入CUCKAROO (即GPU友好的) MINER PLUGIN CONFIGURATION部分并且注释下列命令行(每行开头都添加#):

#[[mining.miner_plugin_config]] #plugin_name = "cuckaroo_cpu_compat_29" #[mining.miner_plugin_config.parameters] #nthreads = 1

然后进入CUCKAROO (即ASIC抗性) MINER PLUGIN CONFIGURATION部分并且取消以下几行设置(去掉每行的#):

[[mining.miner_plugin_config]] plugin_name = "ocl_cuckaroo" [mining.miner_plugin_config.parameters] platform = 0 device = 0

如果你有多个GPU,每个设备都需要输入这五行代码,并修改设备号。

运行grin-miner 

确保你的Grin节点和钱包正确运行,然后从你的grin-miner-vx.x.x安装目录:

./grin-miner

grin-miner的测试用户界面应该会显示所有配置卡的数据。

grin-miner数据 

- Solutions Found(发现解决方案数量)是你发现的有效cuckoo解决方案数量。注意这并非产出区块。只有通过进一步难度检查(通过Grin stratum服务器测试)的方案才能挖出一个区块。

- Accepted(接受数量)是你的矿机发现的解决方案被stratum服务器定为有效共享(或者对矿池有贡献)的数量。同样的,这并非已解决的区块数量或挖矿奖励。

- Rejected(拒绝数量)是拒绝共享的数量。这一数字应该为0,除非你的挖矿插件或服务器通讯存在问题。

- Stale(已过期数量)是发现时间较晚的解决方案数量(网络中有人在这个解决方案提交之前就挖出了区块)。

- Blocks found(发现区块数量)是你挖出的区块数量,即通过难度检查的有效cuckoo解决方案,同时已经被网络接受。如果你是个人矿工(这个教程就是针对个人矿工的),你钱包中应该会取得60Grin/区块的奖励。

挖CuckAToo 

如果你有容量大于11GB的GPU,可以配置你的插件通过2^(31+)的图形大小来挖CuckAToo(ASIC友好)。举个例子:

[[mining.miner_plugin_config]] plugin_name = "cuckatoo_mean_cuda_rtx_31" [mining.miner_plugin_config.parameters] device = 0 expand = 2 cpuload = 1

你需要设置expand = 2为允许使用可用的GPU内存执行解决方案。

请参阅grin-miner.toml中的文档了解使用Cuckatoo31进行挖矿的进一步信息。

Cpuload参数 

在每个CUDA GPU解算器中可配置的cpuload参数减少了CPU的工作量,但这是以时间为代价的。

- cpuload = 0(默认)速度较慢,但能释放更多CPU空间

- cpuload = 1速度较快,但CPU工作量较大

建议每个CUDA解算器手动设置cpuload = 1,除非你挖矿的速度出现了严重的延迟。

矿池 

在熟悉了grin挖矿之后,你也可以选择加入矿池。需要注意的是,Grin项目并未运行任何矿池,也不为这些矿池做背书。在设置grin-miner的时候请参照具体矿池的指示。

本文地址:https://www.babaofan.com/edu/course/5117.html
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

市场及媒体合作

QQ:70015

投稿邮箱

web@babaofan.com

关注我们
八宝饭数字货币官方微信交流群二维码

[八宝饭官方微信交流群]

八宝饭数字货币区块链资讯移动端二维码

[八宝饭官方移动端]

八宝饭移动站

八宝饭移动站