奇亚的三个P图内核简介

奇亚有史以来总共就三个P图内核程序,市面上所有的第三方P图工具都是在这三个内核上做的二次包装,简单说就是给它们加了个图形界面的外皮。

本文以下讨论的缓存占用大小均以K32为标准。

一、P图内核介绍

这三个P图内核分别是:chiapos、chia-plotter和bladebit,下表将bladebit 2.0姑且也算作一个新内核。

功能对比chiaposchia-plotterbladebitbladebit 2.0(开发中)
速度最慢中等最快(未发布正式版,无法评估)
速度量级小时左右主流约20~40分钟约5~15分钟(未发布正式版,无法评估)
内存要求每个任务3.32GiB左右未知(可能是几百兆)最少416GiB(未发布正式版,无法评估)
缓存盘要求每个任务约239GiB少于256GiB不需要(未发布正式版,无法评估)
K范围k32~k35
测试图最小可以k25
k32~k34
测试图最小k26
k32k32
优势可以P k35的大图SSD P图速度最快,使用110G ramdisk能节省大量SSD损耗速度最快、不损耗SSD原生支持内存缓存,并且能自定内存大小,降低内存门槛
劣势速度最慢、多任务调度困难无明显缺点,速度中规中矩硬件门槛高(未发布正式版,无法评估)
开发者奇亚官方团队madMAx43v3rharold-bharold-b

1.1 chiapos

它在奇亚官方客户端中叫做Chia Proof of Space,虽然三个内核都已经集成到了chia官方客户端中,但我还是习惯称呼chiapos为【官方内核】,它是官方内置的第一个P图内核程序,它的代码集成在了奇亚币最核心的chiapos项目中,在chia-plotter发布前它是唯一的P图选择,它的缺点非常多,比如:无法最大化利用CPU、内存等系统资源、多个任务之间无法协调优化,它的低效的实现算法就决定了它最后被抛弃的命运。

1.2 chia-plotter

它是由国外开发者madMAx43v3r开发,它的名字太普通了所以大家也习惯用作者名字称呼它为madmax,一经发布立即碾压了官方内核,作者放出的测试日志显示它的速度来到了42分钟(k32),由于它P图时CPU资源几乎是全程100%,使用时不必像官方内核一样要同时启动多个任务,也不用精心协调调度这些任务,只要启动一个P图任务即可又快又省力地P图了,这也就是为什么有人给它起名:极速快P内核、快P。

1.3 bladebit

作者公开发布软件的消息是他2021年7月7日在YouTube发布了一个P图视频,使用64核ARM 架构Graviton 2 处理器+416GiB内存5分钟P完了一个k32,将P图速度提高到了5分钟级别。

后来奇亚官方在1.2.11版本将个人开发者的两款内核都集成在了官方客户端中,算是得到了官方的认可,harold-b更是被奇亚官方收编,bladebit项目也转移到了奇亚官方github账号下。

二、扩展阅读:全内存、半内存

2.1【全内存】

字面能看出是指P图任务完全在内存中进行,不再损耗SSD,全内存有两种实现方法:

第一种是416GiB内存+bladebit内核

第二种是将至少240GiB内存用软件虚拟为硬盘(也就是RamDisk,说白了就是把内存空间虚拟成硬盘用),使用chia-plotter内核将RamDisk作为缓存目录P图(官方内核理论也能用但还是因为资源无法高效利用不在考虑范围)

bladebit方案RamDisk方案
内存要求至少416GiB至少240GiB
内核bladebitchia-plotter

2.2 半内存

半内存指的是给chia-plotter的两个缓存目录分别使用SSD和RamDisk磁盘,创建一个不小于110GiB的RamDisk,将它配置到chia-plotter的-2参数上,再将另外一个SSD缓存目录配置到chia-plotter的-t参数上。

值得注意的是chia-plotter使用RamDisk几乎不会提高速度,它的唯一的优势是可以分摊75%的SSD损耗到内存上。

另外,bladebit 2.0也是一个半内存方案,准确说它才是原生支持半内存的P图方案,毕竟chia-plotter还需要借助第三方工具将内存虚拟成硬盘,bladebit 2.0目前尚未正式发布,暂不参与讨论。

