Сложность шар на пуле

24.01.2023

Основные понятия

  1. Share (шара, c англ. “доля”) — это работа которую должен сделать майнер, отправить на пул, за которую получает деньги. У шары, как и у любой работы, есть сложность.

  2. Difficulty или Diffэто сложность шары. Количество хэшей, которое должен перебрать майнер, чтобы найти решение (шару).

    • Например, если сложность равна 2000 MH, для нахождения шары майнер должен перебрать в среднем 2 000 000 000 хэшей.
  3. Hashrate — количество хэшей в секунду, которое перебирает майнер. Если хэшрейт 30 MH/s, то майнер перебирает 30 000 000 хэшей в секунду. Это скорость, с которой майнит видеокарта майнера.

  4. Хэш (Hash) — результат хэш-функции.

    • Хэш-функция — это алгоритм превращения исходной информации, с помощью особых математических формул, в хэш.
    • Хэш — результат работы алгоритма. Отображение данных в виде строки, уникальной для исходного набора информации.

Как работает майнинг на пуле?

Задача майнера — найти криптовалютный блок.

В одиночку майнеру находить блоки очень тяжело, поэтому майнеры объединяют усилия с помощью майнинг-пулов. Майнинг пул помогает разделить задачу по поиску блока между майнерами.

Награда за найденные блоки распределяется между майнерами пропорционально их вкладу в работу по поиску блока — каждый получает столько, сколько он вложил усилий для поиска блока.

Майнеры решают задачу, находят решения (sol, solution), или шары (share).

  1. Если решение выше сложности всей сети (подходит для подписи блока) — решение становится блоком. Этим решением блок подписывается и добавляется к блокчейну.
  2. Если решение ниже сложности сети, но выше сложности майнинг пула — оно ни чем не становится. Но пул знает, что вы добросовестно пытались найти подходящее решение. В блокчейн учитывается только найденный блок, а принятые пулом шары нужны для справедливого распределения награды между майнерами.
  3. Если решение ниже сложности пула или хэш решения ненастоящий, результат неправильный — решение невалидное (share invalid).

Награда, которую майнер получает от пула, определяется количеством шар, которые майнер нашёл, отправил пулу, и они были приняты и засчитаны пулом — share accepted.

Принятая шара (accepted share) — доказательство корректной работы майнящего устройства. Чем больше шар (решений) находит майнер — тем большую награду за своё участие в поиске блока он получает.

🤔Как-то сложно… Давайте сделаем ремонт!

Представьте себе многоквартирный дом, в котором идёт ремонт (блокчейн).

Одному рабочему (пользователю майнеру) слишком долго и сложно сделать ремонт во всей квартире (найти блок в одиночку сложно).

Рабочие (майнеры) объединяются в команды под руководством начальника (пул), чтобы сделать ремонт в квартире и получить зарплату — (добыть блок).

  1. Допустим, рабочий — Супермен! Невероятно сильный, быстрый, опытный. Он сам, один, в поставленные сроки, качественно делает ремонт ВО ВСЕЙ квартире. За это он получает большую зарплату с хорошим бонусом (майнер самостоятельно нашёл блок).
  2. Теперь представим команду рабочих под контролем начальника. У каждого своя комната, своя работа. Кто-то клеит обои, кто-то красит потолки, кто-то делает сантехнику (отправляют шары). Все вместе, в поставленный срок, они сдают квартиру и получают за это деньги (пул находит блок). Начальник проверяет поклеенные обои: обои поклеены правильно, ровно, качественно — работа принимается (share accepted). Начальник оценивает и распределяет зарплату за честную работу (пул распределяет награду майнерам).
  3. Теперь представим такую же команду и начальника. Так же делают ремонт в квартире. Вот только рабочий, которому поручили поклеить обои — поклеил на стену газеты! Да, он работал, но вы бы приняли у рабочих такую квартиру, с газетами на стене место обоев? Вот и начальник не принял — такая работа не засчитывается и денег за неё рабочий не получит (share invalid).

На стройке начальник оценивает работу по понятным ему критериям, в то время как пул оценивает затраченные майнером усилия с помощью такого показателя, как сложность шары — share difficulty.

