Разработка смарт-контрактов является базовым навыком блокчейн-инженеров. Хотя для написания логики контрактов можно использовать высокоуровневые языки, такие как Solidity, EVM не может непосредственно интерпретировать этот код. Необходимо скомпилировать его в низкоуровневые операции или байт-код, которые могут выполняться виртуальной машиной. На данный момент существуют инструменты, которые могут автоматически выполнять этот процесс преобразования, уменьшая нагрузку на разработчиков в понимании деталей компиляции.
Несмотря на то, что компиляция влечёт за собой некоторые накладные расходы, инженеры, знакомые с низкоуровневым кодированием, могут напрямую использовать операции в Solidity для написания логики программы с максимальной эффективностью и минимизацией потребления газа. Например, протокол Seaport широко использует встроенный ассемблер для минимизации расходов газа пользователей.
Различия в производительности EVM
EVM как "исполнительный уровень" является местом окончательного выполнения операций кода смарт-контракта. Определенный им байт-код стал отраслевым стандартом, что позволяет разработчикам эффективно развертывать контракты на нескольких совместимых сетях.
Хотя следование стандарту байт-кода EVM делает виртуальную машину известной как EVM, конкретные реализации могут значительно различаться. Например, клиент Geth для Ethereum реализует стандарт EVM на языке Go, в то время как команда Ipsilon фонда Ethereum поддерживает реализацию на C++. Это разнообразие позволяет проводить различные инженерные оптимизации и настройки.
Требование к параллельной обработке
В традиционных блокчейн-системах транзакции выполняются в порядке очереди, аналогично однопоточным процессорам. Хотя этот простой подход снижает сложность системы, он плохо справляется с большими масштабами пользовательской базы. Переход к многопоточному параллельному обработке позволяет одновременно обрабатывать несколько транзакций, значительно увеличивая пропускную способность.
Параллельное выполнение создает некоторые инженерные проблемы, такие как обработка конфликтов записи по одним и тем же контрактам в случае одновременных транзакций. Необходимо разработать новые механизмы для решения этих проблем. Однако параллельное выполнение несвязанных контрактов может пропорционально увеличить производительность в зависимости от числа потоков.
Инновации параллельного EVM
Параллельный EVM представляет собой ряд инноваций для оптимизации уровня выполнения блокчейна. Например, в Monad ключевыми инновациями являются:
Параллельное выполнение сделок: использование оптимистичного алгоритма параллелизма, позволяющего одновременно обрабатывать несколько сделок.
Отложенное исполнение: отложить выполнение сделки до независимого канала, максимизируя использование времени блока.
Пользовательская база данных состояния: прямая запись дерева Меркла на SSD для оптимизации доступа к состоянию.
Высокопроизводительный механизм консенсуса: усовершенствованный консенсус HotStuff, поддерживающий синхронизацию сотен узлов.
Технические вызовы
Параллельное выполнение вводит потенциальные конфликты состояния, требующие обнаружения конфликтов до или после выполнения. Например, когда несколько параллельных транзакций взаимодействуют с одним и тем же пулом ликвидности, требуется тщательный механизм разрешения конфликтов.
Кроме параллельной обработки, команды обычно также перерабатывают базу данных состояния для повышения производительности чтения и записи, а также разрабатывают соответствующий алгоритм консенсуса.
Вызовы и соображения
Параллельный EVM сталкивается с двумя основными вызовами: возможность того, что Ethereum в долгосрочной перспективе примет эти новшества, и проблема централизации узлов. В настоящее время это находится на ранней стадии, детали еще не полностью опубликованы, но в конечном итоге будут раскрыты при запуске тестовой сети и основной сети. Быстрое развитие экосистемы является ключом к поддержанию конкурентного преимущества.
Централизация узлов является общей проблемой всех высокопроизводительных блокчейнов и требует балансировки между децентрализацией, безопасностью и производительностью. Более низкие требования к аппаратному обеспечению способствуют поддержке большего числа децентрализованных узлов.
Параллельная структура EVM
Помимо Monad, параллельная архитектура EVM также включает проекты такие как Sei, MegaETH, Polygon, Neon EVM и т.д. Их можно разделить на три категории:
Поддержка параллельного выполнения существующих EVM-совместимых сетей Layer 1 через обновление
Новый EVM-совместимый Layer 1 сеть с параллельным выполнением с самого начала
Сеть второго уровня, использующая параллельные технологии, не основанные на EVM
Типичный проект
Monad: передовой проект параллельной EVM, цель 10 000 TPS, завершено финансирование на сумму 244 миллионов долларов.
Sei: Сетевой уровень 1, сосредоточенный на торговле, выпустил Sei V2 с параллельным EVM, производительность TPS увеличена до 12 500.
Artela: улучшенный исполнительный слой через двойную виртуальную машину EVM++, ключевая команда из AntChain.
Canto: EVM-совместимая сеть на основе Cosmos SDK, планируемая к внедрению технологии параллельного EVM.
Neon: Параллельный EVM на Solana, поддерживающий разработчиков Solidity для однокнопочной развертки на Solana.
Eclipse: Введение виртуальной машины Solana в решение Layer 2 для Ethereum.
Lumio: модульная сеть VM второго уровня, поддерживающая различные высокопроизводительные виртуальные машины.
Развитие технологии параллельного EVM будет способствовать повышению производительности блокчейна, закладывая основу для поддержки более широкого спектра приложений и пользовательских групп. Непрерывные инновации в этой области будут формировать направление будущего развития экосистемы блокчейна.
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
13 Лайков
Награда
13
5
Репост
Поделиться
комментарий
0/400
MetaMuskRat
· 8ч назад
Газ кто-нибудь контролирует? Очень дорого.
Посмотреть ОригиналОтветить0
DaoResearcher
· 19ч назад
Согласно анализу алгоритмов структуры данных, повторная сериализация снижает производительность EVM на 70,6%, это еще недостаточно революционно, параллельность — будущее.
Посмотреть ОригиналОтветить0
TokenVelocity
· 08-09 22:16
Газ太贵了吧 汇编бык批
Посмотреть ОригиналОтветить0
digital_archaeologist
· 08-09 22:07
Снова натворили столько высокопарных вещей.
Посмотреть ОригиналОтветить0
ApeEscapeArtist
· 08-09 22:03
Традиционный Газ слишком дорогой, надеюсь, это сможет решить проблему.
Состояние и вызовы развития параллельной технологии EVM: новое направление для повышения производительности Блокчейн
Развитие и вызовы технологии параллельного EVM
EVM против Solidity
Разработка смарт-контрактов является базовым навыком блокчейн-инженеров. Хотя для написания логики контрактов можно использовать высокоуровневые языки, такие как Solidity, EVM не может непосредственно интерпретировать этот код. Необходимо скомпилировать его в низкоуровневые операции или байт-код, которые могут выполняться виртуальной машиной. На данный момент существуют инструменты, которые могут автоматически выполнять этот процесс преобразования, уменьшая нагрузку на разработчиков в понимании деталей компиляции.
Несмотря на то, что компиляция влечёт за собой некоторые накладные расходы, инженеры, знакомые с низкоуровневым кодированием, могут напрямую использовать операции в Solidity для написания логики программы с максимальной эффективностью и минимизацией потребления газа. Например, протокол Seaport широко использует встроенный ассемблер для минимизации расходов газа пользователей.
Различия в производительности EVM
EVM как "исполнительный уровень" является местом окончательного выполнения операций кода смарт-контракта. Определенный им байт-код стал отраслевым стандартом, что позволяет разработчикам эффективно развертывать контракты на нескольких совместимых сетях.
Хотя следование стандарту байт-кода EVM делает виртуальную машину известной как EVM, конкретные реализации могут значительно различаться. Например, клиент Geth для Ethereum реализует стандарт EVM на языке Go, в то время как команда Ipsilon фонда Ethereum поддерживает реализацию на C++. Это разнообразие позволяет проводить различные инженерные оптимизации и настройки.
Требование к параллельной обработке
В традиционных блокчейн-системах транзакции выполняются в порядке очереди, аналогично однопоточным процессорам. Хотя этот простой подход снижает сложность системы, он плохо справляется с большими масштабами пользовательской базы. Переход к многопоточному параллельному обработке позволяет одновременно обрабатывать несколько транзакций, значительно увеличивая пропускную способность.
Параллельное выполнение создает некоторые инженерные проблемы, такие как обработка конфликтов записи по одним и тем же контрактам в случае одновременных транзакций. Необходимо разработать новые механизмы для решения этих проблем. Однако параллельное выполнение несвязанных контрактов может пропорционально увеличить производительность в зависимости от числа потоков.
Инновации параллельного EVM
Параллельный EVM представляет собой ряд инноваций для оптимизации уровня выполнения блокчейна. Например, в Monad ключевыми инновациями являются:
Технические вызовы
Параллельное выполнение вводит потенциальные конфликты состояния, требующие обнаружения конфликтов до или после выполнения. Например, когда несколько параллельных транзакций взаимодействуют с одним и тем же пулом ликвидности, требуется тщательный механизм разрешения конфликтов.
Кроме параллельной обработки, команды обычно также перерабатывают базу данных состояния для повышения производительности чтения и записи, а также разрабатывают соответствующий алгоритм консенсуса.
Вызовы и соображения
Параллельный EVM сталкивается с двумя основными вызовами: возможность того, что Ethereum в долгосрочной перспективе примет эти новшества, и проблема централизации узлов. В настоящее время это находится на ранней стадии, детали еще не полностью опубликованы, но в конечном итоге будут раскрыты при запуске тестовой сети и основной сети. Быстрое развитие экосистемы является ключом к поддержанию конкурентного преимущества.
Централизация узлов является общей проблемой всех высокопроизводительных блокчейнов и требует балансировки между децентрализацией, безопасностью и производительностью. Более низкие требования к аппаратному обеспечению способствуют поддержке большего числа децентрализованных узлов.
Параллельная структура EVM
Помимо Monad, параллельная архитектура EVM также включает проекты такие как Sei, MegaETH, Polygon, Neon EVM и т.д. Их можно разделить на три категории:
Типичный проект
Monad: передовой проект параллельной EVM, цель 10 000 TPS, завершено финансирование на сумму 244 миллионов долларов.
Sei: Сетевой уровень 1, сосредоточенный на торговле, выпустил Sei V2 с параллельным EVM, производительность TPS увеличена до 12 500.
Artela: улучшенный исполнительный слой через двойную виртуальную машину EVM++, ключевая команда из AntChain.
Canto: EVM-совместимая сеть на основе Cosmos SDK, планируемая к внедрению технологии параллельного EVM.
Neon: Параллельный EVM на Solana, поддерживающий разработчиков Solidity для однокнопочной развертки на Solana.
Eclipse: Введение виртуальной машины Solana в решение Layer 2 для Ethereum.
Lumio: модульная сеть VM второго уровня, поддерживающая различные высокопроизводительные виртуальные машины.
Развитие технологии параллельного EVM будет способствовать повышению производительности блокчейна, закладывая основу для поддержки более широкого спектра приложений и пользовательских групп. Непрерывные инновации в этой области будут формировать направление будущего развития экосистемы блокчейна.