Chia plot check linux

Проверка плотов Chia на целостность

Если вы занимаетесь майнингом криптовалюты Chia и всё ещё засеиваете новые плоты, то желательно следить за тем, чтобы все плоты были корректными и не занимали место просто так. Иногда, при использовании сторонних инструментов плотинга или при возникновении аппаратных проблем плоты создаются с ошибками и не могут участвовать в добыче монет.

В этой статье мы рассмотрим как выполняется проверка плотов Chia на целостность с помощью официального клиента этой криптовалюты в командной строке. Это довольно просто.

Как проверить плоты Chia

Поскольку для проверки используется консольная команда, необходимо сначала открыть командную строку. Для этого наберите cmd в поиске Windows и кликните по пункту Командная строка:

Затем нужно перейти в папку, где находятся исполняемые файлы chia. Это путь вида:

C:\Users\ \AppData\Local\chia-blockchain\app- \resources\app.asar.unpacked\daemon

Здесь вам необходимо заменить имя_пользователя и версию программы на свои. Для удобства вы можете не копировать этот путь, а начать писать его вручную и использовать клавишу Tab для автодополнения. Команда будет выглядеть примерно так:

После этого можно выполнить команду, которая и проведёт проверку плотов Chia:

Если всё хорошо, команда должна сообщить:

Found количество valid plots
количество plots of site k32

Значение количество должно совпадать в первой и второй строке. Если программа найдёт битые плоты, она сообщит об этом отдельно, такие плоты можно удалить. В выводе программы есть ещё один параметр, на который следует обратить внимание. Он выводится для каждого проверяемого плота и выглядит вот так:

Здесь отображается количество подтверждений, полученное во время проверки плота. Интересна последняя цифра, 0.8. Во время тестирования каждому плоту даётся (по умолчанию) тридцать испытаний. Этот коэффициент означает на какой процент из этих испытаний в этом плоте были найдены доказательства. Единица — были найдены доказательства на все испытания. Чем меньше, тем хуже. Разработчики говорят, что значение 0,8 — 0,9 в пределах нормы, но когда плот имеет коэффициент ниже 0.7 следует задуматься о том чтобы его пересеять. Хотя это не обязательно.

Если вы случайно скопировали плот и забыли удалить оригинал, то у вас будет хранится дубликат плота, от которого нет никакой пользы. Для того чтобы найти такие плоты выполните команду:

Здесь опция -n 0 используется для того чтобы отключить проверку плотов на целостность, а опция -l для вывода списка дубликатов. Обнаруженные дубликаты можно удалить.

Выводы

Теперь вы знаете как проверить плоты Chia на целостность. Как видите, всё очень просто. Если у вас были обнаружены битые плоты их следует удалить и создать вместо них новые.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Chia plotting basics

— February 22, 2021

Introduction

First it is important to know that there are two very different parts of being a Chia farmer. There is creating the plots or plotting and then there is farming the plots. In this post we are going to focus on the process of creating your plots. The types of machines and storage space are very different than the types of hardware you ultimately want to use to farm. You can see some example farming rigs on our very useful repository wiki.

We initially recommend that you try plotting with what you have around. The only caution about that is that you want to limit the amount of plots you create that use your internal/consumer grade SSD as the temporary space. SSDs have very different wear lives and we have detailed information on SSD endurance.

You really never need to plot a plot with a k size larger than 32. Those who do plot larger are either doing them to show off (and we encourage this for fun) or to optimally fill the open space on a specific drive. A k32 will take up 101.3 GiB of space once completed but will need a total of 239 GiB of temporary space as it is being created. A single k32 plotting process never needs more than 239 GiB of space. One needs to be careful here as 239 gibibytes uses 1024 as its divisor where GB or gigabytes uses 1000 as the divisor. That means you will need 256.6 GB of temporary space and the final plot file will take 108.8 GB. A k32 plot can be done by one expert we know in just under 4 hours, but most experts are creating plots in 5 hours and most folks average around 9-12 hours.

Creating a plot is a process that will take RAM, CPU cycles, IO to your disks and it will use them differently in each of the four phases of plotting. Everyone wants a magic “right” answer or to use AI to figure out the optimal plotting strategy for their machine. However almost every machine is different along one of these parameters so you just have to try. Longer term we will be able query your machine and make some recommendations but that is not today. You really will have to test. And no, the experts in the various Keybase channels don’t know your best settings either.

Читайте также:  Операционка windows не запускается

Getting going

The first phase generates all of your proofs of space by creating seven tables of cryptographic hashes and saving them to your temporary directory. Phase 2 back-propagates through the hashes, phase 3 sorts and algorithmically compress these hashes in the temporary directory while starting to build the final file and phase 4 completes the file and moves it into your final plot destination.

One of the major bottlenecks is usually the total sustained write speed of the disk underneath your temporary directory. We recommend used datacenter SSD if you really want to go fast and not sacrifice consumer SSDs making plots. NVMe is faster than SAS and SAS is faster than SATA. This PC World overview of storage technologies can explain these acronyms and the differences. TBW, or terabytes written, is generally how SSD drive life is measured. One k32 writes 1.8TiB in non-bitfield mode and 1.6 TiB with bitfield enabled. More on bitfield in a moment.

Making the single fastest plot isn’t generally the best plotting strategy however. Often you’re getting amazing speed because you’re using the turbo core of that multi core processor. The folks who plot the most have shown that you should measure in TB (TiB if you’re old school like us) per day. The way to get the maximum TB/day is to plot lots of plots in parallel. Some of the top plotters use datacenter SSDs. Some use SAS drives. Raid 0 is often very handy to tie together a couple of small fast drives into one say 2TB partition so you could fit 5 k32 temporary spaces on that one virtual RAID drive.

All of that said, for my personal plotting I use a 2017 iMac and a 12TB Western Digital external drive on USB 3.0 for both temporary and final directory, and I get a k32 about every 10 hours.

Good assumptions

There are some good rules of thumb for now. These can change as we will be returning to making some plotting speed improvements after launch. First we need to explain bitfield versus no bitfield plotting. Originally, the plotter did not use bitfield back sorting. The bitfield back sort is theoretically faster than not using the bitfield and we already know that it saves 12% of total writes but requires more RAM. We have a hunch we can speed bitfield up 10% and make it work on more processors but that’s not in there yet. What we do know is that, as long as you’re ok with the 12% more total writes, no bitfield will work faster when SSD or fast SAS is your temporary directory. If your temporary directory is on a regular HDD, like mine is, bitfield is 20% faster than no bitfield. Older CPUs may not see the speed increase as much as noted above.

Returning to the rules, here are a few. Never touch the stripe size of 65536. No one has found a speed up over that value and we are likely removing it from the options list. (Update: as of 3/11/21 stripe size has been removed as an option.) You almost never want to use any bucket values other than 128. Less buckets requires more RAM for each plotting process. 64 buckets requires twice the RAM.

As far as number of threads are concerned you are generally going to want 2 to 4. More than 4 seems to have diminishing returns and 2 threads is a lot better than 1. More threads also require a bit more memory to successfully complete a plot. The threading is only used in phase 1 currently.

As of Chia 1.0.4, RAM requirements are almost identical between bitfield and no bitfield. This is a chart of the various RAM choices assuming a k32 with 128 buckets and 2 to 4 threads:

RAM MiB: Minimum Medium Maximum
Bitfield 900 2640 3400
No Bitfield 900 2640 3400

Below minimum your plot will fail. Medium is enough RAM that you’ll get most speed improvements, but not all. This is useful when you’re trying to get more plotting processes parallel and have limited RAM. Using anything over the maximum is wasting RAM as you will not plot any faster. We are pretty certain of the minimums and maximums but there is community debate about the medium values. We’ll update this chart accordingly as we have better data.

Mastering plotting

Most people start plotting from the GUI. You can successfully complete a couple of plots in parallel from there to get the hang of things. As people choose to get more serious they migrate to the command line. It is worth noting that Windows suffers 5-10% slower plot times versus MacOS or Linux for now.

