Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
aeternity
5 лет назад

Улучшения эффективности синхронизации и майнинга, реализация Cuckoo Cycle Tweaks

Сегодня мы расскажем вам о том, что мы завершили 0.26.0 Release и проанализировали следующие пробелы, которые могут негативно повлиять на производительность узлов æternity:

  • Мы заметили, что с одновременной синхронизацией нескольких микроблоков, база данных не может справиться. Доступ к диску очень медленный. При работе с persist: false, база данных в 5-10 раз быстрее. Когда мы выключаем майнинг, она становится быстрее. Чтобы решить эту проблему, мы разрешили использование узлов в майнинге только в том случае, когда они синхронизируются с остальной частью сети. Чтобы быть более конкретным: мы имеем N одноранговых узлов, настроенных на синхронизацию. Если мы сильно отстаем от этих узлов, то майнинг становится неосуществимым. Важно отметить, что мы не можем просто «не майнить», если узел утверждает, что он намного опережает нас. Нам нужно выровнять его с доверенными узлами, с которыми мы имеем контакт (недоступные узлы не представляют для нас никакого интереса). Это можно смягчить помощью консультирования единомышленников, с которыми мы имеем дело; если у них медиана, выровненная с нашей, мы можем начать майнинг. Если медиана на 5 ниже нашей, мы должны немедленно прекратить его.
  • Синхронизация и майнинг параллельно могут значительно снизить производительность узла. Это связано с тем, что майнинг поддерживает ядра процессора, оставляя ограниченные ресурсы, которые узел может синхронизировать. Решение довольно простое: держите один процессор вне майнинга. В настоящее время у нас есть флаг -t N для установки угроз, которые мы используем для майнинга. Мы гарантируем, что, независимо от того, что показывает этот флаг, мы никогда не используем N больше, чем количество ядер - 1. Это означает, что у нас есть один свободный процессор для других видов деятельности, кроме майнинга.

Мы также выполнили несколько обновлений для нашего основного ядра - реализацию цикла Cuckoo Cycle:

  • Мы внедрили реализацию майнинга Cuckoo в настоящее время с реализацией, предоставленной Джоном Тромпом, изобретателем Cuckoo Cycle.
  • Мы внедрили небольшую настройку в реализацию Cuckoo, чтобы сделать ее более сложной для создания ASIC для блокчейна.
  • Кроме того, мы исправили ряд ошибок и ввели несколько второстепенных функций. Подробную информацию смотрите в разделе Pivotal Tracker.

Наконец, разработчики объединились с известными специалистами в области криптографии, теории игр, языков программирования и методов безопасности системы, присоединившись к Initiative For Cryptocurrencies & Contracts (IC3). Узнайте больше об этой новости здесь.

0
0.218 GOLOS
На Golos с November 2018
Комментарии (1)
Сортировать по:
Сначала старые