GigaHorse 3.0 压缩图解读

Max于2024年3月7日发布了新版的压缩方案,个人感觉这方案作者应该早就测试过,只是要求太高没有发布,现在已经有对手Drplotter发了超高门槛的压缩方案,他也把自己的方案发布出来。

实测(ubuntu+mz32+4090d+256内存+970evo plus)P图一个c33稳定在1分10秒左右(排除第一个图比较慢),单就P图速度来说比Drplotter要快很多。

挂图评估数据见底部表格。

v3新方案简介

  • v3的压缩等级有8个,26、27、28、29、30、31、32、33,其中c30~c33本次已经发布,c26~c29尚未开发完成;
  • 作者说c26~c29的压缩比率可以用来替换原来的c16~c19的图;
  • 这是新的图格式,想使用必须升级钱包、收割机等所有giga的程序;
  • P图最低需要8G内存、4G显存,只能用显卡P图,不能用CPU;
  • c30~c33只能用NVIDIA显卡挂图,gtx9xx系列显卡起步;
  • 只有K32,仍然支持老图和新图

GigaHorse 3.0 挂图能力表

Chia压缩图新势力——DrPlotter研究报告

本文不包含项目文档中的如何使用部分,稍后有需要会单独开贴介绍。

一、快速了解

  1. 项目主页:https://github.com/drnick23/drplotter
  2. 与现有的GigaHorse和NoSSD相比,DrPlotter更像GigaHorse,
    它也提供P图+挂图的专用程序、能自由切换池子和solo、提供远程解压功能;
  3. 有两个压缩等级,名字是Eco3x和Pro4x,简单说就是原图大小的三分之一(35.2GiB)、四分之一(24.2GiB);
  4. 门槛巨高,P图和挂图只能用24G大显存的显卡:3090、4090、A5000,
    3090只能挂470TiB(物理磁盘容量),Chia过滤器改为256之后挂图能力会减半只能挂235TiB;
  5. 也是一套未公开的压缩方案,与GigaHorse和NoSSD一样;
  6. 只能P新图(就是那种合作社的图),不能P老图;
  7. P图速度一般,大概5~6分钟一个图;
  8. 不能选K值,只有K32;

二、作者自述

(以下内容是地瓜意译的,可能有不太准确的地方)

DrPlotter是我投入热爱和精力开发了两年的成果,最初只是单纯的热爱,现在致力于奇亚压缩图领域为Chia发展添砖加瓦。

为了能保持项目的可持续性,我没有采取随机手续费或其他改变手续费的做法来抽水,奇亚农民的一小部分系统资源会被用来当做我个人的图(地瓜的理解是将你的磁盘和显卡的一部分被他征用P成了他的图,收益自然归他,说的比较模糊目前只是猜测)。

当然这些被征用的资源损耗已经在统计时排除掉了(地瓜的理解:作者上面例子里跟我们说3090一半算力能挂100TiB Pro4x的压缩图,也许实际上是能超过100TiB的,真实的挂图能力可能是105TiB,表面上图能压缩到35G,实际可能里面32GB是农民的3GB是归属作者的,这也是猜的),我保证这个抽成的方式和比例不会变,确保您现在看到的结果与未来都是一致的,这样您可以轻松规划自己的农场。

这个压缩技术方案的细节是不公开的,但我仍然致力于为Chia提供高效、顶尖的工具。

三、本压缩方案的工作流程

  • DrPlotter:专用P图程序,P出的压缩图就是DrPlots;
  • DrPlots:专用的压缩图格式,后缀是.drplot;
  • DrChia Harvester:完全等价于Chia的收割机程序,可以无缝衔接到Chia官方的Farmer节点上(主钱包里自带的挂图主要模块),它的使用命令也与Chia收割机完全相同;
  • Solver Server:运行了DrSolver的服务器;
  • DrSolver:远程计算程序,给收割机提供算力支持,这跟GigaHorse程序里面的chia_recompute_server程序的职责是一样的;

这个工作流程跟GigaHorse非常像,不同的是它不需要专门的主钱包程序,仍然复用Chia官方的主钱包程序。

基于这个工作逻辑可以得到几个结论:

  • 可以在现有的Chia钱包的基础上增加替换某个收割机,互相不影响;
  • 收割机本地可能需要单独运行DrSolver程序,否则无法使用;

