Аномальные значения Asic

Как такое может быть? Что заданий выдано меньше чем решений? Или я может просто не понимаю что то?

Вы путаете работу и шару. Работа не равняется принятой шаре(Accepted).

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

  1. блок, который нужно “обработать”,
  2. сложность задачи,
  3. диапазон nonce (перебираемых чисел),
    4.алгоритм хеширования (SHA-256, Ethash и т.п.).

Майнер начинает перебирать nonce, рассчитывая хеши, пытаясь найти подходящий результат (хеш меньше определённого значения).

Каждый такой перебор — это часть работы.
Шара — это промежуточный результат: хеш, который не соответствует полному уровню сложности сети, но достаточно хорош по заданной пулом “локальной” сложности.

Работа = попытки, шара = удачные попытки

Ну тогда почему Работы Меньше в два раза чем отправленных шар? В этом вопрос.

А где вы увидели отправленные шары? Accepted это принятые шары. Работа и шары НЕ должны быть равны. Они не равны, потому что шара — лишь малая часть всей проделанной работы, нужная для расчёта вознаграждения в пуле.

Я знаю что они не должны быть равны. Почему Accepted Больше чем GetWorks? Должно быть наоборот, Я понимаю когда работы было отдано больше чем принятых шар, но не наоброт, какие шары он там отдавал если этой работы небыло? или как?
Вы пишите: Работа = попытки, шара = удачные попытки
т.е получается на 1 работу он сделал 2 УДАЧНЫЕ попытки? это как?

Не должно быть. Это не обязательное условие.

Это зависит от настроек пула, от сложности шары на пуле, от хешрейта АСИКа, иногда от пары алгоритм/монета.

Пул раздает некую работу GetWorks
АСИК отправляет шары для её решения.
Если шара принята – она Accepted.
Accepted share – выполненная работа.

Но принятая шара (выполненная работа) выполненное задание, так же как принятая шара найденный блок.


  1. Один Work Unit → Несколько Шар: Каждый полученный work unit (GetWorks) — это задание от пула, которое майнер обрабатывает. В процессе обработки он может сгенерировать несколько принятых шар, которые отправляются обратно на пул. Поэтому accepted shares превышают количество GetWorks.
  2. Пул может снижать сложность, чтобы майнеры чаще находили решения и пул мог точнее оценивать проделанную работу. Это приводит к тому, что майнер генерирует больше шар на одно задание.
  3. Accepted share — это результат работы, GetWorks — количество заданий: Простой пример — если майнер получил 1000 заданий (GetWorks), и на каждое нашёл в среднем 2–3 валидных решения, то accepted будет 2000–3000.

Аналогия:

  1. Задание (GetWorks) — на стройке дали чертеж на одну секцию стены. Это не значит, что вы должны построить всю стену за один чертеж, просто начинаете класть кирпичи, ориентируясь на этот план.
  2. Accepted Shares — каждый кирпич, который вы кладете правильно по чертежу и отчитываетесь по каждому кирпичу. Чем выше ваша скорость и точность — тем больше кирпичей успеете уложить прежде чем придет следующий чертеж.
  3. Соотношение: один чертёж → вы уложили 10 кирпичей → пул принял все 10 как правильные → accepted = 10, GetWorks = 1.

Почему в другом месте / на другом пуле выглядит иначе?

  • Разные пулы могут присылать разные по сложности чертежи (GetWorks). Где-то на один GetWorks хватит и 3–5 кирпичей, а где-то можно уложить и 50.
  • GetWorks — это некий ритм в потоке заданий, а Accepted Share — ваша личная производительность.

Воооот, теперь понял, наконец то. Спасибо.

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

Как еще мне нравится показатель FoundBlocks в этом же интерфейсе.
Кто-то по незнанию может вообще подумать, что вот он лично какие-то блоки нашел.

А на самом деле это ничего общего не имеет с найденными блоками майнером.
Говорит только о том, в поиске скольких блоков участвовал пул на котором вы майните. Даже не значит, что пул что-то нашел.

Нагрузить интерфейс значениями это одно.
Объяснить человеку на что он смотрит и зачем оно ему нужно это другое.

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