Once you get some experience you will probably want to know how to create more and more plots in parallel. Luckily we have a replay on YouTube of our cocktails with plotting experts. They had much to share about their various approaches. Some used servers and datacenter SSD, some bought used servers and SAS drives for temporary directories, some expand their consumer/gaming machines, and some focused on lots of smaller used machines. Many of them have compiled a spreadsheet of reference plotting hardware with plot speeds to help get you thinking about any hardware you might want to change or acquire and see how your plotting results measure up.

As you start parallel plotting you need to be careful to not over allocate memory when you are plotting. If you cause your operating system to swap, you are not going to be happy with your outcome. You don’t have to be as careful with thread count.

It is also a very common plotting strategy to plot on say your gaming machine and then move your plots to a Raspberry Pi 4 with a lot of USB ports. All you need is your same 24 word mnemonic on both machines. Alternatively you can just run a remote harvester on your Pi and have it connect to your gaming machine where you are running node and farmer and only have your private keys on one machine.

Learning more

Everyone trying to create plots should read through our repository FAQ. It really does answer 90% of the questions you might have about plotting (and farming.)

Once you have read the FAQ, you’ll find a supportive community in these channels on our public Keybase channels.

Keybase Channel Topic
#beginner For those questions you are afraid to ask
#testnet For all things testnet — an intermediate skill level
#plotting-hardware The expert plotters are here. Hardware, software and plotting strategy

Thanks

@pyl, @kiwihaitch, @psydafke, and @storage_jm all helped out on this post. The mistakes are mine. Should something need to be updated I will edit and post the errata down here.

Updates

As of Chia version 1.0.4, RAM min/med/max values have been updated.

Источник

Chia-Plot-Status

GUI Tool for beginners and experts to Monitor and Analyse Chia Plotting log files, show health and progress of running plots and estimated time to completion. No setup, configuration or installation of python or whatever required. Just install and enjoy.

Features

  • Support for Chia, Flax, Spare and ChainGreen
  • Monitor Progress of running plots
  • Show estimated time to completion based on your already finished plots best matching your current plot config
  • Monitor Health of plotting processes
  • Already compatible with madMAx43v3r/chia-plotter (currently getting improved)
  • Compatible with all plotters and plotting managers that use or are based on the official chia plotter (see Troubleshooting if something does not work from the get go)
  • Show important information from log file in easy to read table
  • Multiple folders with log files supported (multiple plotting rigs, anyone?)
  • Multiple plots per log file supported (plot create –num n)
  • Export of readable or raw data to Json, Yaml and CSV

See Chia Plot Status in action:

On Upside Down Crypto (YouTube):

On Patro TV (YouTube):

How it works

Chia Plot Status observes the log folders you give it to monitor which can be local or connected via network. By this it supports monitoring multiple plotting rigs as you can access them on your desktop even if your plotting rigs are headless. It regulary checks for new Log files in those folders and analyses them.

On basis of finished plots it builds a local statistic (on your machine, no data is send anywhere or pulled from any cloud) and uses them to calculate ETA / time remaining and warning thresholds for the Health of your plotting processes.

Working with many distributed plotting rigs

Recommended way: Use sshfs (with sshfs-win for Windows) to securely mount the log dirs of your plotting rigs on your desktop via highly encrypted network connection, where it is your desktop that initiates the mount. This can be set up so that the desktop can only access the log dirs and only has read access. Even if you use remote plotting rigs that you access over the internet this is the most secure way and you most likely access your remote servers via ssh already.

Other Options: Mount the log folders of all rigs as network shares (via samba on linux) if all your plotting rigs are in the local network or connected via VPN. Another way would be to make a cronjob on your plotting rigs that uses scp or rsync in append mode to copy the log dir to your desktop where you run Chia Plot Status, but if you can manage to set this up you should set up sshfs instead. Last, least preferred option: collect them with cloud apps like Google Drive (Chia Plot Status does not talk to any cloud services for you, you have to install those apps and mount your log folders in them yourself if you want to use them).