四、配置要求

4.1 P图配置最低要求

  • 24G显存的显卡:RTX 3090、RTX 4090、A5000
  • 128G内存
  • PCIE 4.0 X16 插槽的主板(暂不清楚用PCIE3.0会有多大劣势)
  • 64位CPU
  • Debian/Ubuntu系的Linux系统

4.2 专用远程解压服务DrSolver最低要求

  • RTX 3090 24GB
  • Debian/Ubuntu系的Linux系统

4.3 专用收割机的最低硬件要求

  • 每PiB物理硬盘约需要4GB显存
  • Debian/Ubuntu系的Linux系统

五、两种压缩比率混合以充分利用显卡

为了最大化利用显卡资源,可以通过调整Eco3x和Pro4x两种图的数量比例实现。

假设有335TiB物理磁盘(大概23个16T硬盘),一个RTX 3090,当前奇亚过滤器为512。

其中235TiB磁盘P成Eco3x,占用约50%的3090;剩余的100TiB P成Pro4x,占用剩余的50%的3090算力挂图,这样就达到了对显卡的利用率最大化,最终的有效算力就是235TiB x 3+100TiB x 4 = 1105TiB ≈ 1.07PiB。

Windows系统查询commitmentAtxId

查询方法

  1. 确保已经运行spacemesh官方的钱包程序或go-spacemesh程序并同步完成;
  2. 下载grpcurl程序包后解压到任意文件夹;
  3. 用记事本新建【查询atxid.ps1】的powershell脚本文件,拷贝以下代码后保存;
  4. 右键【查询atxid.ps1】选择【使用Power Shell运行】。
Write-Host "查询前请确保smh钱包已经同步!!"
Write-Host "开始从go-smh或smh钱包查询信息,时间略长请稍等..."
# 执行命令并将输出存储到 $result 变量中
$result = .\grpcurl -plaintext 127.0.0.1:9092 spacemesh.v1.ActivationService.Highest

# 将输出的 JSON 字符串转换为 PowerShell 对象
$jsonObject = $result | ConvertFrom-Json

# 访问所需的属性值
$highestActivation = $jsonObject.atx.id.id

# 输出属性值
# Write-Host "解码前:Highest Activation ID(注意这不是P图用的): $highestActivation"

$bytes = [Convert]::FromBase64String($highestActivation)
$hexString = [BitConverter]::ToString($bytes) -replace '-'

$output = "解码后最新的atx id(可以P图用):$hexString"
Write-Host $output

pause

执行后如下图红框内就是P图用的commitmentAtxId

P夫的Spacemesh P图教程

一、基本概念

  1. smh的图文件多大?
    不用理解下面这个复杂的换算关系,P夫P图的时候只关心每个磁盘打算存多少GB的图就足够了,通常是5~8TB。
    一个盘一个完整图,由若干单元组成,每个单元由多个小文件组成。
    整个图包括至少4个单元,每个单元固定64GB,每个单元内有若干小文件;
    整个图最小256G,因为4个单元 x 64G=256GB;
    单个小文件默认4GB,如果用官方GUI钱包P图默认每个2GB;
    当单个图内小文件是4GB时,每个单元内的图文件总数是16个(64GB➗4GB),当单个图文件是2GB时总数32个(64GB➗2GB),当然你也可以任意修改单个小文件的大小;
    所以默认情况下如果一个图有4个单元,它里面包括64个图文件(或128个)。
  2. 我有14T的机械,可以把硬盘P满吗?
    不行,以机械盘平均200MB/s的读取速度,理论12个小时能读取8437GB,太多的图根本扫不完。
  3. 那么不管多大的机械盘,只能存不超过8437GB的图吗?
    基本上是的,除非你的机械盘读取性能超强。
  4. 图格式是什么?
    .bin后缀,还包括了postdata_metadata.json、key.bin等文件
  5. P图的硬件要求
    1个显卡需要约150M内存,CPU无要求,显卡最重要,参照P图速度表,pcie速度不重要;
  6. CPU能P图吗?
    能,速度极慢,极不推荐;
  7. 能多卡同时P图吗?
    可以
  8. 能多台主机的多个显卡同时P同一个图吗?
    可以,但P夫现在不支持,除非要以最快的速度P完一个完整图否则不推荐,因为这些图最终还需要放在一起进行合并操作。
  9. 整个图里细分这么多小文件,中途中断了能继续P吗?
    可以
  10. P图的commitmentAtxId从哪里找?
    它是当前链上最新的atx id,P夫用户直接点【自动获取】按钮即可。
    最好每次P图查询最新的id来使用,此时2023年12月21日最新的atx id是:B08B4CF7C7038A7DE6C31173FAB27C8479A0AC2F083A3DDC4803F3D12147A6A9