Для чего нужна сложность шары?

  1. Сложность шары нужна для того, чтобы честно оценить работу майнера — посчитать его работу.
  2. Сложность шары для майнинга подбирается каждым пулом индивидуально.
  3. Чем сложность шары ниже — тем лучше для майнера. Майнер может подключать любое оборудование, даже не слишком мощное. Шары будут идти быстрее, пользователь быстрее оценит доходность.
  4. Все шары, все решения, вся работа, которую делают майнеры, проверяет пул — компьютер. Чтобы компьютер не завис от миллиарда мелких вычислений, пул поднимает сложность, чтобы шары поступали реже.
  5. Многие пулы, особенно PPLNS, ставят высокую сложность шар чтобы сэкономить на мощных серверах. Мощные сервера, которые способны обработать большое количество шар, стоят дорого.

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

Некоторые пулы подбирают сложность шары автоматически, в зависимости от мощности оборудования, на некоторых пулах сложность шар фиксированная.

Влияет ли сложность шары на прибыль майнера?

Нет, сложность шары на пуле на прибыль майнера не влияет!

  • От сложности шар не зависит количество блоков, которые находит пул.
  • Сложность шары не влияет на удачу майнера или на доход, который майнер получает за майнинг.
  • Сложность шары не влияет на количество отклонённых stale шар.

Чем сложность шары ниже — тем шара дешевле, она чаще находится видеокартой, и даже слабая видеокарта сможет её найти.

Чем сложность шары выше — тем шара дороже, она реже находится видеокартой, и для её поиска нужна видеокарта мощнее.

Всё равно сложно? Объясним ещё проще — все на стройку!👨‍🏭

Представьте себе стройку.
На стройке в двух кучах лежат мешки с цементом.

В первой куче лежит 10 мешков по 10 кг (высокая сложность).
Во второй куче лежит 100 мешков по 1 кг (низкая сложность).
Что в первой, что во второй куче — 100 кг (объём работы одинаковый).

На стройку пришли 2 грузчика, зарплата у них одинаковая — 500 рублей за переноску одной кучи. Один грузчик опытный — с тележкой (майнер с мощной фермой или АСИКом), а второй новичок — взял только перчатки (майнер с одной видеокартой GTX 1060).

  • Для того чтобы перенести мешки по 10 кг нужна тележка, а мешки по 1 кг можно перенести и в руках. (Если сложность шары очень высокая — слабая видеокарта с работой не справится, нужна большая ферма).
  • Грузчикам заплатят за то, что они перенесут мешки, но не за скорость переноса. Время, за которое они их перенесут на зарплату не влияет. (Майнерам платят за найденные шары, а не за скорость их нахождения).
  • Начальнику не важно: кто, как и сколько мешков перенесёт — важно чтобы работа была сделана! (Награда за найденный блок одна и та же).

Для начальника выгоднее, чтобы мешки были большие — их проще считать. Если нанять грузчика с тележкой — он быстро перенесёт все мешки. Большие мешки считать легко, хватит пальцев двух рук! А вот 100 мешков по 1 кг считать — можно и сбиться…

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

Грузчику же с тележкой всё равно. (майнеру с мощной фермой)
Ему что 1 мешок на 10 кг везти, что 10 мешков по 1 кг. Количество ходок не меняется, время потратит то же, и деньги получит те же.

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

А считать мешки — это уже работа начальника 😉

А теперь представьте, что стройка — это пул, только мешков бесконечное множество.
Они будут всё время, и не закончатся, только успевай носить!
Какую стройку (пул) вы выберете?

  • 👎Ту, где берут только опытных грузчиков, чтобы было меньше мешков, ведь начальник может сбиться…

или

  • 👍Ту, где всем рады, начальник грамотный и опытный, никогда не ошибается, всем даёт работу, платит честно, да ещё и новичкам помогает!

Вторую? Мы так и думали! Добро пожаловать на пул Криптекса!

Криптекс рад всем грузчикам майнерам, и не важно есть ли у них тележка мощная видеокарта. Даём работу всем, и всем платим честно! А наши умнейшие мощнейшие начальники сервера быстро и чётко посчитают все мешки шары 😎

😤Для самых стойких — пояснение на практике

Для примера, рассмотрим майнинг монеты ETC на пуле Криптекса.

Условие:

  • Сложность шары на пуле — DIFF: 2.000 GH = 2000 MH
  • 2 видеокарты RTX 3060
  • Майнер — NBMiner
  • За 15 минут майнинга на пуле, первая карта (ID 0 — 49.65 Mh\s) нашла 20 шар.
  • За 15 минут майнинга на пуле, вторая карта (ID 1 — 48.91 Mh\s) нашла 18 шар.

Как узнать, много это или мало? Можно провести проверку корректности работы карты!

Проверка корректности работы видеокарты

Зная сложность шары на пуле, и мощность оборудования (хешрейт) — можно просчитать среднее время нахождения шары на пуле.