Best Practice:

  • Only delete log files of finished plots if your hardware or the way you plot has significantly changed. Chia Plot Status uses finished plots to calculate ETA/Time Remaining as well as warning/error thresholds. If you delete finished log files the quality of those values decreases significantly.
  • Use SSHFS to access the log directories of your plotting rigs
  • Each plotting rig should have its own log folder, so they don’t mix and mess up estimates and warning thresholds for each other.
  • Always log locally. If you log directly to a network share / NAS your plotting processes will crash if the connection becomes flaky. Prefer connecting your host machine (which runs Chia Plot Status) to networkshares on the plotting rigs, not the other way around.

Security / Trustworthiness

There are multiple attack vectors to consider:

1. The possibility that the core developer (me) is or becomes malicious

There is a saying: Where is a money trail, there is a way to sue/prosecute someone.

Chia Plot Status has buttons to donate via paypal both in the application itself and on the website.

Should the core developer (me) turn malicious, people could easily sue the core developer (me) and by that get the necessary details as in full name, address and day of birth, IBAN/Bic, everything from paypal.

If the core developer (me) becomes malicious this would be basically a how to get imprisoned speedrun (any %)

Even if you think you would not sue the core developer as he (me) might sit in a different country (germany), someone will as the Chia Plot Status Github Repository has between 2k to 4k visits daily and currently 24k downloads.

This should be more than enough to deter the core developer (me) from doing anything malicious.

2. The core developer (me) merges a pull request (code changes made by someone else) which contains malicious code without noticing

As seen on https://github.com/grayfallstown/Chia-Plot-Status/graphs/contributors there is only one other person who contributed a pull request so far and that wasn’t code but a documentation change.

The core developer (me) will check each pull request before merging as he (me) would have to run the code himself to check if the application works properly after merging that pull request and by that he (I) would get attacked by any malicious code that was contained in that pull request.

3. External Dependencies (as in libraries / code written by someone else) the application uses to do certain things (like to create the graphical user interface) become malicious.

Well, this is a tough one as even the core developer (me) has very little means to check external binaries for malicious code. The core developer (me) and every other developer using those libraries will get attacked by any malicious code in those libraries before they (we) distribute a new version of their (our) software containing that library to the users of their (our) softwares, as they (we) generally test their (our) applications before each release.

The core developer (me) takes the following precautions to mitigate that risk:

External dependencies are kept at a minimum to reduce this attack vector (chia-blockchain devs do the same)

Every release build is build on the same system and previously downloaded dependencies are never deleted/redownloaded. This prevents pulling in malicious code if the external dependency version used gets replaced with malicious code. But it also prevents reproducible builds that everyone can follow and reproduce step by step on their system, if the external dependency version actually does get changed. Well, this should raise concern anyway and in any case.

Updating Dependencies (external libraries / code written by someone else) is delayed (possibly indefinitely) until an update is required to implement a feature or to fix a bug. This gives anti virus providers time to determine if that library version is malicious, which would prevent an update.

Installation / Download

Windows: Download latest version You will get a blue warning saying this was published by an unknown developer.

Linux: First install dotnet 5.0 SDK, then either the Chia Plot Status deb or rpm package depending on your linux distribution (deb for ubuntu)

For Mac you currently have to build it.

Getting Log Files from PowerShell

The last part with 2>&1 | % ToString | Tee-Object writes the log to the PowerShell and to a file with a unique name for each plotting process.

Getting Log Files from madMAx43v3r/chia-plotter

On Windows without WSL:

Take the same command you are currently using and just add ` 2>&1 | % ToString | Tee-Object -FilePath “C:\Users$env:UserName.chia\mainnet\plotter$([GUID]::NewGUID().ToString(‘D’)).log”` at the end and run it in PowerShell, not CMD. Note: there must be a whitespace between your command and this and there is nothing to be replaced in this line. Just leave it as it is.

On Windows with WSL:

Note: There is nothing to be replaced in the last line. Just leave it as it is.

On Linux directly:

Note: There is nothing to be replaced in the last line. Just leave it as it is.

Need the columns in a different order?

Troubleshooting

If you use Cloud Sync Services, rsync/scp cronjobs or tools like Syncthing to collect your log files you might run into an issue with the files not properly syncing. Sonething like The process cannot access the file because it is being used by another process. . See Issue #40 for how to fix that, or even better, use sshfs instead.

The same works if you use harry plotter as plotting manager.

If Chia Plot Status does no longer start, try renaming ChiaPlotStatu.config.json to ChiaPlotStatu.config.json.backup . The file is located in your home directory at C:\Users\ \ChiaPlotStatu.config.json on windows, /home/ /ChiaPlotStatu.config.json on linux and /ChiaPlotStatu.config.json on mac.

Custom tools / Home automation

You can export plot logs to json, yaml or csv both via the gui or the console for automation:

Note: Write your tools or home automation in a way that new fields/properties/columns added to the exported files do not crash it.

Open Source

MIT opensource licence, free to keep or change.

Build it yourself

This should work on x86_64bit, x86_32bit, ARM 64bit and ARM 32 bit Systems. If not, open an Issue to tell me whats wrong.

Download and install dotnet 5.0 SDK and git.

On the console, clone/download this repository:

git clone https://github.com/grayfallstown/Chia-Plot-Status.git

dotnet build —configuration .\ChiaPlotStatus.sln /p:Configuration=Release /p:Platform=»Any CPU»

Chia-Plot-Status can now be started with

macOS: dotnet ./ChiaPlotStatusGUI/bin/Release/net5.0/ChiaPlotStatus.dll (thanks @mahdi-ninja)

alternatively try dotnet run —build .

Donations

Binance Coin/BNB bnb1pes46l2jkw8dd9tw6j7sc4r9muzv5kuepnal0r

USD Coin/USDC 0x0e07b5A73F571a98bAf19Fc42EBDE15d6B1664f0

Bitcoin Cash/BCH qrxfzf3dact3crqu8l8uvxdp639scekw9qn20akrdc

Etherium Classic/ETC 0x9347727443e8808c14062A7Fb95625B0284F2F8d

Special Thanks

  • @charlie on freeicons.io for the Logo (details)
  • @ใครๆก็ทําได้ DiY
  • @Alpha One
  • @Çağlar
  • @Cuello
  • @DazEB2
  • @DjMuffin_top
  • @Dujapan
  • @Gridjump
  • @@getchiaplot
  • @Hellfall1
  • @Jazeon
  • @Jonesyj83
  • @JoseAngelB
  • @KJP Gaming
  • @Lucky_Length2676
  • @Lyushen
  • @Manic!
  • @Mr pq
  • @Ok-Studio5311
  • @Oguzhan Oda
  • @Patro TV
  • @R3htribution
  • @RaySmalley
  • @RedxLus
  • @SERVAK
  • @TormodSan
  • @Upside Down Crypto
  • @Waloumi
  • @WeAreNotAngels
  • @Worldly-Mind3108
  • @Zubon102
  • @aDilly
  • @badi95
  • @bathrobehero
  • @bestq8.com
  • @blood5322
  • @buettgenbach
  • @c-pool
  • @carfnann
  • @chefsas
  • @chiaxch
  • @cyperbg
  • @darkfriend77
  • @djdookie81
  • @dorofino
  • @douwebusschops
  • @dvlzgrmz
  • @j.spracher
  • @jcmarco
  • @jimshank
  • @johnamtl
  • @jonnnny
  • @kata32
  • @littleneko
  • @magallanesrafa
  • @magnusmyklebost
  • @massimo de rovere
  • @mmoingame
  • @ouoam
  • @ozulu
  • @puperinoo
  • @raf-cr
  • @revlisoft
  • @rsegrest77
  • @rul3s
  • @sirdeekay
  • @tajchert
  • @tiberiu puscas
  • @toddouimet
  • @whitetechnologies
  • @Vera Toro
  • @whoismos3s
  • @wild9
  • @wizbowes
  • @z.ostroff
  • @zeroarst
  • @The Malware Analysts of Microsoft and Malwarebytes for checking Chia Plot Status after every false positive

For contributing to Chia Plot Status either by donating or otherwise.

Chia-Plot-Status is maintained by grayfallstown. This page was generated by GitHub Pages.

Источник

Читайте также:  Оболочка линукс что это
Оцените статью