广告:

老板们的时间不要用来研究P图,花点小钱解放双手,最屌的P图工具请点这里

P夫 v1.3.3

一、新特性

1、修复Windows挂载到文件夹的机械盘无法识别问题

2、分发拷贝功能界面、后台优化

3、其他小改动

二、下载

Linux通用:
https://file.c4dig.cn/pfu-plotter/v1.3.3/pfu-plotter-Linux-v1.3.3.zip

Ubuntu专用:
https://file.c4dig.cn/pfu-plotter/v1.3.3/pfu-plotter-Ubuntu-v1.3.3.zip

Windows:
https://file.c4dig.cn/pfu-plotter/v1.3.3/pfu-plotter-Windows-v1.3.3.zip

P夫 v1.3.2

新版改动略多可能有隐藏bug,图稳定建议等几天再升级。

一、新特性

1、支持mmx币P图。madmax固态、BladeBit纯内存都支持,BladeBit2.0尚不支持。

在此之前虽然支持mmx,但是由于奇亚官方的chia_plot程序问题导致P出的mmx图不能用,这次更换了内核程序彻底解决。

2、修复BladeBit纯内存P图任务无法停止bug

二、下载

Linux通用:

https://file.c4dig.cn/pfu-plotter/v1.3.2/pfu-plotter-Linux-v1.3.2.zip

Ubuntu专用:

https://file.c4dig.cn/pfu-plotter/v1.3.2/pfu-plotter-Ubuntu-v1.3.2.zip

Windows:

https://file.c4dig.cn/pfu-plotter/v1.3.2/pfu-plotter-Windows-v1.3.2.zip

P夫 v1.3.1

该版本尚未稳定,追求稳定不建议第一时间升级使用!

一、新特性

1、新增逐个替换最终目录原有图功能

支持根据p图指纹、新图、老图、日期等各种自定义方式替换

2、解决读取本地fpk、ppk卡死问题

3、修复bb2.0参数模板无法使用问题

替换图功能可以实现逐个替换最终目录中的图,对于直接向挂盘机批量更换图十分方便。

使用场景举例:

场景一:更换助记词重新P图,选择【非当前key】即可逐个将原来指纹的图替换掉。

场景二:老图换新图(新图换老图)

二、下载

2.1 Linux通用版
https://file.c4dig.cn/pfu-plotter/v1.3.1/pfu-plotter-Linux-v1.3.1.zip

2.2 Ubuntu专用版
https://file.c4dig.cn/pfu-plotter/v1.3.1/pfu-plotter-Ubuntu-v1.3.1.zip

2.3 Windows版
https://file.c4dig.cn/pfu-plotter/v1.3.1/pfu-plotter-Windows-v1.3.1.zip

P夫 v1.2.9

本次主要更新了对bladebit2.0的diskplot适配,bladebit2.0还是beta测试版,以后它可能会有变动,当前仅仅是方便大家测试bladebit2.0 SSD+内存 P图。

原有的P图功能是不受影响的,可以替代1.2.8使用。

  • 增加了bladebit2.0 半内存(不足416G全内存的主机)
  • 修复了某些永久授权用户无法离线激活的问题
  • 其他一堆小问题修复

Linux通用:
https://file.c4dig.cn/pfu-plotter/v1.2.9/pfu-plotter-Linux-v1.2.9.zip

Ubuntu专用:
https://file.c4dig.cn/pfu-plotter/v1.2.9/pfu-plotter-Ubuntu-v1.2.9.zip

Windows:
https://file.c4dig.cn/pfu-plotter/v1.2.9/pfu-plotter-Windows-v1.2.9.zip

P图需要的几个key分别从哪里找到?

  • Farmer public key(即农民公钥、fpk,新图老图都需要它)
  • Pool public key(奖励池公钥、ppk,P老图用)
  • Pool contract address(合约地址,P新图用)

查看自己奇亚账号的这三个参数的方法非常简单,在奇亚客户端就能找到。

一、Farmer public key和Pool public key的获取方法

第一种:客户端界面查看:

打开奇亚客户端(以1.3.3为例),点击右上角的【退出】按钮回到助记词指纹选择界面,单击助记词右侧的眼睛👁图标后会显示账号信息,其中【农民公钥】就是Farmer public key、【奖励池公钥】就是Pool public key。

第二种:命令查看:

以Windows系统为例,依次运行下面两个命令:

cd %USERPROFILE%\AppData\Local\chia-blockchain\app-*\resources\app.asar.unpacked\daemon

chia keys show

二、合约地址(Pool contract address)的查看方法:

第一种:客户端查看

点击【农业合作社】的标签,这里列出的就是已经创建的合作社,如果还没有请先创建。找到想要P图的合作社,按下图操作即可获取到Pool Contract Address。

第二种:命令

cd %USERPROFILE%\AppData\Local\chia-blockchain\app-*\resources\app.asar.unpacked\daemon

chia plotnft show

使用P夫在Linux下P图以及网络传图方案

目前比较好的P图方案应该是Linux系统P图到SSD,然后通过局域网共享拷贝到【存图机】的机械盘上。

下文例子仅使用3台P盘机,更多的P盘机、存图机、网络拓扑以及单个存图机的带宽上限均不在本文讨论范围,请根据自己的实际情况做规划,本文示例仅供参考。

一、方案简介

1、P图机安装Centos系统,将SSD作为中转盘挂载到/ssd目录(可以随便指定,下文所有例子均假设它挂载到了该目录),运行P夫开始P图。

2、P图机安装samba服务将/ssd目录设置为共享。

3、【分发机】分别将每一台【P盘机】的共享目录映射为本地驱动器,然后运行P夫【分发拷贝】功能监控这三台P盘机的/ssd目录即可实现从P图机自动拷贝到机械盘。

二、硬件网络架构

仅供参考,图中仅展示3台机器时最经济的网络方案

2.1 P盘机设置

每台P盘机要求有一张万兆网卡用于局域网传图,上图例子中需要给三台P图机的传图网卡手动设置IP,假如依次是:192.168.5.4、192.168.5.5、192.168.5.6。

P盘机设置samba服务将/ssd目录共享。设置方法见《Centos 一键设置共享目录》

万兆网卡理论传输速度1.25GB/s,假设平均传输速度只能达到理论的60%,传输一张k32图大概需要134秒,只要P一张图的速度低于134秒是完全够用的。

P盘机使用P夫创建BladeBit任务时无需再设置【中转盘】选项,将/ssd目录添加到最终目录即可,不要忘记在最终目录上右键勾选【无限空间】(目的是让P夫知道该最终目录能存无数个图,而不是根据磁盘空间大小自己计算P图数量)。

2.3 存图机(分发机)配置

P图机需要有3个万兆网口分别与三台P盘机相连,三个网卡的IP均需手动设置,假设设置为:192.168.5.1、192.168.5.2、192.168.5.3

按照下图方法映射为网络驱动器

映射后如下图,它也有盘符,跟读写本机磁盘一模一样。

存图机分发拷贝设置如下图:

CentOS一键安装向日葵

CentOS安装向日葵总提示缺少依赖的两个库,yum更新了也搜索不到,只能手动去网站下载之后安装,懒得列出来,直接用我下载好的安装就行了。

下载这个压缩包,运行里面的sh脚本文件就自动安装上了。

只在CentOS 9上做了测试,其他Centos版本不保证完美能用。

https://fork-linux-file.c4dig.cn/pfu-plotter/others/SunloginClient_Centos9.tgz

解压后进入文件夹,打开终端执行命令:

chmod +x ./installSunFlower.sh && sudo ./installSunFlower.sh

Centos 一键设置共享目录

Liunx配置共享文件夹大概分为这几步:

1、关闭防火墙

2、安装&配置Samba

3、将samba设置为开机自启动

我将这几步写成了自助操作脚本,依次将脚本中的1、2、3步执行后即可配置成功。

脚本用法:

打开终端,拷贝下面这行命令,后面加上自己想要共享的路径即可执行。

wget https://file.c4dig.cn/pfu-plotter/others/centos-smb.sh -O a.sh && chmod +x a.sh && sudo ./a.sh  [想要共享的目录]

下图例子中的共享目录使用的是/ssd,请改成你自己的共享路径。