1x Water Panther 3.84TB 3D TLC PCIe 3.0 x4 NVMe U.2 SSD (Plotting SSD)
1 x 6TB Internal HDD (farmer)
2 x 12TB External HDD (farmer)
2 x 10TB External HDD (farmer)
I used to plot using GUI exclusively and ran across swar plot manager which could automate and optimize the number of plots I can do per day.
I am fairly new and I haven’t ever messed around with code/config files in the past. I was wondering if you guys could help me configure the swar config file to make it efficient and get the most out of my system.
As it stands, I can do 10 plots in parallel (9 if i leave some system overhead) at a time considering 2 threads per plot.
How should I be setting the config file for this to get more plots and to make it efficient.
Here’s a draft that I was playing with.
name: PlottingJob (Question - can this be whatever name?)
max_plots: 999
farmer_public_key:
pool_public_key:
temporary_directory: 3.84TB SSD (Destination of the plotting SSD)
temporary2_directory:
destination_directory: Destination of Farming HDD (Question - how do I set this parameter up so it writes to two different HDDs?)
size: 32
bitfield: true
threads: 2
buckets: 128
memory_buffer: 3500
max_concurrent: 9 (Question - this should be 9 or 10 right?)
max_concurrent_with_start_early: (Question - Not sure what I should enter for this parameter?)
initial_delay_minutes: 0
stagger_minutes: 60 (Question - is 60 a good stagger number to begin with?)
max_for_phase_1: (Question - Not sure what I should enter here, its basically how many plots should be in Phase 1 at any given time right? What should be the number here?)
concurrency_start_early_phase: 4 (Question - Not sure what I should enter here?)
concurrency_start_early_phase_delay: 0 (Question - Not sure what I should enter here?)
temporary2_destination_sync: false
exclude_final_directory: false
skip_full_destinations: true (Question - how will it know which HDD should be filled next? Where do I set that parameter?)
unix_process_priority: 10 (Question - Not sure what I should enter here?)
windows_process_priority: 32 (Question - Not sure if I should change this?)
enable_cpu_affinity: false (Question - Not sure what this is)
cpu_affinity: [ 0, 1, 2, 3, 4, 5 ] (Question - Not sure what this means)
I would really appreciate some help setting this up! Thanks
Okay so the roughly ideal ratio is roughly 4TB temp high speed space to 32 threads to 64gb of ram.
So here you are CPU limited, as you only have 20 threads. You want to maximize parallel plots. Overall plot time does not matter, as long as your stagger is kicking off right. As a rough guess for a 8 core 16 thread CPU I’d say you could do 10 in parallel without problem. So as you have more threads (4 more), I’d say you can do 12 or 14. I’d honestly do 14. You also have tons of ram to spare. So here’s what settings I would do:
name: PlottingJob
max_plots: 999
farmer_public_key:
pool_public_key:
temporary_directory: D:/Plots (3.84TB SSD temp)
temporary2_directory:
destination_directory: (these are all the destination and it will cycle through)
- F:\Plots
- G:\Plots
- H:\Plots
- I:\Plots
size: 32
bitfield: true
threads: **4** (could also try upping this to 6 and seeing how you do)
buckets: 128 (and try 64 here and see what results you get. Good for people with more memory like you!)
memory_buffer: **7000** (no downside here, and 7000 needed for 64 sized bucket)
max_concurrent: 12
max_concurrent_with_start_early: 14 (should only be doing 14 for a little bit, when plots are in stage 4 and 5)
initial_delay_minutes: 0
stagger_minutes: 50 (over time the max plots going in parallel will make this obvious... 50 is fine for this setup. Most likely will end up being 80 naturally when limited to 12/14)
max_for_phase_1: 6 (would up to 8 to see how things look, but recommend 6 for you)
concurrency_start_early_phase: 4
concurrency_start_early_phase_delay: 0
temporary2_destination_sync: false
exclude_final_directory: false
skip_full_destinations: true (making this true is smart, prevents starting a job writing to a full drive)
unix_process_priority: 10 (leave default)
windows_process_priority: 32 (leave default)
enable_cpu_affinity: false (leave default)
cpu_affinity: [ 0, 1, 2, 3, 4, 5 ] (leave default)
Thanks SO SO much for your help! I will use these settings and see how far this gets me. I have a quick follow up question @leadfarmer, what should I set the global parameters as? does the below parameters look good?
max_concurrent: 12
max_for_phase_1: 6
minimum_minutes_between_jobs: 5 (should this be 5 or longer?)
I understand that we are already setting up max_concurrent and max_for_phase_1 in the our Job but since this is global, should I set it here as well?
max_concurrent: 14
max_for_phase_1: 6
minimum_minutes_between_jobs: 5 (You are plotting to at least 4 different hard drives, the slowdown will be if you are going to one at the same time. Therefore this being 0 would be fine. But 5 is what I would leave it at just in case. Not a lot of performance impact here, just timing. This setting is literally for those who plot to a single (destination) drive.)
Thank you again @leadfarmer, one final question. It might be a dumb question though, for the parameter destination_directory, I can press enter after destination_directory: and then type - Drive1, enter - Drive2 and so on, correct? Example below
destination_directory:
F:\Plots
G:\Plots
H:\Plots
I:\Plots
size: 32
My apologies, just want to make sure the syntax is correct
An example of the syntax is available here on line 214:
Add as many drives as you need there. Spacing matters, so be aware. In your example, F, G, H, and I are all separate drives or locations. SWAR alternates between them. You can go down to 1, and up to however many drives you have.
Yes, but remember, if you split into two jobs, split all the max parallel plots by 1/2. So we said 12 max, 14 max with start early for 1 job. For 2 jobs it would be 6/7 for each, respectively.
Leave the GUI closed if this is just a plotting machine. If you are using SWAR and you need to run the harvester and the farmer, do so from command line.
For my plotters, GUI is closed, harvester running from command line. Different computer used for farming.
This is strictly a plotting machine, I already have my previous plots farming (that I plotted using GUI before discovering swar), so I should run the harvester and the farmer. How do I run those from the command line? I am sorry, I’ve never used the command line before.