Dag file что это
Текущая эпоха Эфириума и размер ДАГ-файла Ethereum сегодня
Подготовка к майнингу и покупка оборудования — процесс, требующий много времени и внимания. Популярным способом добычи цифровых активов считаются фермы из видеокарт. На них можно добывать Эфир и другие альткоины. Перед покупкой оборудования инвесторы интересуются сложностью и хешрейтом сети, но многие не учитывают такой фактор, как размер ДАГ файла Ethereum. В статье раскрываются подробности о том, что такое DAG файл, его размере, на что он влияет. Также объясняется, какая сейчас эпоха Эфириума.
ETH DAG epoch — что такое ДАГ файл Эфира
В среднем, одна Ethereum эпоха длится от 4 до 5 дней, затем происходит смена эпохи Эфириум. DAG влияет на майнинг и выбор оборудования. Любое устройство должно иметь достаточный запас памяти для хранения файла, хотя это не влияет на хешрейт. Уже нельзя добывать эфир на картах с размером памяти 2 Гб, 3 и 4 Гб.
DAG файл Ethereum — размер сегодня, где хранится и как удалить
На 19 октября 2021 года размер DAG file составляет 4.500 GB. Посмотреть актуальные данные можно на сервисе, который обновляется в режиме онлайн: minerstat.com/dag-size-calculator?lang=ru. Там также можно узнать, когда размер достигнет значения в 5, 6,7 Гб и далее, чтобы можно было делать прогнозы относительно того, когда оборудование для майнинга устареет.
Майнер эфира в любом случае использует ДАГ файл, даже не осознавая этого. После запуска добычи монет он автоматически загружается в оперативную память видеокарты. Чтобы проверить размер файла, необходимо воспользоваться дополнительной программой GPU-Z, где отображаются реальная информация о работе оборудования. Ее необходимо запустить во время работы майнера и тогда в строке Memory Usage появится полный размер DAG file одной или нескольких видеокарт. При майнинге эфира пользователи часто сталкиваются с проблемой загрузки ДАГ, что не позволяет запустить оборудование должным образом. Для решения проблемы можно сделать следующее:
Примечание: В большинстве случаев DAG расположен по директории C:/Users/Имя_ПК/AppData/Local/Ethash. В противном случае воспользуйтесь поиском по слову «Ethash» и найдите нужную папку.
Проблема удаления заключается в том, что файл или папка могут быть скрытыми от системы. Для решения воспользуйтесь пошаговой инструкцией:
После выполнения инструкции все папки станут доступными для отображения и поиска, поэтому можно переходить к изменению DAG.
Размер ДАГ файла Ethereum
Размер DAG file динамический и постоянно увеличивается. Как уже упоминалось выше, каждые 4-5 дней он увеличивается на 8 МБ. Для определения размера DAG используют следующее:
Важно: Способ с сайтом считается наиболее удобным из-за частоты обновлений, привязке к реальному времени, а также калькулятору размера DAG. Достаточно ввести нужный блок и узнать, каким будет объем спустя n-количество времени, какая сейчас эпоха Эфириума и т. д.
По таблице ниже видно, как менялся DAG file последние годы и чего ждать в будущем:
«Поговорим за DAG» или «Когда моя видеокарта перестанет майнить Эфир?»
Простой арифметический расчет. Никакой магии. Проходите, садитесь, посчитаем вместе.
Теория
DAG файл — блок данных, более 1 Гб в размере, используемый для нахождения решения блока в сети блокчейн на алгоритме Dagger Hashimoto (последняя версия алгоритма называется Ethash). Разумеется, основная монета Ethash — Эфириум (Ethereum), но помимо ETH есть также другие монеты на этом алгоритме: Ethereum Classic, Musicoin, Ubiq, Daxx, Whale, Pegas, Expanse, Dubaicoin, Soil и так далее. Если еще не читали, обязательно ознакомьтесь со статьей «Сложность и хешрейт сети Эфириум на пальцах». Именно DAG файл загружается в память видеокарт, когда запускается майнер. Рассмотрим на примере Claymore:
Размер DAG файла со временем увеличивается. Происходит это через каждые 30 000 блоков и называется сменой эпох, т.е. каждой эпохе соответствует свой размер DAG. Где узнать текущий размер DAG? Мы рекомендуем этот сервис: https://investoon.com/tools/dag_size. Он показывает текущий размер DAG файла для основных валют на алгоритме Ethash, а также позволяет определить размер DAG файла по номеру блока. Повторимся, каждому блоку соответствует своя эпоха, а у каждой эпохи свой размер DAG.
Рассчет DAG файла идет по определенному алгоритму, можете посмотреть его здесь и проверить, что он работает (мы проверили). Кстати, все значения DAG давно рассчитаны и табулированы, можно брать значения DAG из этого массива.
Каждую эпоху DAG файл увеличивается на 8 МБ.
Время нахождения блока у каждой монеты разное: ETH — 30 секунд, ETC — 15 секунд, EXP — 90 секунд. Соответственно в сети Ethereum Classic 30 000 блоков пройдут в 6 раз быстрее, чем в сети Expanse. Именно поэтому на текущий момент у ETC уже 151 эпоха (DAG = 2.18 ГБ), а у EXP всего лишь эпоха 25 (DAG = 1.2 ГБ). Надо признать, что сравнение не очень честное, т.к. Экспанс появился чуть позже, чем Эфир.
Практика
Давайте рассмотрим блокчейн Ethereum.
На время написания статьи последний блок ETH — 4 322 994, идет эпоха 144 и размер DAG 2134 МБ.
На блоке 4 350 000 начнется эпоха 145 и размер DAG вырастет до 2142 МБ.
Это должно произойти через 27 000 блоков (грубо, 9 октября).
Когда видеокарты перестанут майнить Эфир?
Все зависит от размера памяти видеокарты.
Видеокарты с памятью 2 ГБ перестали работать в сети Эфириум в ноябре-декабре 2016. Умирание плавно происходило после эпохи 93 с размером DAG 1.73 ГБ. Дело в том, что часть памяти используется под буфер и невозможно использовать все 100% карты под DAG. Проверить это легко. Ниже данные загрузки памяти майнером Claymore на видеокарте ноутбука, эпоха 144:
Сейчас карта использует 2.3 ГБ, т.е. почти на 200 МБ больше, чем размер DAG (2.13 ГБ). Кстати, если к видеокарте подключен монитор, то на него расходуется еще 150-200 МБ места.
Если предположить, что время нахождения блока ETH скоро станет 14 секунд и не будет изменяться, то получается, что видеокарты с 3 ГБ памяти начнут отмирать, примерно, через 400 дней, в конце 2018 года. Расчет простой, можете проверить сами:
Картам с 4 ГБ памяти отведено намного больше, почти 3 года, их владельцам точно пока не о чем беспокоиться, технология блокчейн развивается так стремительно, что к этому времени все может уже 10 раз поменяться.
Обратите внимание! Не стоит отчаиваться, если ваша видеокарта не может майнить Ethereum или Ethereum Classic из-за малого размера памяти. Многие монеты на алгоритме Ethash до сих пор прекрасно работают с 2 ГБ видеокартами, потому что эпоха еще небольшая: Ubiq — эпоха 8, Expanse — эпоха 25, Musicoin — эпоха 37. DAG файл этих монет на данный момент чуть больше 1 ГБ. Более того, майнинг этих монет зачастую может быть выгоднее майнинга Эфира, см. Whattomine.
Напишите нам в чат, если у вас остались вопросы.
В выходные как всегда будем вас развлекать на нашем канале в Telegram.
От блокчейна к DAG: избавляемся от посредников
В этой статье я расскажу вам о DAG (Directed Acyclic Graph, направленный ациклический граф) и его применении в распределённых реестрах, и мы сравним его с блокчейном.
DAG не является чем-то новым в мире криптовалют. Возможно вы слышали о нём как о решении проблем масштабируемости блокчейнов. Но сегодня мы будем говорить не о масштабируемости, а о том, что делает криптовалюты отличными от всего остального: децентрализация, отсутствие посредников и устойчивость к цензуре.
Также я покажу вам, что DAG на самом деле более устойчив к цензуре, и в нём отсутствуют посредники для доступа к реестру.
В привычных нам блокчейнах у пользователей нет прямого доступа к самому реестру. Когда вы хотите добавить транзакцию в реестр, вам приходится «просить» сделать это производителя блоков (блок-продюсера, он же «майнер»). Именно майнеры решают, какую транзакцию добавить в следующий блок, а какую — нет. Именно у майнеров есть эксклюзивный доступ к блокам и право решать, чью транзакцию принять для добавления в реестр.
Майнеры — это посредники, стоящие между вами и распределённым реестром.
На практике же, обычно небольшое количество пулов майнеров коллективно контролируют более половины вычислительных мощностей сети. Для биткоина это четыре пула, для Ethereum — два. В случае их сговора, они могут блокировать любые транзакции, какие захотят.
За последние несколько лет было предложено множество вариаций блокчейнов, различающихся в принципах выбора производителей блока. Но сами производители блоков никуда не уходят, они всё ещё «стоят на шлагбауме»: каждая транзакция должна пройти через производителя блоков, и если он не принимает её, то транзакции, по факту, не существует.
Это неизбежная проблема в случае с блокчейном. И если мы хотим её решить, мы должны радикально изменить дизайн и полностью избавиться от блоков и производителей блоков. И вместо того, чтобы выстраивать цепочку блоков, мы будем соединять сами транзакции, включая в каждую транзакцию хеши нескольких предыдущих. В результате мы получим структуру, известную в математике как направленный ациклический граф – DAG.
Теперь каждый имеет прямой доступ к реестру, без посредников. Когда вы хотите добавить транзакцию в реестр – вы просто добавляете её. Выбираете несколько родительских транзакций, добавляете свои данные, подписываете и посылаете вашу транзакцию пирам в сети. Готово. Нет никого, кто бы мог помешать вам сделать это, поэтому ваша транзакция уже в реестре.
Это самый децентрализованный, самый неуязвимый перед цензурой способ добавления транзакций в реестр без посредников. Потому что каждый желающий просто добавляет свои транзакции в реестр, не спрашивая разрешения ни у кого.
DAG можно считать третьей стадией эволюции реестров. Сначала были централизованные реестры, где одна сторона контролировала доступ к ним. Потом пришли блокчейны, в которых уже было несколько контролёров, которые записывали транзакции в реестр. И, наконец, в DAG вообще нет никаких контролёров, пользователи добавляют свои транзакции напрямую.
Теперь, когда у нас есть такая свобода, она не должна приводить к хаосу. Мы должны иметь согласие о состоянии реестра. И это согласие, или консенсус, обычно означает согласие о двух вещах:
Если бы это был блокчейн, майнеры бы решали, что происходит. Всё, что майнер решает включить в блок – то и происходит. Всё, что он не включает в блок – не происходит.
В блокчейнах майнеры также решают вторую проблему консенсуса: порядок. Им разрешено упорядочивать транзакции внутри блока как угодно.
Как же определить порядок транзакций в DAG?
Только лишь потому, что граф у нас направленный, мы уже имеем некоторый порядок. Каждая транзакция ссылается на одну или несколько предыдущих, родительских. Родители, в свою очередь, ссылаются на своих родителей, и так далее. Родители, очевидно, появляются раньше дочерних транзакций. Если какая-либо из транзакций может быть достигнута переходами по ссылкам «родитель-ребёнок», мы точно знаем порядок между транзакциями в этой цепочке транзакций.
Но порядок между транзакциями не всегда можно определить только из формы графа. Например, когда две транзакции лежат на параллельных ветвях графа.
Чтобы разрешить неоднозначность в таких случаях, мы полагаемся на так называемых провайдеров порядка. Мы также называем их «свидетелями». Это обычные пользователи, задачей которых является постоянная отправка транзакций в сеть с соблюдением порядка, т.е. так, что каждая их предыдущая транзакция может быть достигнута переходами по ссылкам «родитель-ребёнок». Провайдеры порядка – доверенные пользователи, и вся сеть полагается на то, что они не будут нарушать данное правило. Для того чтобы рационально доверять им, мы требуем, чтобы каждый провайдер порядка был известным (неанонимным) человеком или организаций и имел что-то, что может потерять в случае, если нарушит правила, например, репутацию или бизнес, основанный на доверии.
Провайдеры порядка выбираются пользователями, и каждый пользователь включает список его доверенных провайдеров в каждую транзакцию, которую отправляет в сеть. Этот список состоит из 12 провайдеров. Это довольно маленькое число, чтобы человек мог проверить личности и репутацию каждого из них, и достаточное для того, чтобы сеть продолжала работать в случае неизбежных проблем с меньшинством провайдеров порядка.
Данный список провайдеров варьируется от пользователя к пользователю, но списки у соседних транзакций могут отличаться максимум на одного провайдера.
Теперь, когда у нас есть провайдеры порядка, мы можем выделить их транзакции в DAG и упорядочить все другие транзакции вокруг порядка, созданного ими. Возможность создания такого алгоритма есть (см. Obyte White Paper для технических деталей).
Но порядок во всей сети не может быть определён моментально, нам требуется время на то чтобы провайдеры порядка отправили достаточное количество своих транзакций, чтобы удостовериться в итоговом порядке прошлых транзакций.
И, поскольку порядок определяется только позициями транзакций провайдеров в DAG, все ноды сети рано или поздно получат все транзакции и придут к одинаковому заключению относительно порядка транзакций.
Итак, мы имеем согласие относительно того, что считаем случившемся: любая транзакция, попавшая в DAG, случилась. Также мы имеем согласие о порядке событий: это либо видно исходя из родственных связей транзакций, или же выводится из порядка транзакций, отправленных провайдерами порядка. Значит мы имеем консенсус.
Данный вариант консенсуса мы имеем в Obyte. Несмотря на то, что доступ в реестр Obyte полностью децентрализован, консенсус относительно порядка транзакций всё ещё централизован, т.к. 10 из 12 провайдеров контролируются создателем (Антон Чурюмов), и только два из них – независимые. Мы ищем кандидатов, желающих стать одним из независимых провайдеров порядка, чтобы помочь нам децентрализовать установление порядка в реестре.
Недавно появился третий независимый кандидат, желающий установить и поддерживать ноду провайдера порядка – Университет Никосии.
Теперь, как мы контролируем двойные траты (double-spends)?
По правилам, при обнаружении двух транзакций, тратящих одну и ту же монету, та транзакция, которая оказалась раньше в итоговом порядке всех транзакций, выигрывает. Вторая же инвалидируется алгоритмом консенсуса.
В случае, если имеется возможность установить порядок между двумя транзакциями, тратящими одну монету (по связям родитель-ребёнок), то все ноды сразу отклоняют такую попытку двойной траты.
В случае же, если порядок не виден из родительских связей между двумя такими транзакциями, они обе принимаются в реестр, и нам потребуется дождаться консенсуса и установления порядка между ними с помощью провайдеров порядка. Тогда выиграет более ранняя транзакция, а вторая станет невалидной.
Хоть вторая транзакция и становится невалидной, она всё равно остаётся в реестре, потому как уже имеет последующие транзакции, ссылающиеся на неё, которые ничего не нарушали и не знали, что в будущем эта транзакция станет невалидной. Иначе нам пришлось бы удалять родителя у хороших последующих транзакций, что нарушило бы главный принцип сети – любая правильная транзакция принимается в реестр.
Это очень важное правило, позволяющее всей системе быть устойчивой к попыткам цензуры.
Давайте представим, что все провайдеры порядка вступают в сговор в попытке «зацензурить» одну конкретную транзакцию. Они могут игнорировать её и никогда не выбирать «родителем» для своих транзакций, но этого недостаточно, эта транзакция всё ещё может быть включена опосредованно как родитель какой-нибудь другой транзакции, выпущенной любым пользователем сети, который не участвует в сговоре. С течением времени, такая транзакция будет получать всё больше и больше детей, внуков и правнуков от обычных пользователей, разрастаясь как снежный ком, и всем договорившимся провайдерам порядка придётся игнорировать и эти транзакции тоже. В конце концов, им придётся зацензурить всю сеть, что равносильно саботажу.
Таким образом, DAG остаётся цензуро-устойчивым, даже если имеет место сговор провайдеров порядка, тем самым превосходя блокчейн по устойчивости к цензуре, в котором мы ничего не можем сделать, если майнеры решат не включать какую-либо из транзакций. И это следует из главного свойства DAG: участие в реестре абсолютно независимо и без посредников, а транзакции необратимы.
Как добывать Эфир на видеокартах с 4 Гб после увеличения DAG-Файла
Начиная с 16 Декабря 2020 года видеокарты с 4 ГБ видеопамяти не смогут нормально добывать Эфириум. Из этого положения есть три выхода: покупка новой видеокарты, использование модифицированного майнера или смена добываемой криптовалюты. Как продолжать майнить на видеокартах с 4Gb после разрастания размера файла? Об этом подробнее читайте в данной статье.
Почему майнинг на видеокартах с 4 Гб станет неприбыльной
При добыче криптовалют производятся сложные математические операции, результат которых записывается в единый реестр. Файл с копией реестра хранится у каждого майнера в памяти видеокарты.
Каждая видеокарта обладает ограниченным количеством видеопамяти, используемой для подгрузки текстур и моделей. При майнинге, память видеокарты хранит результаты математических операций во внутренней памяти.
После достижения предельного размера файла, например 4 Гб, он больше не может поместиться в памяти видеокарты, которая ограничена 4 Гигами DDR3, GDDR4 или GDDR5. Называется этот реестр «DAG-файл». Чтобы видеокарта могла продолжать добычу крипты без ошибок, ей необходимо наличие копии DAG-файла в памяти.
Что такое DAG-файл в майнинге
DAG-файл используется при запуске майнера и загружается напрямую в память видеокарты. Благодаря нему идёт процесс добычи криптовалюты: видеокарты подбирают решения для новых блоков, анонсируют их в блокчейн и получают награду за добытые блоки.
Даг-файл выполняет и функцию обеспечения безопасности — файл хранит в себе данные о валидных и невалидных блоках, которые не могут быть присоединены к блокчейну. По сути, файл это копия актуальных данных блокчейна, в разных его вариациях, хранимая на устройствах майнеров.
Рост размера DAG-файла составляет 8 мегабайт каждые 30 тысяч добытых блоков. Несложный подсчет показывает, что с ростом популярности добычи Эфириума и количества вовлеченных майнеров Даг файл должен расти пока не достигнет своего предельного размера.
Почему растет размер даг-файла Эфира при майнинге
Внутри Даг-файла хранится огромное количество данных, по сути, это локальная копия блокчейна Эфириума. Каждый майнер хранит или полную копию или частичную, в случае с Эфириумом хранится полная копия всех операций по блокам. Даг-файл необходим для обеспечения безопасности в случае, например, когда хакеры пытаются подделать блок или результаты вычислений.
Постоянный майнинг влияет на размер DAG-Файла, который растет в размере и по состоянию на Октябрь 2020 года достиг 3.91 Гб. Даг файл растет на 100 Мб в среднем каждые 2 месяца. Эпоха эфира на момент написания статьи — 356.
Даг-файл выполняет функцию защиты сети от хакерских атак 51% и подобных вмешательств в стабильную работу блокчейна. Чем больше майнеров и выше хешрейт, тем выше стабильность сети.
Сравнительная таблица роста Даг-файлов при майнинге на алгоритме Ethash
Сравнительная таблица роста Даг-файлов различных криптовалют показывает, что расчетная дата «окирпичивания» видеокарт с 4 Гб видеопамяти добывающих ETH — 22 Декабря, 2020 года. Усложняется и добыча других криптовалют, например карты с 3Gb видеопамяти не смогут майнить PIRL с 20 Ноября 2020, а ELLA станет недоступной с 8 Декабря.
Одним из самых выгодных вариантов для добычи Эфириума будут видеокарты с 8 Гб видеопамяти — её хватит вплоть до 2027 года. Покупка карты на 5 Гб позволит отсрочить проблему на 2 года, видеокарта на 6 Гб продержится чуть больше — 4 года.
Что делать владельцам RX 5хх или GTX 10хх карт c 4 Gb
В бочке дегтя должна быть ложка мёда: в Августе, из-за атаки 51% на блокчейн Эфириума, разработчики приняли решение снизить размер Даг-файла. Подробно разработчики сети Эфириума выразились на своем Ютуб-канале. Из официального реестра сценариев развития сети, на эпохе 390 будет изменен размер даг-файла Эфириума.
Принудительный хардфорк сети Эфириума
Каждой эпохе соответствует свой размер даг-файла, но интервал остается неизменным — 30 000 блоков до повышения размера на 8 Мб.
Основную вычислительную мощность сети Эфириума составляют 4 Гиговые видеокарты, обеспечивая создание новых блоков, валидацию существующих и охрану от хакерских атак. Увеличение даг-файла в размере выше 4 Гб может снизить стабильность работы блокчейна, вызвать проблемы с транзакциями и работой смарт-контрактов.
Разработчики решили растянуть интервал между эпохами с 30 000 до 60 000 блоков, что позволить снизить скорость роста размера даг-файла. Согласно предложению, принудительное дробление цепочки произойдет на эпохе 390, что позволить уменьшить даг-файл примерно до 2.7 Гб.
Рекомендация владельцам 4 Гб карт — пока не продавать, вполне вероятно, что скоро они снова будут релевантны.
Как продолжать майнить Эфир с видеокартой на 4 Gb
Разработчики майнерских клиентов знают, что Даг-файл разрастается и принимают меры для обеспечения работоспособности добывающих мощностей.
Создатели lolMiner разработали решение «Зомби-режим», который позволяет добывать криптовалюту даже на видеокартах с 4 Gb памяти. Благодаря зомби-режиму, видеокарты смогут продолжать майнинг.
Само название «Зомби-режим» вполне дословное — разработчик lolMiner Вилке Трайа объяснил его так «Видеокарты должны быть мертвы к определенной дате, но они продолжают майнить, пусть и с просадкой. Прямо как нежить».
В результате, добыча Эфириума будет продолжаться, пусть и с небольшой просадкой по производительности.
Чтобы подтвердить результаты разработки, Вилке поднял тестовую сеть Эфириума с эпохой 390 и запустил в ней видеокарту с 4 Гб видеопамяти — она продолжала выдавать хешрейт в 23 МН/s.
Согласно графику Вилке, критического падения производительности следует ожидать 8 Марта 2021 года, когда скорость добычи упадет до 6.83. Если выбирать между Линуксом и «Окнами», то разница в хешрейта после эпохи 382 будет различаться в два раза.
На графике — производительность RX 580, которая при норме в 30 МН/s постепенно падала до 6.8 в период с эпохи 375 по 400 внутри тестовой сети.
Этой скорости может хватить на 60 дней после прекращения добычи на видеокартах с 4 Гб, но вполне вероятно, что в сети Эфириума произойдет хардфорк на 390 эпохе с сокращением размера даг-файла.
Как включить «Зомби-режим» на майнерах?
При запуске, lolMiner автоматически включит зомби-режим, в случае, если карта не имеет необходимое количество памяти. Единственный контролируемый параметр для зомби-режима это «keepfree», обозначающий резервирование места внутри памяти видеокарты для её корректной работы. При запуске «Из коробки» резервируется 56 МБ для Windows и 5 для Linux.
Настройка майнингового клиента на добычу с 4 Gb
Настройки бат-файла для запуска майнера на Виндовс выглядят следующим образом:
lolMiner.exe —algo ETHASH —pool mining.hashalot.io:3401 —user номер-кошелька-для-добычи —keepfree 56
Строчный параметр для Linux:
./lolMiner —algo ETHASH —pool mining.hashalot.io:3401 —user кошелёк-пользователя —keepfree 5
Эти настройки позволят запустить майнер lolMiner в режиме совместимости с ростом размера DAG-файла и продолжить добычу ETH. Что касается ETC, то прибыльность его добычи довольно высока и форк позволит добывать крипту даже на картах с 3 Гб.
Какие есть альтернативы майнингу Эфириума
Согласно калькулятору размера даг-файла для криптовалют на основе алгоритма Ethash, видеокартам с 3 Гб видеопамяти есть где развернуться. Хронологический предел их жизненного цикла наступит не раньше, чем в 2021 году.
Выводы
Три вывода напоследок: