madMAx43v3r / chia-plotter

Apache License 2.0
2.27k stars 662 forks source link

Add new folder for temp files(example -3 --tmpdir3 /opt/hdd/sas/raid0/ ): #433

Open artful172 opened 3 years ago

artful172 commented 3 years ago

Add new folder for temp files(example -3 --tmpdir3 /opt/hdd/sas/raid0/ ): This temp folder create temp files for Phase 1, Phase 2, Phase 3. Phase 4 - work in -t (--tmpdir) dir -3, --tmpdir3 arg Temporary directory 3, (default = )

if me create plot this config: 7xSAS HDD in RAID0 (example 7x73Gb SAS 15.000rpm), mount to /hdd/sas/raid0 1xSSD(SAS) - JBOD or HBA mode , mount to /hdd/sas/final 128Gb RAM - ramdisk 110Gb , mount to /mnt/ramdisk

me run: chia_plot -t /hdd/sas/final/ -2 /mnt/ramdisk/ -3 /hdd/sas/raid0/ -d /hdd/sas/final/ -p XXXX -f XXXX

In this case, the final file can be made to create rafts faster when using certain server configurations. and will help extend the life of ssd disks (TBW)

artful172 commented 3 years ago

addon: if parameter is specified -3, then dir -t (-t, --tmpdir) use only to create this file: plot-k32-2021-06-14-12-11-f5c4cefed8ac35ad86a3329cc96af8395448df6ace803718d2a609b47a6e7f80.plot.tmp

madMAx43v3r commented 3 years ago

final plot is only 102GiB, which is less than 10% of total TBW, I don't see a point for using a dedicated directory for that...

artful172 commented 3 years ago

if me use this config: 128Gb RAM and SSD disk chia_plot -t /hdd/ssd/ -2 /mnt/ramdisk/ before create plot smartctl: Data Units Written: 772,496,353 [395 TB] after create plot smartctl: Data Units Written: 773,333,473 [395 TB]

diff: 773,333,473 - 772,496,353 = 837.120 * 512 = 428.605.440 byte writed if use sas raid0 to all tmp files - then only 102Gb write to ssd: ssd drive will work 4 times longer

madMAx43v3r commented 3 years ago

why not use sas raid0 for -t ?

artful172 commented 3 years ago

SAS drive is very small volume and low speed for parallel tasks after creating a plot - need copy plot to external HDD (Network) if start copy plot with running chia_plot - time to create new plot file up to ~7-10 minutes

if me run create plot with out background copy to external hdd or network: Total plot creation time was 2044.93 sec Finish. Work: 0d 0h 34m 5s seconds

if me run create plot with background copy to external hdd or network: Total plot creation time was 2592.25 sec Finish. Work: 0d 0h 43m 12s seconds

if use -d - then after generation there will be copying and there will also be a waste of time

diff 547 second to create one plot per day: 42 plot with out background copy, 33 plot with background copy(slower by 22%)

if use -t to ssd drive - background copy working fine and no lost speed no create plot, but the ssd disk resource TBW if use -t to raid0 sas drive - lost 22% speed

if you add new folder -3 to create plot this will increase the speed and reduce the TBW of the SSD

artful172 commented 3 years ago

https://www.youtube.com/watch?v=X-L75wkyAqo if chia plot write temp file to SAS raid0, copy from sas raid0 no external network drive down 99%

fer662 commented 3 years ago

final plot is only 102GiB, which is less than 10% of total TBW, I don't see a point for using a dedicated directory for that...

Why not write it in the final path while the next plot runs? Ram concerns?

artful172 commented 3 years ago

final plot is only 102GiB, which is less than 10% of total TBW, I don't see a point for using a dedicated directory for that...

Why not write it in the final path while the next plot runs? Ram concerns?

SAS drive low speed for parallel tasks. https://github.com/madMAx43v3r/chia-plotter/issues/433#issuecomment-860698581 https://github.com/madMAx43v3r/chia-plotter/issues/433#issuecomment-860725816

fer662 commented 3 years ago

final plot is only 102GiB, which is less than 10% of total TBW, I don't see a point for using a dedicated directory for that...

Why not write it in the final path while the next plot runs? Ram concerns?

SAS drive low speed for parallel tasks. #433 (comment) #433 (comment)

No i mean... Why doesn't the plotter write to the final destination instead of tmp dir? If you want to use a staging dir you could pass that as destination like we used to do with plotman... Then you can have a cron or rsync move it to your slower drives.

artful172 commented 3 years ago

No i mean... Why doesn't the plotter write to the final destination instead of tmp dir? If you want to use a staging dir you could pass that as destination like we used to do with plotman... Then you can have a cron or rsync move it to your slower drives.

during parallel copying of a file to another disk, the speed of creating a plot file decreases by ~22%