二、P夫中的spacemesh P图参数解析

【P图显卡数】:即将用来P图的显卡数量。

假如有8个显卡全部用于P图设置8,如果想使用其中的5个进行P图设置5,此时软件会默认使用0~4号显卡;

【指定显卡序号】

如果显卡的序号不连续,比如有8个显卡但是只想使用其中的5个,并且这5个显卡序号不连续,此时可在【指定显卡序号】中填入这5个显卡的序号,例如:0,1,3,4,5

【每个盘P图量】:每个最终目录里的磁盘的存图量,必须是64的倍数,不能低于256。

  • 如果设定了1024,P夫会在每个最终目录P一个1024GB的图(多个bin文件总共1024G);
  • 可以给每个磁盘设定自己的P图量,在最终目录表格中双击单独设定该盘的【计划P图容量】数值;
  • 如果机械盘空闲空间是500G,此时如果设置了512是无法生效的,P图时会自动调低到448G。
  • 每个最终目录磁盘如果不设定则使用默认的【每个盘P图量】数值;

【commitmentAtxId】:该参数需要使用smh链上最新的atx id,P夫用户可以通过【自动获取】按钮自动获取最新atx id。

Linux系统运行了官方钱包或go-spacemesh后可以通过以下命令获取:

./grpcurl -plaintext -d '' 0.0.0.0:9092 spacemesh.v1.ActivationService.Highest | jq -r '.atx.id.id' | base64 -d | xxd -p -c 64

Windows系统查询方法点这里《Windows查询smh的commitmentAtxId方法》

【指定Node ID】:这个Node ID 并不是用户的账户信息,它只是当前P的图文件的公钥;

自己给自己P图时不用填写,软件会自动生成;代P时理论上是需要提供该公钥的,用户自己保留私钥,向代P老板提供公钥。

多说一句,如果是长期代P的老板通常不会拷贝图骗钱,因为所有用了相同图的用户都会被ban,很快就会暴露,通过拷贝图骗人是不明智的。推荐一个又简单又能避免被代P老板欺骗的方法是指定一个bin大小,比如你只要bin文件是10GB(或者20、30这种冷门bin大小)的图。

【单个图文件大小】:单个bin文件的大小。

一个磁盘一个图,一个图里有若干个bin文件,这些bin文件的容量加在一起就是整个图的大小,调大后管理起来可能更容易 ,不建议特别大导致一个图无法被多个显卡分配。

例如:单个bin文件设置为64G,图文件总量是256G,总共有8张显卡,一个256G的图只能分成4个bin,由于单个bin文件太大导致数量不够分给8张显卡,建议最大不要超过=图总量➗显卡数,总之这个数值的设置原则是最好能足够给显卡分配。

【最终目录】:所有待P图的机械盘。

NoSSD 2.3rc

NoSSD作者刚刚在电报群发布了2.3的预览版本,增加了一些新特性和功能完善。正式挖矿用户建议等等看,别急着更新。

更新内容

括号中都是笔者加的注释。

  1. 当图文件新增或删除后不再提示访问错误;(常见的无关文件终于不再进行警告了)
  2. 为 1070 等低端 GPU 提供更准确的基准测试;
  3. 新增了 --no-stop 参数让P图程序保持在等待状态直到磁盘有空间继续P图;(P夫用户应该很熟悉的选项,磁盘满了立即停止还是一直监控也可以自己设定了);
  4. -d 设置目录增加了 * 模糊匹配支持;(方便了纯命令挂盘的用户)
  5. 删除了绘图完成后的短暂延迟;(看字面意思可能是对P图速度的优化,未验证)
  6. 尝试在Windows系统上避免申请共享内存,当显存不够的时候;
  7. 新增了 --rescan-interval 选项来自定义重扫描间隔时间;(如果挖矿的盘已经满了并且不再继续P图进去,不需要这个参数,并且最好设置 --no-rescan 参数禁用不必要的扫描)
  8. --emulate-filter 256 绘图过滤器仿真模式。 现在可以像“–emulate-filter 256”一样测试使用较低绘图过滤器的挖掘;(可能是方便现在模拟测试将来filter变成256时对挂盘显卡的性能要求)
  9. 增加了并发文件扫描,加快启动速度;(解决单机带盘多的用户启动慢)
  10. 增加了--no-mining选项,相当于命令里不设置-a chia地址;(没啥用)
  11. 更稳定地运行挖矿当带图量接近带图上限时;
  12. 增加了-v-vv 两种挂盘时的详细日志级别可选;
  13. 对于无关的文件告警只会在 -vv 详细日志界别中出现;

下载地址

Linux
https://file.c4dig.cn/plotter/linux/nossd/nossd-linux-v2.3rc3.zip

Windows
https://file.c4dig.cn/plotter/windows/nossd/nossd-windows-v2.3rc3.zip

P夫NoSSD 显卡P图双开的方法

P夫多开非常容易,推荐使用方法二。

下面两个例子是单卡双开,如果是双卡双开,创建两个P图任务时调整【P图显卡】参数为目标显卡即可。

方法一:常规思路

连续创建两次P图任务即可,注意两个任务的中转盘和最终目录不能相同。

到此双开完成。

方法二:灵活自由

依然要创建两次P图任务,但是不再指定最终目录,将中转盘设置到最终目录的位置。

打开【分发拷贝】功能,将中转盘设置到源目录,所有机械盘设置到最终目录,启动即可。

优点是不需要在P图任务中指定机械盘,更换机械盘时不必重启任务。

NoSSD v2 研究报告

作者无私发布这些信息纯属自干五,对作者唯一的好处可能就是给P夫做做广告,请伸手党自重,小白用户能如此高密度地获取到这么多有用的信息还要什么自行车不要把一切当做理所当然。

NoSSD官方网站2023年9月10日推出了显卡P图、挂图的V2版本,本文在《NoSSD的压缩图研究》的基础上补充一些V2的一些技术性指标和常见问题解答,没接触过NoSSD压缩图的用户请务必看看前面《NoSSD的压缩图研究》的总结。

一、NoSSD V2的基础数据表格

压缩等级C10C11C12C13C14C15
图大小 (GiB)70.864.960.857.353.850.3
较标准图收益提升43%56%67%77%88%101%
4090挂图能力 (PiB)1264425147.53.1
1080 Ti挂图能力 (PiB)2494.42.51.20.5
最低挂盘显存(GiB)0.130.250.841.312.304.49
推荐挂盘显存(GiB)1.021.031.542.594.206.82
纯内存P图内存(GiB)120.3116.2108.1108.1104.1104.1
显卡P图需要显存(GiB)4.95
注:收益提示是指固定空间的存图量提升,实际还要扣除NoSSD的3.5%手续费以及矿池的爆块幸运度的波动。

二、基本结论

  • 想速度快仍然要用SSD,不管是全内存用SSD中转还是不够全内存用SSD作P图缓存;
  • CPU P图在v2也进行了优化,取消了原来的spt压缩到fpt的步骤,整体速度也大幅提升;
  • 目前C10~C15的图只能用GPU挂,C1~C5的图只能用CPU挂;
  • 目前NoSSD没有类似GigaHorse的远程显卡解压功能;

