Почему в папке .ethash есть два полных файла R23 (файлы DAG)?

Я использую Ubuntu 14.04 и запускаю в ней go-ethereum. В папке ~/.ethash/ я вижу, что в начале майнинга создаются два DAG-файла. Первый создается сразу после начала майнинга, а второй через какое-то время. Мне интересно узнать причину этого.

Один из них — это будущая группа доступности баз данных, созданная заранее, чтобы можно было быстро переключаться между текущей и будущей группами доступности баз данных. Я думаю, что об этом уже спрашивали... Позвольте мне проверить.
(Я не мог видеть, что этот точный вопрос задавался раньше, поэтому я добавлю ответ.)

Ответы (1)

Каждые 30 000 блоков — где 30 000 блоков называются эпохой — создается новый файл DAG. Этот механизм предоставляет алгоритму Ethash что-то новое для работы.

По истечении 30 000 блоков клиенты хотят как можно быстрее переключиться со своей текущей DAG на следующую. Для этого заранее создается следующий файл DAG.

Из документации :

Ethash PoW требователен к памяти, что делает его практически устойчивым к ASIC. В основном это означает, что для вычисления PoW требуется выбрать подмножества фиксированного ресурса, зависящего от одноразового номера и заголовка блока. Этот ресурс (данные размером в несколько гигабайт) называется DAG. DAG полностью меняется каждые 30000 блоков (100-часовое окно, называемое эпохой), и для его создания требуется некоторое время. Поскольку DAG зависит только от высоты блока, его можно предварительно сгенерировать, но если это не так, клиенту нужно дождаться окончания этого процесса, чтобы создать блок.

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

Отключить автоматическую предварительную генерацию DAG?

Удаляется ли старый файл после 30 000 блоков?
Да, старая DAG удалена, чтобы у вас не осталось большого количества больших файлов.
Кроме того, я предполагаю, что новый файл DAG будет создан для использования после следующих 30 000 блоков. Это правда?
Да, правильно. Каждые 30 000 блоков будет происходить одно и то же.