Skip to main content

plotboss: a Chia plotting manager

The view of plotboss

Development Version: v0.3.0

This is a tool for managing Chia plotting operations, has been tested for Windows 10, Ubuntu 21.04, MacOS. This is not a plotter. The tool runs on the plotting machine and provides the following functionality:

  • Automatic spawning of new plotting jobs, possibly overlapping ("staggered or smart") on multiple temp directories, by per-temp-dir limits.

  • Monitoring of ongoing plotting and archiving jobs, progress, resources used, temp files, etc.

Functionality

Plotboss tools are stateless. Rather than keep an internal record of what jobs have been started, plotboss relies on the process tables, open files, and logfiles of plot jobs to understand "what's going on". This means the tools can be stopped and started, even from a different login session, without loss of information.

Plotboss will create a diretory plotboss_data in working directory. All the plotter's log to STDOUT and STDERR will redirect to the plotboss_data/logs folder. And the log of Plotboss is saved to plotboss_data/plotboss.log.

(Note: The tool relies on reading the chia plot command line arguments and the format of the plot tool output. Changes in those may break this tool.)

Plots are output to the final_dir dirs defined in settings.toml.

Installation

NOTE: If python does not work, please try python3.

  1. Download and Install Python 3.7 or higher: https://www.python.org/
  2. Open CommandPrompt / PowerShell / Terminal and Install plotboss: pip install plotboss
  3. cd into the your home directory or any working directory where you should always start plotboss.
  4. Run the plotboss first time: plotboss or python -m plotboss, then press q to exit.
  5. A file named settings.toml will appear in working directory, modify the setting.toml config.
  6. Run the plotboss again: plotboss or python -m plotboss

Configuration

final_dir = [ ] # For example: ["P:", "T:"], The final directory will plot will saved.

[main]
max_jobs = 10 # default is not set.

[[jobs]]
tmp_dir = "E:/plotting"
# tmp2_dir = "F:/plotting"
# max_jobs = 1
# job_start_mode = "simple"

# size = 32
# nobitfield = false
# farmer_key = ""
# pool_key = ""
# pool_contract_address = ""
# num_threads = 2
# bukets = 128
# buffer = 4_608

[[jobs]]
tmp_dir = "G:/plotting"
# tmp2_dir = "H:/plotting"   # optional
# max_jobs = 1  # default is 1.

# size = 32
# nobitfield = false
# num_threads = 2
# bukets = 128
# buffer = 4_608

You can have many [[jobs]] section, which contains a tmp_dir and tmp2_dir pair and many parameters for plotter.

  • max_jobs means the concurrent working plotting jobs
  • job_start_mode determine how plotboss start the jobs, there are two options simple and smart.
    • Option simple just start as many as jobs under the max_jobs control.
    • Option smart works more smart, it only allow 1 job in stage 1 to avoid high peaks, even the number of current running jobs much less than the max_jobs param.

Sponsor / Support this tool

This library took a lot of time and effort in order to get it before you today. Consider sponsoring or supporting the library. This is not necessary but more a kind gestures.

  • XCH Address: xch168apuc4wsc2s3e6728t8l9xme5l4upnazywu9awymtum75xzh9gqxxy4tj
  • ETH Address: 0xf51298d068d7f04ae0b823fb44ef8703101adb9b

Support / Questions

Please do not use GitHub issues for questions or support regarding your own personal setups. Issues should pertain to actual bugs in the code and ideas. It has been tested to work on Windows. So any questions relating to tech support, configuration setup, or things pertaining to your own personal use cases should be posted at any of the links below.

Frequently Asked Questions

If I stop Plotboss will it kill my plots?
  • No. Plots are kicked off in the background and they will not kill your existing plots. If you want to kill them, you have access to the PIDs which you can use to track them down in Task Manager (or the appropriate software for your OS) and kill them manually. Please note you will have to delete the .tmp files as well. I do not handle this for you.
How are destination(final_dir) selected?
  • They are chosen in order. If you have two directories the first plot will select the first one, the second the second

Metadata

Release files for plotboss 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for plotboss 0.3.0
File Size Uploaded Provenance
plotboss-0.3.0.tar.gz 18.3 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for plotboss 0.3.0
File Interpreter ABI Platform
plotboss-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 36.5 kB

Release files / plotboss-0.3.0.tar.gz

Download URL plotboss-0.3.0.tar.gz
Size 18.3 kB
Tags Source
SHA-256 checksum
How to use checksums
aab825af00ed39db397c99de03b2969cce0a470903d0605bf8ab07d2f286a6e2
BLAKE2b-256 checksum
How to use checksums
7930a543e42e946a841de254234109a339290ce6f0070ff09e1dfb7b2e55d770
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.1

Release files / plotboss-0.3.0-py3-none-any.whl

Download URL plotboss-0.3.0-py3-none-any.whl
Size 18.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
791f99e038887e6630ff993b526b4a889937d2208fa098de1628102db0ddc3e6
BLAKE2b-256 checksum
How to use checksums
7db65d171f19e36adbfbbcb9d782a3e0ab537b5c48d4e01bc265409cffc4ef5c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.1

Security for plotboss 0.3.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page