参考¶
使用¶
Bminer在命令行中支持以下操作。您可以运行 bminer -help
来得到全部选项。
选项 |
默认 | 描述 |
---|---|---|
-api string |
null | Bminer服务的REST API端口。 例如 127.0.0.1:1880 。 未指明时,REST API是关闭的。 |
-devices value |
null | Bminer运行的GPU设备的ID列表。若未规定,则Bminer会运行在所有的CUDA设备上。 |
-failover value |
immediateNext |
Bminer在提供多个挖掘URI时的故障转移策略。 Bminer会尝试重新连接到下一个或者随机选择一个可用的矿池。目前支持的策略为:sameHost (重试当前URI), immediateNext (连接下一个URI) 以及 random (随机选择一个URI)。 |
-gpucheck uint |
90 | Bminer检查CUDA设备是否已经挂了的时间间隔(单位:秒)。设置为0以禁用检查。 |
-logfile string |
null | 输出日志到文件。 |
-max-network-failures |
-1 | Bminer尝试从网络失败中重试的最大次数。默认-1会一直重试。 |
-max-temperature int |
85 | GPU的温度的最高限制。当温度超过设备限制,Bminer的运行速度会降低。 |
-no-runtime-info |
禁止Bminer收集运行信息。 | |
-no-timestamps |
删除日志消息中的时间戳。 | |
-nofee |
禁用费用,但也禁用了一些优化。 | |
-pers |
BgoldPoW |
为 Equihash 144,5 算法币种自定义参数字段,可以设置为auto。 |
-share-check |
900 | Bminer检查是否过去一段时间有已接受解的数量的时间间隔(单位:秒)。设置为0会禁用该项检查。 |
-strict-secure |
连接到启用SSL的Stratum服务器时验证服务器的证书。 默认是关闭的。 | |
-uri value |
Bminer应该挖掘的URI列表(逗号分隔)。 它的格式是 <scheme>://<username>[:<password>]@<host>:<port> 。注意,对于多URI列表挖掘,<scheme> 必须一致。 |
|
-uri2 value |
Bminer双挖的第二种币连的矿池URI列表,用逗号分隔URI有固定格式,即:<scheme>://<username>[:<password>]@<host>:<port> 。目前Bminer支持Scheme blake14r:// blake2s://,作为以太坊双挖时候的第二Scheme。 |
|
-dual-subsolver int |
-1 | 双挖子求解程序,有效值是0,1,2,3。默认是-1,即自动调整。 |
-dual-intensity int |
0 | 第二币种挖矿强度. 有效值是 0 到 300. 默认为 0, 即自动调整。 |
-intensity |
6 | AE / Grin 挖矿时的CPU强度。有效值为 0 到 12。 |
-watchdog |
true |
自动从挂的GPU中重启恢复。如果watchdog被禁用,Bminer会在出现错误的情况下退出。 |
-version |
输出版本信息并退出。 |
指定 URI¶
Bminer通过URI来配置矿池和用户信息。URI的格式为 <scheme>://<username>[:<password>]@<host>:<port>
。根据RFC 3986标准,scheme指定了工作量证明(PoW)算法以及网络协议。以下为Bminer支持的PoW算法和网络协议:
PoW 算法 | 网络协议 | 协议 |
---|---|---|
* Equihash | Stratum | stratum:// |
* Equihash | Stratum over SSL | stratum+ssl:// |
* Equihash 144,5 | Stratum | equihash1445:// |
* Equihash 144,5 | Stratum over SSL | equihash1445+ssl:// |
* Zhash | Stratum | zhash:// |
* Zhash | Stratum over SSL | zhash+ssl:// |
* Ethash | Stratum | ethash:// |
* Ethash | Stratum over SSL | ethash+ssl:// |
* Ethash | Ethereum Proxy | ethproxy:// |
* Ethash | Ethereum Stratum | ethstratum:// |
* Blake14r (secondary) | Stratum | blake14r:// |
* Blake2s (secondary) | Stratum | blake2s:// |
Bminer可以通过设置多个URI列表(逗号分隔)来支持多矿池故障转移。 例如,使用Flypool作为主要矿池,以nanopool作为备选项,你可以使用以下命令。
./bminer -uri stratum://[email protected]:3333,
stratum://[email protected]:6666
数据界面和应用程序编程接口(API)¶
Bminer提供了一个基于网页的界面来监测miner的健康状况。界面与管理API使用相同的地址。 例如,如果您在127.0.0.1:1880
处启用了API,则可以访问位于http://127.0.0.1:1880
的数据界面。
以下是界面的屏幕截图:
Bminer还提供了应用程序编程接口(API)来实现自动化的大规模部署。
GET /api/v1/status/solver¶
equihash的一个例子:
{ "devices": { "0": { "solvers": [ { "algorithm": "equihash", "speed_info": { "nonce_rate": 359.27, "solution_rate": 677.53 } } ] } } }
dual mining的例子:
{ "devices": { "0": { "solvers": [ { "algorithm": "ethash", "speed_info": { "hash_rate": 30828134.4 } }, { "algorithm": "blake2s", "speed_info": { "hash_rate": 1778500208.17 } } ] } } }
GET /api/v1/status/device¶
例子:
{ "devices": { "0": { "temperature": 83, "power": 199, "fan_speed": 74, "global_memory_used": 4385, "utilization": { "gpu": 100, "memory": 73 }, "clocks": { "core": 1809, "memory": 5005 } "pci_bus_id": "0000:01:00.0" } } }
GET /api/v1/status/stratum¶
dual mining的例子:
{ "stratums": { "blake2s": { "failover_uris": [ { "name": "blake2s://DDXKDhq73GRM3hjh6uee57fJ3LS2ctNtyi.my:c=XVG,[email protected]:5766", "active": true } ], "accepted_shares": 1, "rejected_shares": 0, "accepted_share_rate": 0.02, "rejected_share_rate": 0 }, "ethash": { "failover_uris": [ { "name": "ethproxy://0xb76d43eAaB2e905028a7f0F3aF13C7A84c477B9f.w@guangdong-pool.ethfans.org:3333/", "active": true } ], "accepted_shares": 2, "rejected_shares": 0, "accepted_share_rate": 0.01, "rejected_share_rate": 0 } } }
这些字段的语义如下:
名称 |
类型 | 描述 |
---|---|---|
stratum |
object | Stratum客户端的信息。 |
failover_uris |
object | 一个准备挖矿的uris序列。 |
name |
string | uri的名字 |
active |
boolean | 判断当前URI是否是被用来挖矿的状态。 |
accepted_shares |
integer | Stratum服务器接受的share的数量。 |
rejected_shares |
integer | Stratum服务器拒绝的share的数量。 |
accepted_shares_rate |
number | 每秒被接受的share的数量。 |
rejected_shares_rate |
number | 每秒被拒绝的share的数量。 |
miners |
object | 所有正在运行的CUDA设备ID对应的Miner状态。 |
devices |
object | 所有正在运行的CUDA设备ID对应的Miner状态。 |
solver |
object | Equihash求解器的统计信息。 |
solvers |
object | 在设备上运行的求解序列。 |
algorithm |
string | 一个求解程序的算法名。 |
speed_info |
object | 一个求解程序的速度指标。 |
hash_rate |
number | 算力数 (H/s) |
solution_rate |
number | 发现Equihash解决方案的数量。(解/秒) |
nonce_rate |
number | Equihash评估的随机数。(I/s) |
device |
object | CUDA设备的统计信息。 |
temperature |
integer | CUDA设备的温度。(℃) |
power |
integer | CUDA设备使用的电量。(瓦特) |
fan_speed |
integer | CUDA设备的风扇速率的百分比形式。例如,满速度是100%。 |
global_memory_used |
integer | CUDA设备上使用的内存。 |
utilization |
object | CUDA设备的使用统计信息。 |
gpu |
integer | GPU的使用率,0-100。 |
memory |
integer | 内存利用率,0-100。 |
clocks |
object | CUDA设备的时钟频率。 |
core |
integer | GPU核心的频率。(MHz) |
memory |
integer | GPU内存的频率。(MHz) |
pci |
object | PCI-E总线的使用信息。 |
bar1_used |
integer | BAR1内存使用量。 |
rx_throughput |
integer | 从PCI-E总线接收的数据的吞吐量。(MB/s) |
tx_throughput |
integer | 从PCI-E总线发送的数据的吞吐量。(MB/s) |
pci_bus_id |
string | PCI-E总线ID |
version |
string | Bminer的版本。 |
start_time |
integer | Bminer的启动时间, in UNIX 时间。 |
POST /api/v1/control/exit¶
停止并退出Bminer。