主页 > imtoken国内下载 > 以太坊连载(20):如何使用GPU和矿池挖矿?
以太坊连载(20):如何使用GPU和矿池挖矿?
GPU挖矿硬件
该算法是内存难处理的,为了让DAG在内存中适应,每个GPU需要1-2GB的内存,如果报错:Error GPU mining。 GPU memory fragmentation?,这意味着你没有足够的内存。 GPU挖矿软件是基于OpenCL实现的,AMD GPU会比同级别的NVIDIA GPU更快。 ASIC 和 FPGA 效率相对较低,因此受到阻碍。 要获取用于芯片集成平台的 openCL,请尝试:
Ubuntu Linux 设置
对于本快速指南,您需要 Ubuntu 14.04 或 15.04 以及 fglrx 图像驱动程序。 您也可以使用 NVidia 驱动程序和其他平台,但您必须找到自己的方法来安装 OpenCL,例如 Genoil 的 ethminer fork。
如果您使用的是 15.04,请转到“软件和更新 > 其他驱动程序”并设置为“使用来自 fglrx 的 AMD 图形加速器的视频驱动程序”。
如果您使用的是 14.04,请转到“软件和更新 > 其他驱动程序”并设置为“使用来自 fglrx 的 AMD 图形加速器的视频驱动程序”。 不幸的是,对于某些人来说,这种方法可能不起作用,因为 Ubuntu 14.04.02 中存在一个已知错误,该错误会阻止您切换到 GPU 挖掘所需的专用图形驱动程序。
因此,如果您遇到此错误,请先转到“软件和更新 > 更新”并选择“预发布可靠更新建议”。 然后,返回“软件和更新 > 其他驱动程序”并将其设置为“使用来自 fglrx 的 AMD 图形加速器的视频驱动程序”。 重新启动后,有必要检查驱动器现在是否确实正确安装(例如,转到“额外驱动器”)。
无论您做什么,如果您使用的是 14.04.02,请不要在安装后更改驱动程序或驱动程序配置。 例如,使用 aticonfig --initial(尤其是 -f、--force 选项)将“破坏”您的设置。 如果您不小心更改了配置,您将需要卸载驱动程序,重新启动,重新安装驱动程序并重新启动。
Mac 设置
12345
检查冷却状态:
1个
Windows 设置
下载最新的Eth++安装,在安装界面的“选择组件”页面选择ethminer。
使用 ethminer 和 geth
1234
ethminer 在端口 8545(geth 的默认 RPC 端口)上与 geth 通信。 您可以通过为 geth 提供 --rpcport 选项来更改它。 ethminer 会在任何端口上找到 geth。 请注意,您需要使用 --rpccorsdomain localhos 设置 CORS 标头。 您还可以使用 -F:3301 在 ethminer 中设置端口。 如果要在同一台计算机上挖多个实例,则需要设置端口,虽然有点无意义。 如果您在私有链上进行测试以太坊收益计算器最新,我们建议您改为使用 CPU 挖矿。
注意:您不需要为 geth 提供 --mine 选项,或在控制台中开始挖掘,除非您想在 GPU 挖掘之上进行 CPU 挖掘。
如果 ethminer 的默认值不起作用,请尝试使用 --opencl-device X 指定 OpenCL 设备,其中 X 是 {0, 1, 2,...}。 使用 -M(基本测试程序)运行 ethminer 时,您将看到以下文本:
12
排除故障:
1个
矿工调试:
12
注意:GPU 挖矿时,geth 上不提供哈希率信息。
使用 ethminer 检查 hashrate,miner.hashrate 将始终报告 0。
使用 ethminer 在单独的 GPU 上使用 eth 进行挖矿
为了在单个 GPU 上挖矿,只需使用以下参数运行 eth:
1个
当客户端运行时,您可以使用 geth 附件或 [ethconsole]() 与其交互。
在多个 GPU 上挖矿
使用多个 GPU 和 eth 进行挖掘与使用 geth 和多个 GPU 进行挖掘非常相似。 确保 eth 节点在 coinbase 地址设置正确的情况下运行:eth -v 1 -a 0xcadb3223d4eebcaa7b40ec5722967ced01cfc8f2 --client-name “OPTIONALNAMEHERE” -x 50 -j
请注意,我们还添加了 -j 参数以使客户端具有可用于与 ethminer 实例通信的 JSON-RPC 服务器。 此外,由于 ethminer 可以为我们挖矿,因此我们删除了与挖矿相关的参数。 每个 GPU 将执行不同的 ethminer 实例:
1个
X 是索引号,它对应于您希望 ethminer 使用的 OpenCL 设备 {0, 1, 2, ...}。 要轻松获取 OpenCL 设备列表,您可以执行 ethminer --list-devices,这将提供 OpenCL 可以检测到的所有设备的列表,以及有关每个设备的一些附加信息。
这是一个示例输出:
12345
最后,--no-precompute 参数要求乙硫矿商不要为下一个时期预先创建 DAG。 但不推荐这样做,因为每次纪元转换时都会中断挖矿。
基准程序
挖矿算力通常以内存带宽来衡量。 我们的实现是用 OpenCL 编写的,它通常得到 NVidia 上的 AMD GPU 的更好支持。 实验证据证实,就价格而言,AMD GPU 的挖矿性能优于 NVidia 同类产品。
要使用基准测试单个设备设置,您可以在基准模式下使用带有 -M 的 ethminer。
1个
如果你有很多设备想要单独进行基准测试,请使用 --opencl-device 选项,类似于上一章:ethminer -G -M --opencl-device X 使用 ethminer --list-devices 列出可能的设备数字替换 X {0, 1, 2, ...}。 要在 Windows 上开始挖矿,首先下载 geth windows 二进制文件。
这时候可能会出现一些问题。 如果出现错误以太坊收益计算器最新,可以输入Ctrl+C中断矿机。 如果报错显示(提示)“Insufficient memory”,说明GPU内存不足,无法挖以太坊。
矿池
矿池挖矿是一种旨在通过共同参与矿工的挖矿算力来解决预期收益问题的合作社(靠挖矿矿工的算力来解决预期收益问题的合作组织)。 作为回报,通常收取 0-5% 的挖矿奖励。 矿池从中央账户提交带有工作量证明的区块,并根据参与者贡献的挖矿算力按比例重新分配奖励。
警告:大多数矿池都包含第三方中央组件,这意味着它们不值得信任。 也就是说,矿池运营商可以拿走你的收益。 谨慎行事。 有许多具有开源数据库的无信任、去中心化的矿池。
警告:矿池只外包工作量证明计算,它们不验证块或运行虚拟机来检查执行事务的状态转换。 这有效地允许矿池在安全方面表现得像单个节点,并且它们的增长构成了 51% 攻击的集中威胁。 确保尊重网络容量分配,不要让矿池增长太大。
矿池挖矿POS vs POW相关资源汇总 原文:参考资料:
文中列表链接请参考《以太坊宅基地文档》第67页1.6.4 GPU挖矿
下一篇我们将介绍《以太坊连载(二十一):账户、交易核心概念及对赌合约解析》
感谢团队 Azure 和 Bob 参与《以太坊宅基地文档》的翻译和验证。