Зачем? Чтобы понять, правильно ли работает наша видеокарта. Для этого нам нужно:

  • Задача 1. Найти среднее время нахождения шары — сложность шары нужно разделить на хешрейт видеокарты.
  • Задача 2. Определить расчётное количество шар, которое наша видеокарта должна найти с текущим хешрейтом, при текущей сложности, за время майнинга.

Чем дольше время непрерывного майнинга — тем точнее будет расчётное и фактическое количество шар, найденных видеокартой.

  • Решение 1. 2000 MH / 49.6 Mh\s = 40.3 секунды = 0.67 минут — среднее время, за которое должна находится шара.

Это среднее значение, исходя из заданной сложности пула, и актуально для определённого промежутка времени. Вначале шары могут идти часто, например каждые 5-10-20 секунд, а затем каждые 1-2-5 минут. В среднем же получим около 0.67 минуты.

Это происходит потому, что сложность каждой отдельной шары может быть разной. Зависит от “удачи оборудования” (видеокарты, АСИКа), на сколько быстро оно смогло найти шару.

Итак, мы знаем среднее время, за которое находится шара на пуле с заданной сложностью. В нашем случае получилось 0.67 минут.

Зная наш аптайм (время непрерывного майнинга), мы можем вычислить примерное количество шар, которое получит наше оборудование.

Из условия — майнер проработал 15 минут.

  • Решение 2. 15 минут (аптайм) / 0.67 минут (среднее время нахождения шары) = 22 шары

Наша первая карта (ID 0 — 49.65 Mh\s) нашла 20 шар. Наша вторая карта (ID 1 — 48.91 Mh\s) была менее удачной, нашла 18 шар, но и хешрейт у неё немного ниже.

В статистике пула, пользователь может наблюдать хешрейт больше, или меньше, чем показывает его окно майнера. Пул сам высчитывает хешрейт относительно принятых шар за промежуток времени (6 часов, 12 часов, 24 часа …), а не берёт хешрейт из окна майнера.

Чем дольше время беспрерывного майнинга — тем меньше будет разница расчётного и фактического количества шар.

Особенность майнинга такова, что сравнивать рассчитываемую и фактическую доходность нужно на большом промежутке времени только при работе в режиме 24/7. Вычисления носят вероятностный характер, и доходность — матожидание случайной величины. Поэтому они сходятся только на большом промежутке времени.

Важно пытаться отследить доходность на дальней дистанции. Чем дольше — тем точнее показатель.

  • Для пулов типа PPS (Pay Per Share — оплата за каждую шару), особенно с низкой сложность шар — будет достаточно 24 часов.
  • Для пулов типа PPLNS (Pay Per Last (luck) N Share — оплата за последнюю (удача пула) N шару), особенно с высокой сложность шар, потребуется 3-7-10 дней. Дольше — лучше.

Пулы PPS лучше для майнинга — вы точнее прогнозируете вашу прибыль, вы не зависите от удачи пула. Именно потому Криптекс использует PPS пулы для майнинга с низкой сложностью.

А что, если…

  1. А что, если бы мы при той же сложности, при том же аптайме и том же хешрейте получили не 20, а 5 шар?
    • Сложность на пуле — статичная, 2 GH.
    • Пул благополучно принял 5 решений.
    • Значит по факту наша видеокарта не майнит с указанным хешрейтом! Программа-майнер ошибается, или видеокарта “сыпет” плохими шарами (клеит газеты вместо обоев). Нужно искать проблему на нашей ферме.
  2. А что, если бы сложность была не 2 GH, а 8 GH? Мы бы получили больше денег? Давайте посчитаем!
    • Карта майнит 49.65 Mh\s
    • Аптайм — 15 минут
    • Сложность — 8 GH = 8000 MH
    • 8000 MH / 49.65 Mh\s = 161.13 секунд = 2.69 минут — среднее время за шару 15 минут (аптайм) / 2.69 минут = 5.6 шар
    • Это значит, что со сложность шары 8 GH, наша видеокарта нашла бы 5-6 шар, а не 20, как при сложности 2 GH.

Давайте вспомним стройку: что 20 шар со сложность 2 GH, что 5 шар со сложностью 8 GH будут стоить майнеру одинаково.

  • Либо вы перенесёте 10 мешков по 1 кг в руках за 5 ходок.
  • Либо вы перенесёте 1 мешок на 10 кг в тележке за 1 ходку.

Что за одну, что за другую работу вам заплатят одинаково!

Эта статья доступна на других языках: