Ethereum алгоритм майнинга: Ethash | ethereum.org

Понимание предлагаемого изменения алгоритма майнинга Ethereum — EIP-4337 | Академия солидности | Монахи | Апр, 2023

Опубликовано в

·

Чтение: 2 мин.

·

25 Апр

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

Понимание предлагаемого изменения алгоритма майнинга Ethereum — EIP-4337

EIP-4337 — это предлагаемое предложение по улучшению Ethereum (EIP), в котором предлагается изменить алгоритм майнинга Ethereum на ProgPoW, сокращение от Programmable Proof of Work. Это предлагаемое изменение призвано помочь уравнять правила игры для мелких майнеров и уменьшить преимущество специализированного оборудования для майнинга, такого как ASIC.

В настоящее время в сети Ethereum используется алгоритм майнинга под названием Ethash. Ethash спроектирован так, чтобы быть жестким с памятью, а это означает, что для решения требуется большой объем памяти. Это было сделано для того, чтобы специализированное оборудование для майнинга, такое как ASIC, не имело преимущества перед обычными видеокартами (GPU).

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

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

В сообществе Ethereum ведутся серьезные споры о том, стоит ли внедрять ProgPoW. Сторонники предложения утверждают, что оно поможет децентрализовать сеть и сделать ее более устойчивой к централизации крупными майнинговыми операциями. Оппоненты утверждают, что это может привести к значительным сбоям в работе сети и что недостаточно доказательств в поддержку заявления о том, что ProgPoW будет более устойчив к ASIC, чем Ethash.

В конечном счете, принимать ProgPoW или нет, зависит от сообщества Ethereum в целом. Предложение все еще находится на ранней стадии обсуждения, и еще неизвестно, будет ли оно принято.

В заключение, EIP-4337 предлагает изменить алгоритм майнинга Ethereum на ProgPoW, чтобы уравнять правила игры для мелких майнеров и уменьшить преимущество специализированного оборудования для майнинга. Несмотря на то, что ведутся серьезные споры о том, следует ли принимать это предложение, оно представляет собой важную дискуссию о будущем сети Ethereum и о том, как обеспечить ее децентрализованность и доступность для всех.

  • Предложение по улучшению Ethereum 4337
  • Что такое ProgPoW и почему Ethereum рассматривает его
  • Часто задаваемые вопросы о ProgPoW: https://github. com/ifdefelse/ProgPOW#faq
  • Подробное руководство по ProgPoW

guide/mining.md at master · ethereum/guide · Гитхаб

Майнинг — это общий термин для защиты сети Ethereum и проверки новых транзакций в обмен на небольшой платеж. Любой может майнить, хотя это действительно помогает, если у вас есть хороший графический процессор. Как часто вам платят, зависит от того, кто еще занимается майнингом и какой мощностью майнинга (читай: вычислительной мощностью) обладает ваше оборудование.

Мы используем специальный алгоритм под названием Ethash, представляющий собой комбинацию алгоритмов Хашимото и Кинжала, разработанных Тимом Хьюзом, Виталиком Бутериным и Мэтью Вамплер-Доти. Из-за высокой пропускной способности памяти это отличный кандидат для майнинга на графическом процессоре, но плохой кандидат для специализированного оборудования. Мы планируем перейти на алгоритм Proof-of-Stake в течение следующих 9 месяцев после выпуска Ethereum Serenity.

Поскольку алгоритм требует больших ресурсов памяти, вам потребуется 2 ГБ ОЗУ на каждый GPU, с которым вы хотите майнить, по крайней мере, в обозримом будущем. (Набор данных начинается с 1 ГБ и увеличивается каждые несколько дней, поэтому вам может сойти с рук 1,5 ГБ в течение первых нескольких месяцев, если такие видеокарты существуют.)

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

Настройка в Linux

Для этого краткого руководства вам понадобится Ubuntu 14.04 или 15.04 и графические драйверы fglrx. Вы также можете использовать драйверы NVidia и другие платформы, но вам придется найти собственный способ установки с ними работающей OpenCL.

Если вы используете версию 15.04, перейдите в раздел «Программное обеспечение и обновления > Дополнительные драйверы» и установите для него значение «Использование видеодрайверов для графического ускорителя AMD от fglrx». После того, как драйверы установлены и используются, все готово, переходите к следующему разделу!

Если вы используете версию 14.04, перейдите в раздел «Программное обеспечение и обновления > Дополнительные драйверы» и установите для него значение «Использование видеодрайверов для графического ускорителя AMD от fglrx». К сожалению, для некоторых из вас это не сработает из-за известной ошибки в Ubuntu 14.04.02, не позволяющей вам переключиться на проприетарные графические драйверы, необходимые для майнинга графического процессора.

Итак, если вы столкнулись с этой ошибкой, прежде чем делать что-либо еще, перейдите в раздел «Программное обеспечение и обновления > Обновления» и выберите «Надежно предложены предварительно выпущенные обновления». Затем вернитесь в «Программное обеспечение и обновления > Дополнительные драйверы» и установите для него значение «Использование видеодрайверов для графического ускорителя AMD от fglrx»). Перезагрузить.

После перезагрузки стоит проверить правильность установки драйверов.

Что бы вы ни делали, если вы находитесь на 14.04.02, не изменяйте драйверы или конфигурацию драйверов после их установки. Например, использование aticonfig --initial может и, скорее всего, «сломит» вашу настройку. Если вы случайно измените их конфигурацию, вам потребуется деинсталлировать драйверы, перезагрузиться, переустановить драйверы и перезагрузиться.

Майнинг на Ethereum с eth прост. Если вам нужно майнить с помощью одного графического процессора, достаточно просто запустить eth . Если нет, вы можете использовать комбинацию eth и ethminer . Это работает на всех платформах, хотя Linux обычно проще всего настроить.

Майнинг на одном GPU

Для майнинга на одном GPU все, что нужно сделать, это запустить eth со следующими аргументами:

 eth -i -v 1 -a 0xcadb3223d4eebcaa7b40ec5722967ced01cfc8f2 --client-name "ДОПОЛНИТЕЛЬНОЕ ИМЯЗДЕСЬ" -x 50 -m на -G
 
  • -i Запрашивает интерактивную консоль JavaScript, чтобы мы могли взаимодействовать с клиентом
  • -v 1 Установите уровень детализации на 1. Давайте не будем получать спам от сообщений.
  • -a YOURWALLETADDRESS Установите базу монет, на которую будут поступать вознаграждения за майнинг. Приведенный выше адрес является лишь примером. Этот аргумент действительно важен, убедитесь, что вы не ошиблись в адресе вашего кошелька, иначе вы не получите выплату в эфире.
  • --client-name "ДОПОЛНИТЕЛЬНО" Установите необязательное имя клиента для вашей идентификации в сети
  • -x 50 Запрос большого количества пиров. Помогает найти сверстников в начале.
  • -м на Фактически запуск с включенным майнингом.
  • -G включить майнинг на GPU.

Во время работы клиента вы можете взаимодействовать с ним через интерактивную консоль.

Майнинг на нескольких графических процессорах

Майнинг

с несколькими GPU и eth очень похож на майнинг с помощью geth и нескольких GPU.

  1. Убедитесь, что узел eth++ работает с правильно установленным вашим адресом coinbase:
 эт-и-в 1-а 0xcadb3223d4eebcaa7b40ec5722967ced01cfc8f2 --client-name "ДОПОЛНИТЕЛЬНОЕ ИМЯЗДЕСЬ" -x 50 -j
 

Обратите внимание, что мы также добавили аргумент -j , чтобы клиент мог включить сервер JSON-RPC для связи с экземплярами ethminer. Кроме того, мы удалили аргументы, связанные с майнингом, так как ethminer теперь будет выполнять майнинг за нас.

  1. Для каждого из ваших графических процессоров запустите отдельный экземпляр ethminer:
 ethminer --no-precompute -G --opencl-device XX
 

Где XX — это порядковый номер, соответствующий устройству openCL, которое вы хотите использовать для ethminer.

Чтобы легко получить список устройств OpenCL, вы можете выполнить ethminer --list-devices , который
предоставить список всех устройств, которые OpenCL может обнаружить, а также некоторую дополнительную информацию по каждому устройству.