Powershell команды для chia

Chia plotting powershell script

Windows PowerShell превратилась в отличный инструмент для управления и выполнения сценариев на компьютерах с Windows. Он встроен в каждую установку Windows 10. В этом посте мы рассмотрим, как запускать плоттеры с помощью PowerShell. У запуска плоттеров в PowerShell есть несколько преимуществ:

  1. Построение заговора не привязано к Чиа-ГУЙ. Если клиент Chia испытывает сбой или ошибку, ваш плоттер будет продолжать работать. Пока клиент восстанавливается.
  2. Каждое окно PowerShell-это один плоттер. Если вы планируете выполнять построение параллельно (запуск нескольких плоттеров на одной машине). То это идеальный способ наглядно увидеть. Сколько плоттеров работает и как далеко они находятся.

  • Вы можете отменить очередь плоттера после текущего участка. Каждый плоттер имеет свою длину очереди в PowerShell. Что-то, что я обнаружил случайно, вы можете щелкнуть окно PowerShell и нажать CTRL-C. Ничто не подтвердит ключевую команду, но в конце текущего участка плоттер прервет очередь.
  • Возможно, лучшая функция заключается в том, что вы можете запустить сценарий. И все ваши плоттеры будут запущены со своими собственными настройками в своих собственных отдельных окнах. Идеальный.
  • Есть несколько правил ведения домашнего хозяйства, прежде чем использовать PowerShell. Чтобы вы не попали в ловушки. Которые есть у меня.

    Выполните следующие действия:

    1. Откройте Powershell, нажав клавишу Windows и набрав “PowerShell”
    2. Когда откроется окно PS, нажмите в левом верхнем углу окна, чтобы открыть меню. В этом меню нажмите кнопку “Свойства.”
    3. В новом окне снимите флажок с надписью “Режим QuickEdit”. Обычно эта функция отлично подходит. Когда вы хотите выделить текст в окне и скопировать его в другое место. Но, это имеет плохой побочный эффект приостановки того, что работает в окне.

    Это плохо, если плоттер строит, и вы случайно нажимаете на окно, перетаскивая его. Отключение режима QuickEdit предотвращает это. Если вы хотите выбрать текст в будущем. Просто щелкните правой кнопкой мыши внутри окна PS и выберите “Пометить”.

  • Далее перейдите на вкладку “Макет”. Найдите поле “Высота”. Это то, сколько прокрутки назад вы хотите. Мне нравится тонна прокрутки назад, так что я максимизирую ее на уровне 9999. Это делается для того. Чтобы вы могли просматривать информацию о ходе выполнения многих графиков. Чтобы увидеть время.
  • После завершения нажмите кнопку ОК.
  • Если вы когда-либо планируете выполнять свои собственные сценарии PowerShell. Введите приведенную ниже команду в

    окне администратора PowerShell. Чтобы она была включена:

    Теперь, когда PowerShell настроен так. Чтобы вы не допустили моей ужасной ошибки. Мы можем перейти к тому. Как запустить плоттер. В окне PS введите следующую команду:

    В приведенной выше команде обратите внимание на два выделенных жирным шрифтом места. Затем “приложение-1.0.5” будет заменено версией chia, которую вы используете.

    В настоящее время последняя версия-1.0.5, Но так будет не всегда.

    После того как вы измените каталоги (cd) на эту папку, введите следующую команду, чтобы запустить плоттер:

    Здесь много информации. Поэтому я разберу ее:

    • .\chia.exe создание сюжетов – Это вполне объяснимо. Я хочу, чтобы чиа создала сюжет.
    • -k 32 – Это размер участка, который вы хотите создать. K=32-это минимальный размер участка, который считается допустимым в сети Chia. Это также самый быстрый способ создания. Вы можете пойти меньше по значению K, но эти графики не действительны в сети.
    • -b 3389 – Это объем оперативной памяти, который вы хотите выделить плоттеру. Он не использует всю эту оперативную память сразу, это просто предел. Но Windows предварительно выделит эту сумму и назовет ее “committed”. Что может подтолкнуть другие приложения к виртуальной памяти на диске. Если committed будет максимальным. 3389-это идеальная сумма. Если вы используете 2 потока. Я обнаружил, что для 4 потоков требуется минимум 3408; 6 потоков 3416; 8 потоков 3424.
    • -u 128– Это размер ведра. По сути, это то, на сколько частей вы хотите разделить рабочую нагрузку. Если вы измените его на 64, то вам придется удвоить объем оперативной памяти. По моему опыту, нет никаких изменений в скорости сюжета, связанных с этим числом. Так что оставьте его на уровне 128.
    • -r 2– Это количество нитей, которое вы хотите получить для плоттера. Плоттер работает в четыре этапа. Это число влияет только на фазу 1 участка. Фазы 2, 3 и 4 являются однопоточными. В своем тестировании я увидел 30-минутное улучшение скорости от использования 2 потоков до 4 потоков. Затем я увидел только 5-минутное улучшение с 4 потоков до 6 потоков. Определенно есть убывающая отдача. Всегда старайтесь использовать хотя бы 2, потому что 1 поток очень медленный.
    • т E:\temp – Это ваш временный каталог. Не забудь выбрать здесь быструю дорогу.
    • -д D:\plot – Это ваш последний каталог. Это может быть внешний USB-накопитель или другой тип толстого вращающегося жесткого диска.
    • -n 1– Наконец-то это ваша очередь. Сколько сюжетов вы хотите сделать с этими настройками? Помните, что вы можете установить здесь любое число, а затем остановить его с помощью CTRL-C.
    • Поскольку мы строим графики на той же машине, что и фермер, ключи, необходимые для создания графиков. Вводятся автоматически. Поэтому нам не нужно их здесь уточнять.

    Это в значительной степени относится и к команде PowerShell. Выполнение этой команды запустит плоттер в его путешествие, и он напечатает свой прогресс в окне. Далее идет часть сценариев. Ниже я разместил сценарий, который использую на своей машине. Скопируйте и вставьте этот скрипт в блокнот и сохраните файл как plotterscript.ps1, выбрав в качестве типа файла пункт “Все файлы”.:

    Вот сценарий. Скопируйте/вставьте строку invoke-expression для каждого плоттера, который вы хотите запустить :

    Давайте разберем сценарий выше. Вы увидите точки с запятой в приведенном выше сценарии. Они разделяют каждую команду нового окна PowerShell.

    • invoke-expression ‘cmd /c start powershell-NoExit – Эта первая часть-это то. Что говорит PowerShell открыть другое окно PowerShell. Флаг-NoExit предназначен для того. Чтобы не закрывать окно по завершении. Просто на тот случай, если вы захотите просмотреть результаты.
    • – The-Command здесь-это команды, которые мы хотим передать в новое открывшееся окно PowerShell.
    • $host.ui.RawUI.WindowTitle = “t1p1” – Эта команда позволяет переименовать заголовок окна PowerShell. Это делается для того. Чтобы отслеживать, какое это окно. Здесь я использую схему именования tempdrive 1, plotter 1. Поскольку у меня есть два плоттерных диска.
    • start-sleep 0 – Эта следующая команда имеет решающее значение. При параллельном запуске графиков вам нужно немного освободить их пространство. Чтобы все они не пытались писать в конечный каталог одновременно. При использовании внешнего накопителя это вызывает сильную головную боль. Значение здесь выражается в секундах. Например, если вам нужен час между плоттерами, он будет равен 0 для первого плоттера, 3600 для второго плоттера, 7200 для третьего и т. Д.
    • .\chia.exe создание графиков-k 32 -b 3389 -u 128 -r 2 -t E:\temp -д D:\plot -n 1 – Это команда плоттера Чиа. Которая была объяснена выше. Обновите это в настройках.
    • Read-Host-Prompt “press enter to exit” – Это был hold-me-over из предыдущей версии скрипта. Если по какой-то причине флаг “ — NoExit

    Там у вас есть это. Это должно предоставить вам достаточно информации для того. Чтобы создавать и настраивать свои собственные сценарии. Чтобы максимизировать ваши плоттеры на вашей машине. Не беспокоясь о проблемах клиента Chia.

    После сохранения файла все. Что вам нужно для его выполнения. — это щелкнуть правой кнопкой мыши файл и выбрать пункт “Запуск с помощью PowerShell”.

    Источник

    Plotting with PowerShell on Windows

    Windows PowerShell has developed into a great tool to manage and execute scripts on Windows machines. Its built into every install of Windows 10. In this post, we go into how to run plotters with PowerShell. There are a few advantages to running plotters in PowerShell:

    1. Plotting is not tied to the Chia GUI. If the Chia client experiences a crash or bug, your plotter will continue to work while the client recovers.
    2. Every PowerShell window is one plotter. If you plan to perform plotting in parallel (running multiple plotters on the same machine) then this is a perfect way to visibly see how many plotters are running and how far along they are.
    3. You can cancel a plotter queue after the current plot. Each plotter has its own queue length in PowerShell. Something that I discovered by accident, you can click the PowerShell window and press CTRL-C. Nothing will confirm the key command, but at the end of the current plot, the plotter will abort the queue.
    4. You can create a PowerShell script to run all your plotters. Possibly the best feature, you can run a script and all of your plotters are launched, with their own settings, in their own individual windows. Perfect.

    There are a few house keeping rules first before using PowerShell so you don’t hit the pitfalls that I have. Perform these steps:

    1. Open Powershell by pressing the Windows key and typing “PowerShell”
    2. When the PS window opens, click the top left of the window to open a menu. In that menu, click “Properties.”
    3. In the new window, Uncheck the box that says “QuickEdit mode”. Normally this feature is great when you want to highlight text in the window and copy it out to another place. But, it has the bad side effect of pausing whatever is running in the window. This is bad if a plotter is plotting and you accidentally click the window while dragging it around. Disabling QuickEdit mode prevents this from happening. If you want to select text in the future, just right-click inside the PS window and select “Mark”.
    4. Next, click the “Layout” tab. Locate the “Height” field. This is how much scroll back you want. I like a ton of scroll back so I max this out at 9999. This is so that you can view the progress info of many plots to see times.
    5. Click the OK button once complete.
    6. If you ever plan executing your own PowerShell scripts, enter the command below in an Administrator PowerShell Window so that it is enabled:

    Now that PowerShell is setup to prevent you from making my horrible mistake, we can proceed with how to get a plotter started. In your PS window, enter the following command:

    In the command above, note the two bolded locations. The “ ” needs to be replaced with YOUR username on your machine. Next the “app-1.0.5” is going to be replaced with the version of chia that you are running. Currently the latest is 1.0.5. But it won’t be like this always.

    After you Change Directories (cd) to that folder, enter the following command to begin a plotter:

    There is a lot of information here so I’ll break it up:

    • .\chia.exe plots create – This is pretty self explanatory. I want chia to create a plot.
    • -k 32 – This is the size of plot you want to create. K=32 is the minimum size of a plot that is considered valid on the Chia Network. It is also the fastest to create. You can go smaller on the K value but those plots are not valid on the network.
    • -b 3389 – This is the amount of ram you want to allocate to the plotter. It does not use all this ram at once, its just the limit. But, windows will preallocate this amount and call it “committed” which might push other applications to virtual memory on disk if committed is maxed. 3389 is the perfect amount if you are using 2 threads. I have found that 4 threads requires a minimum of 3408; 6 threads 3416; 8 threads 3424.
    • -u 128 – This is the bucket size. Essentially its how many pieces you want the workload to be divided in. If you change this to 64, then you have to double the ram amount. From my experience, there is no change in plot speed messing with this number. So leave it at 128.
    • -r 2 – This is the number of threads you want for the plotter. The plotter works in four phases. This number only affects phase 1 of a plot. Phase 2, 3, and 4 are all single threaded. In my testing, I saw a 30 minute speed improvement from using 2 threads to 4 threads. Then, I only saw a 5 minute improvement from 4 threads to 6 threads. There is diminishing returns definitely. Always try to use at least 2 though, because 1 thread is really slow.
    • t E:\temp – This is your temporary directory. Remember to pick a fast drive here.
    • -d D:\plot – This is your final directory. This can be an external usb drive or another type of fat spinny hard drive.
    • -n 1 – Finally this is your queue. How many plots do you want to make with these settings? Remember, you can set any number here and then stop it with CTRL-C.
    • Since we are plotting on the same machine as the farmer, the keys needed to generate the plots are automatically brought in. So we don’t need to specify those here.

    That’s pretty much it for the PowerShell command. Executing this command will start the plotter on its journey and it will print its progress in the window. Next is the scripting part. Below I have placed the script I use on my machine. Copy and paste this script into notepad and save the file as plotterscript.ps1, while selecting “All Files” for the file type:

    Here is the script. Copy/paste the invoke-expression line for each plotter you wish to start :

    Lets breakdown the script above. You will see semicolons in the script above. These separate each command of the new PowerShell window.

    • invoke-expression ‘cmd /c start powershell -NoExit – This first part is what tells PowerShell to open another PowerShell window. The -NoExit flag is to not close the window when complete. Just in case you want to review the results.
    • -Command – The -Command here is the commands we want to pass to the new PowerShell window that opens up.
    • $host.ui.RawUI.WindowTitle = “t1p1” – This command allows you to rename the title of the PowerShell window. This is to keep track which window it is. Here, the name scheme I’m using is tempdrive 1, plotter 1. Since I have two plotter drives.
    • start-sleep 0 – This next command is critical. When running plots in parallel you need to space them out a bit so that all of them are not trying to write to the final directory at the same time. If using an external drive, this causes a major headache. The value here is in seconds. For example, if you want an hour between plotters, it would be 0 for the first plotter, 3600 for the second plotter, 7200 for the third, etc.
    • .\chia.exe plots create -k 32 -b 3389 -u 128 -r 2 -t E:\temp -d D:\plot -n 1 – This is the Chia plotter command that was explained above. Update this to your settings.
    • Read-Host -Prompt “press enter to exit” – This was a hold-me-over from a previous version of the script incase for some reason the “-NoExit flag didn’t work.

    There you have it, this should provide you with enough information in order to create and tweak your own scripts in order to maximize your plotters on your machine without having to worry about Chia Client issues.

    With the file saved, all you need to execute it is to right click the file and select “Run with PowerShell”.

    Источник

    Читайте также:  Структура международной миграции инвестиций
  • Оцените статью