三、P图常见问题

  1. 能边P边挖吗?
    能,如果用单卡边p边挂对显存有要求,P图需要约5GB,挂c15图需要最少4.49GB显存(从上表可查),加一起就是约9.49GB,显卡至少要有10GB显存。 双卡只要分别符合P图和挂图对应的显存要求就可以。
    不建议,群友反馈实际操作起来既拖慢P图速度又会出现挂盘超时。
  2. 使用CPU P图时系统内存最低多少?
    4.21GB
  3. 可以单卡双开P图吗?
    可以。要求显卡至少有10GB显存,因为每个P图任务需要4.95GB显存。
  4. 新的C10~C15图只能用显卡P吗?
    不是,CPU也能P,速度也还可以接受,只是没有显卡那么快,显卡依然是第一选择。
  5. 显卡全内存P图需要多少系统内存?
    104.1GB~120.3GB之间,压缩等级越高需要的内存越少,具体看上面表格。
  6. P图一定要用SSD吗?
    不是,NoSSD的噱头就是不用SSD,但仍然强烈建议用SSD中转,能大幅提高P图速度。
  7. P图必须用【全内存】的模式吗?
    不是,全内存是完全不需要SSD辅助的P图方式,节省SSD的损耗;系统内存不足128G的用户使用内存+缓存盘 P图是可以的,缓存盘可以SSD也可以机械盘,总之一句话用了SSD就快。
  8. 我16G内存可以P图吗?
    可以,NoSSD的P图任务最低只要4.21GB内存,只是这会大幅增大SSD的读写量。

四、挂盘常见问题

  1. 我的3080、3070、1060……等等显卡能挂多少图?
    目前都是软件的评估结论,没有实际的挂盘测试数据,软件测试的显卡挂盘能力表格见本文末尾的表格。
  2. NoSSD挂盘可以像GigaHorse一样用远程显卡解压吗?
    不能,NoSSD暂时没有远程显卡解压的功能。
    可以尝试在挂盘机挂载网络共享磁盘的方式实现1卡多主机挂盘(作者并未实际测试网络带宽以及耗时,仅做理论推荐)。
  3. 假如我P了C14的图,能跟GigaHorse的C8图一起挂吗?
    能,GPU性能足够的前提下显存也要够。
    giga C8挂盘需要约5.77GB显存,NoSSD的C14挂盘需要最少2.3GB(推荐4.2GB)显存,显卡至少要有8.07GB显存(5.77+2.3),单卡挂盘时8G显存可能不够。
  4. 新的C15图能跟原来的5级压缩的NoSSD图能一起挂吗?
    能,需用最新的2.x版本客户端来挂。原来的C5以下的压缩图依然只能用CPU挂,新的C10~C15的压缩图只能用GPU挂。

附录1:不同型号显卡的理论挂盘数据。

表格由群友疯狂星期四收集整理。

给Gigahorse的Windows钱包加个图形界面使用

经本文中的gigafarmer-win-pfu-v2.zip中的giga钱包版本较老,如果想继续使用本文的方法,请下载新版本的钱包程序替换进去。

giga钱包最新版下载地址:https://doc.easyfarmer.org/web/#/5/31

mmx压缩图方案的最后一个模块——Windows版本的定制奇亚钱包已经发布,但它仍然是命令行版本,本文介绍用ForkFarmer给它加个图形操作的界面。

注意 :

mmx提供的这个定制钱包跟奇亚官方钱包默认会冲突,只能运行一个,该定制钱包能完全替代官方钱包的功能;

如果害怕弄不好把奇亚官方钱包的数据也破坏掉,建议完整备份C:\Users\用户名\.chia\mainet整个文件夹;

ForkFarmer简单说就是一个集中管理奇亚和奇亚山寨币的统一客户端,不用逐个启动山寨币的钱包管理维护。

一、准备工作

  1. 下载gigafarmer-win-pfu-v2.zip工具包,解压在P夫的文件夹内(非常重要,除非你自己会搞定Java运行环境);
这四个文件就是本文会用到的

2.初始化奇亚客户端的mainnet目录。

如果本机已经运行过官方钱包,那么在一定已经存在 C:\Users\用户名\.chia\这个文件夹,建议关闭官方钱包,将.chia重命名成.chia2,一旦mmx定制钱包不想用了可以直接恢复到官方钱包的状态。

双击【生成mainnet】即可在C:\Users\用户名 目录下生成.chia文件夹。

3.双击导入助记词,如果直接使用原来的mainnet可以跳过本步。

将助记词的24个单词粘贴到key.txt内,双击【导入助记词.bat】后即可导入,关闭该命令窗口即可。

准备工作结束。

二、使用ForkFarmer

1、双击【启动ForkFarmer.bat】即可启动ForkFarmer图形程序。

界面上可能会显示已识别到的奇亚程序,可以右键-【操作】-【隐藏币种】将它隐藏,因为它识别到的是官方程序不是我们需要的。

2、在界面右键【配置未识别币种】,在弹出的窗口中分别配置如下内容:

假设你本机的P夫的文件夹在D盘:D:\pfu-plotter-Windows-v1.4.9

【config所在目录】C:\Users\<你的系统用户名>\.chia\mainnet\config\config.yaml

【exe所在目录】D:\pfu-plotter-Windows-v1.4.9\chia-gigahorse-farmer\chia.exe

【日志所在目录】C:\Users\<你的系统用户名>\.chia\mainnet\log\debug.log

填好后点击确定保存如下图界面,会提示重新启动软件生效,按要求重启。

3、区块数据库导入

如果是新生成的mainnet里面db是空的,需要从头同步区块db,此时可以从自己原来的mainnet/db目录拷贝数据到C:\Users\<你的系统用户名>.chia\mainnet\db里。

如果就是想从头开始同步数据,跳过此步。

4、启动mmx专用钱包

如果第二步里添加的数据没错,通过右键【操作】-【启动】即可启动钱包了。

软件界面刷新较慢,如果钱包正在同步红色圆点会变成橙色,同步成功会变成绿色。

首次启动防火墙提示请【允许访问】。

由于我已经事先同步完成,状态圆点已经变成绿色,挖矿状态:Farming 表示正在挖矿中,到此已经把mmx的专用钱包启动了。

5、把农田目录配置到钱包中

第一种方法:去原来奇亚mainnet/config/config.yaml里面拷贝原来配置好的图目录粘贴到新的config.yaml中。

第二种方法:在界面右键【查看】-【打开命令行】,在cmd窗口内输入下面命令即可添加一个图目录。

chia plots add -d D:\plot

第三种方法:编辑目录内提供的【批量添加图目录.bat】脚本,把所有目录按此编辑好后双击运行即可批量导入。

chia-gigahorse-farmer\chia plots add -d D:\
chia-gigahorse-farmer\chia plots add -d E:\

三、其他常用操作

1、在币数据行上右键【查看】-【查看日志】/【查看配置文件】,能实时查看日志和配置文件。

2、软件底部能看到钱包的余额变动情况,还能直接操作转账。

四、常用命令

在列表里的币数据行上右键【查看】-【打开命令行】,所有的操作都可以在这个命令行内完成。

chia plots show 查看所有已识别的图

检测某个图的有效性:chia plots check -g 图文件名(可以只填部分字母,会自动模糊匹配)

添加图目录:chia plots add -d E:\

删除图目录:chia plots remove -d E:\

查看挖矿状态:chia farm summary

添加节点:chia peer -a full_node ip:port

查看同步区块高度:chia show -s

查看已连接的节点IP:chia peer -c full_node

查看钱包余额:chia wallet show -f 指纹

Win系统用wsl运行mmx的奇亚的锄头

本教程中的giga-farmer版本是giga5,最新的已经是giga7,请看最新的教程:https://doc.easyfarmer.org/web/#/5/27

Gigahorse显卡P图已经支持奇亚,锄头暂时只有Linux版本,本文使用Windows的Linux子系统功能运行该Linux版本锄头来挂奇亚的压缩图。

本文方法可以继续参考、脚本也能继续用,但是下载链接中的chia-giga-farmer程序已经是老版本,目前win版本已经基本能用,不建议新手继续尝试wsl。

一、准备工作

注意wsl内访问Windows系统磁盘的路径默认是/mnt,假如想配置图目录 C:\MMX\11 配置到锄头内要设置成 /mnt/c/MMX/11
  1. 下载程序包 https://file.c4dig.cn/wsl-gigafarmer2.zip,解压在D盘(别放桌面,一会不好找),解压后就是:D:\wsl-gigahorse-farmer。(注意不要嵌套双层wsl-gigahorse-farmer目录,否则变成了D:\wsl-gigahorse-farmer\wsl-gigahorse-farmer)
  2. 开启Windows的WSL功能,然后打开windows应用商店Microsoft Store搜索ubuntu,下载Ubuntu22.04
  3. 将本程序包解压在D盘(别放桌面,一会不好找),解压后就是:D:\wsl-gigafarmer
  4. 打开D:\wsl-gigafarmer\plot-dir.txt,把所有的图目录配置在里面
  5. 打开D:\wsl-gigafarmer\key.txt文件,删除原有的例子。把自己的助记词的24个单词复制进去,保存关闭。
  6. 用文本编辑器打开 pfu.sh脚本 ,修改首行代码chia_root变量值,该变量用来定义锄头的mainnet路径,找一个大于150GB的SSD给它用。这里举例用D:\abc\mainnet chia_root设置成/mnt/d/abc/mainnet,假如是F盘就设置成/mnt/f/mainnet
  7. 启动WSL的Ubuntu22.04,首次需要初始化账户和密码,按提示操作即可。
  8. 依次执行下面两条命令,不包括冒号
第一个命令将d盘的锄头程序拷贝到Ubuntu中: cp -rf /mnt/d/wsl-gigafarmer ~                      
第二个命令启动自动化脚本: ~/wsl-gigafarmer/pfu.sh

执行成功后能看到如下的界面,开始进行下一步初始化系统。

二、初始化系统( 初始化操作系统、锄头客户端、导入助记词)

初始化系统和锄头:在脚本界面,依次输入并执行这几个批处理命令:initf、initm、initk、initp。

  1. initf:不必多次执行,用来初始化操作系统和锄头的依赖库
  2. initm: 初始化奇亚的mainnet,一定要提前编辑pfu.sh里面的chia_root变量值为你想要设置的mainnet路径
  3. initk:导入助记词,中间会出现提示让输入内存,直接回车跳过即可。
  4. initp:将plot-dir.txt内配置的图目录添加到锄头。

三、锄头相关操作

启动锄头:继续在pfu.sh脚本内输入start回车 启动锄头,或者在wsl操作系统的命令界面输入:cd ~/wsl-gigafarmer/chia-gigahorse-farmer && ./chia.bin start farmer -r 回车。

停止锄头:继续在pfu.sh脚本界面输入stop 回车 或者在wsl的系统命令界面输入:

cd ~/wsl-gigafarmer/chia-gigahorse-farmer && ./chia.bin stop all -d


查看锄头的运行日志:输入log 回车(可以启动多个wsl窗口,一个专门看日志,一个用来操作)
查看挖矿状态(包括同步状态等):输入3回车

正常能够看到下图的内容,Farming status : syncing (正在同步区块) farming(挖矿中)

Total size of plots能看到已经挂上的农田总量

导入下载好的区块db

  1. 先用上面的方法停止锄头
  2. 清空1.6中自己设置的锄头mainnet目录D:\abc\mainnet\db下面的所有文件
  3. 将下载的奇亚db或者自己原来就有的mainnet/db下面的所有文件拷贝到D:\abc\mainnet\db下面
  4. 重新启动锄头

四、其他日常操作

1、启动自动操作的脚本:
~/wsl-gigafarmer/pfu.sh

2、查看锄头运行日志:
用1的方法先启动脚本,输入log回车
取消查看日志按:ctrl + c (没错就是[复制]的快捷键)

3、查看锄头状态
用1的方法启动脚本,输入3回车

2、添加一个农田目录到锄头
cd ~/wsl-gigafarmer/chia-gigahorse-farmer && ./chia.bin plots add -d /mnt/f/plot
该命令是把F:\plot加入到锄头的农田目录,当然最方便是去mainnet/config/config.yaml里面直接修改

3、从锄头移除一个农田目录
cd ~/wsl-gigafarmer/chia-gigahorse-farmer && ./chia.bin plots remove -d /mnt/f/plot

4、矿池操作
稍后再写

五、已知问题

mainnet目录设置在外部ntfs磁盘上时候,奇亚会提示以下权限过大的问题,忽略即可。

NoSSD P图时使用SSD损耗大吗?

损耗非常小,比起madmax等传统P图工具的损耗量简直不值一提。

结论:NoSSD的P图任务(非压缩)对SSD读写消耗量跟分配的内存成反比,内存越多损耗越少。

测试用例还没全部完成。等待后续更新

测试数据

P图总数量101010.4(注1)
P图任务数222
压缩任务数000
压缩等级555
P图任务内存122 GB
(默认)
61 GB12 GB
SSD总写入量1330 GB4056 GB9466 GB
平均单个图写入约88 GB约 365GB约900 GB
SSD总读取量0 GB2743 GB约 8000 GB
平均单个图读取量0 GB约274 GB约 800 GB

注1:测试完10个图后又多p了0.4个图左右。