Mad Max Plotter, some test results, some general info

Here is one of my “budget” plotters.

Intel Core i7-10700K 3.80GHz 8 Cores
32GB 3200MHz PC4-25600 CL22 Unbuffered Non-ECC
Samsung 980 Pro (as both temp drives) (1TB each)

I ran 3 tests changing the bucket size.
128 buckets : 2865 seconds = 47.75 minutes
256 buckets : 2524 seconds = 42 minutes
512 buckets : 2393 seconds = 39.8 minutes

The best I could get out of it running parallel plots was running 8 in parallel and getting 23 - 24 per day. At 40 minutes per plot, this should get me 36 per day. Much better.

1 Like

Does anyone know if Mad Max plotter will have a variable K value? I wanna plot K33 and maybe K34.

For now it supports only k 32.

1 Like

Thanks, but I know :slight_smile: That’s why I ask if someone has informations about bigger K values planned :slight_smile:

he literally said he won’t implement it until it’s the minimum

OK, I’m changing all to bucket 512 after reading your test.

2 Likes

Mhh, sad. But okay, thanks for this information!

i folks i mistakenly add Master Public key of creating plots instead of pool public key in Madmaxx plotter. Farmer key is correct
so all my plots useless?
because hpool need to sign plot via POOL Public KEY and i create plot Master Pkey

My old server

Supermicro 1U X9DRI
Dual E5-2670 v2 2.5GHz 20 Cores/each
128GB Memory
Samsung 980 Pro NVME (1TB)

128 buckets : 3500 seconds = 58.3 minutes
512 buckets : 2675 seconds = 44.58 minutes

2 Likes

Nobody uses “master plot key” for creating plots, well, apart from you.

The new “cool” is 512 bucket size. :slight_smile:

Who dares to post a test on 1024 bucket size?

2 Likes

CPU: AMD EPYC 7282 16-Core Processor
RAM: 8x 16 GB 2933 MHz DDR4 registered ECC
SSD: Transcend 2TB NVMe PCIe Gen3 x4 MTE220S

MadMax Settings:
-r 12
-t NVMe
other all default

3085 seconds

I’m using standard bios settings with the supermicro motherboard, as mentioned the CPU runs at 3.3Ghz at full load, which appears to be the standard max turbo for fully loaded cores (vs single core which can reach 3.6Ghz). It uses this speed with both the powersave and performance governors. The ram is 1600MHz Registered ECC, nothing special, and in fact is actually running at 1333Mhz.

I suspect this kind of speed - using slow HDD or slow/moderate performance SSD + 256GB of ram can only be achieved in Linux. Linux has a ramdisk implementation (tmpfs) which is basically just the internal page cache exposed as a filesystem, and can seamlessly use memory either for normal disk cache or for the ramdisk. Windows doesn’t have a native ramdisk implementation, and I suspect the 3rd party ramdisk solutions are not as fast as if MS would implement a similar type of page cache ramdisk in the tmpfs style. If you have very fast SSDs, Windows should be fine.

If you have 256GB of ram, I believe the simplest configuration would be this:

  1. Run Linux
  2. Ensure a decent sized swap file or swap partition on nvme - say 32-64 GB (this is just to handle a small amount of potential spillover)
  3. Configure tmpfs to have 256GB max size
  4. use tmpfs (ie /dev/shm) for both tmp1 and tmp2

With this pure tmpfs configuration, I got a plot time of 1449 (24m 09s)

./build/chia_plot -r 38 -t /dev/shm/tmp/ -2 /dev/shm/tmp/ -d /mnt/data/27/plots/ -p $poolkey -f $farmerkey

There’s a lot of variations that can achieve similar results, but this is probably the simplest. With VM tuning, I was even able to use 15k SAS for both tmp1 and tmp2 (2 total 15k SAS) and still get a plot time of 1594s (26m 34s). This is with the following tuning:

sudo sysctl -w vm.dirty_background_ratio=90
sudo sysctl -w vm.dirty_ratio=95
# 1 hr = 3600 * 100
sudo sysctl -w vm.dirty_expire_centisecs=360000

This configuration should never be used for anything except for madmax plotting or something similarly use case specific. Likely this is even excessively aggressive but it’s what I used when testing the 15k SAS + 15k SAS.

PS. feel free to DM me on discord if you have further questions: dynafire#2992

4 Likes

Ryzen 5950X + 128 gb 3200mhz memory + 2x ‘970 evo plus’ in software raid 0.
Ubuntu 21.
Plotter revision: 89819ce

For all benchmarks:
-r 16
-t nvme
-2 ramdisk

-u 256 : ~20 min 30 sec
-u 512 : ~19 min 31 sec
-u 1024 : ~20 min 38 sec

3 Likes

So, 512 buckets, my new religion.

1 Like

For those plotting on linux, with SSD/NVMe + tmpfs (ramdisk), you might try these settings and see if they help you:

sudo sysctl -w vm.dirty_background_ratio=65
sudo sysctl -w vm.dirty_ratio=80
sudo sysctl -w vm.dirty_expire_centisecs=30000
sudo sysctl -w vm.swappiness=0

I would suspect this might help those with moderately fast (but not ultra fast) nvme.

Great numbers!
May I ask you why you have -r 16 and not full -r 32 for 5950X?
Thanks :slight_smile:

so these are useless should i replot?
35 PLOTS

Regarding plotter readme:

-r, --threads arg Number of threads (default = 4)

Make sure to crank up <threads> if you have plenty of cores, the default is 4. Depending on the phase more threads will be launched, the setting is just a multiplier.

This is not strict directive how much threads to use, but just multiplier.
According to my observations, with -r 16, 30 threads are simultaneously working while plotting. I have not tried it, but I suspect that increasing the -r value will either not affect on performance, or it will have a negative impact.

Did you try or see someone’s report with more then 16 threads?

1 Like