Разработка смарт-контрактов является основным навыком блокчейн-инженера. Разработчики обычно используют Solidity или другие высокоуровневые языки для реализации бизнес-логики. Однако EVM не может напрямую интерпретировать код Solidity, его необходимо скомпилировать в низкоуровневый язык, исполняемый виртуальной машиной ( операционные коды/байт-коды ). В настоящее время существуют инструменты, которые могут автоматически выполнять этот процесс преобразования, уменьшая нагрузку на разработчиков при понимании деталей компиляции.
Хотя компиляция может вводить некоторые дополнительные накладные расходы, инженеры, знакомые с низкоуровневым кодированием, могут напрямую использовать операционные коды для написания логики программ в Solidity, чтобы достичь максимальной эффективности и снизить расход газа. Например, торговый протокол известной платформы для торговли NFT широко использует встроенную ассемблер для минимизации расходов газа пользователей.
Различия в производительности EVM: стандарты и реализация
EVM( также называется "исполнительным слоем"), это место, где в конечном итоге выполняются байт-коды скомпилированных смарт-контрактов. Определенный EVM байт-код стал отраслевым стандартом. Независимо от того, используется ли он в сетях Ethereum Layer 2 или других независимых блокчейнах, совместимость со стандартом EVM позволяет разработчикам эффективно развертывать смарт-контракты на нескольких сетях.
Хотя следование стандарту байткода EVM делает виртуальную машину EVM, конкретные способы реализации могут сильно различаться. Например, один из клиентов Ethereum реализовал стандарт EVM на языке Go, в то время как другая команда фонда Ethereum поддерживает реализацию на C++. Это разнообразие открывает возможности для различных инженерных оптимизаций и индивидуальных реализаций.
Параллельная технология EVM
В истории сообщество блокчейна в основном сосредоточивалось на инновациях в алгоритмах консенсуса, некоторые известные проекты больше известны благодаря своим механизмам консенсуса, а не уровню исполнения. Хотя в этих проектах также были инновации на уровне исполнения, их производительность часто неверно воспринимается как исходящая только из алгоритмов консенсуса.
На самом деле, высокопроизводительный блокчейн требует сочетания инновационного алгоритма консенсуса и оптимизированного уровня исполнения, подобно теории бочки. Для EVM-блокчейнов, которые лишь улучшают алгоритм консенсуса, повышение производительности часто требует более мощного аппаратного обеспечения узлов. Например, известная смарт-цепь обрабатывает блоки при ограничении gas в 2000 TPS, требуя машин, значительно превышающих оборудование полных узлов Ethereum. Хотя одно из решений для масштабирования Layer 2 теоретически поддерживает до 1000 TPS, фактическая производительность зачастую оказывается ниже ожиданий.
Потребность в параллельной обработке
В большинстве блокчейн-систем транзакции выполняются последовательно, подобно однопоточному ЦП, следующая вычислительная операция должна ждать завершения текущей. Этот метод, хотя и простой с низкой сложностью системы, трудно масштабируется для пользовательской базы уровня интернета. Переход на многопоточные ЦП и параллельные виртуальные машины может одновременно обрабатывать несколько транзакций, значительно увеличивая пропускную способность.
Параллельное выполнение создает некоторые инженерные проблемы, такие как обработка одновременных транзакций, записывающих в один и тот же смарт-контракт. Необходимо разработать новые механизмы для решения этих конфликтов. Параллельное выполнение не связанных смарт-контрактов может пропорционально увеличить пропускную способность в зависимости от количества параллельных потоков обработки.
Инновации параллельной Виртуальной машины Ethereum
Параллельная EVM представляет собой ряд инноваций, направленных на оптимизацию уровня выполнения блокчейн-систем. В качестве примера одного проекта его ключевые инновации включают:
Параллельное выполнение транзакций: используется оптимистичный алгоритм параллельного выполнения, который позволяет обрабатывать несколько транзакций одновременно. Этот метод начинает транзакции из одного и того же исходного состояния, отслеживает входные и выходные данные, генерируя временные результаты для каждой транзакции. Решение о выполнении следующей транзакции принимается путем проверки, связаны ли входные данные следующей транзакции с выходными данными текущей обрабатываемой транзакции.
Отложенное выполнение: в механизме консенсуса узлы могут достигать официального порядка транзакций без выполнения транзакций главными узлами или узлами-валидаторами. Изначально главные узлы сортируют транзакции и достигают последовательного консенсуса между узлами. Выполнение откладывается в независимый канал, максимально используя время блока и повышая общую эффективность выполнения.
Пользовательская база данных состояния: оптимизация хранения и доступа к состоянию путем прямого сохранения дерева Меркла на SSD. Этот метод минимизирует эффект увеличения чтения, ускоряет доступ к состоянию, что делает выполнение смарт-контрактов более быстрым и эффективным.
Высокопроизводительный механизм согласования: улучшенная версия механизма согласования HotStuff, поддерживающая синхронизацию между сотнями глобально распределенных узлов с линейной сложностью связи. Использует этапы голосования в конвейере, что позволяет различным этапам голосования выполняться параллельно, сокращая задержки и повышая эффективность согласования.
Вызовы и соображения
Параллельная EVM сталкивается с двумя основными проблемами: захватом долгосрочной инженерной ценности Ethereum и централизацией узлов. Хотя на текущем этапе разработки еще не все открыто для защиты интеллектуальной собственности, эти детали в конечном итоге будут раскрыты при запуске тестовой сети и основной сети, и существует риск быть поглощёнными Ethereum или другими блокчейнами. Быстрое развитие экосистемы станет ключевым для поддержания конкурентного преимущества.
Централизация узлов является вызовом для всех высокопроизводительных блокчейнов, требуя достижения баланса в "тройном затруднении блокчейна". Показатели, такие как "TPS для каждого аппаратного обеспечения", могут помочь в сравнении эффективности блокчейнов при конкретных аппаратных условиях, поскольку более низкие требования к оборудованию могут позволить включить больше децентрализованных узлов.
Параллельная структура EVM
Параллельная архитектура EVM включает несколько проектов, некоторые из которых являются блокчейнами уровня 1, а некоторые могут быть решениями уровня 2. Некоторые проекты основаны на других сетях, а также ведется разработка открытых клиентских приложений.
В настоящее время существующие параллельные сети EVM можно разделить на три категории:
EVM-совместимые сети Layer 1, обновленные с помощью технологии параллельного выполнения: эти сети изначально не использовали параллельное выполнение, но были обновлены с помощью технологической итерации для поддержки параллельного EVM.
С момента своего создания EVM-совместимая сеть Layer 1 использует технологию параллельного выполнения.
Сети второго уровня с параллельным выполнением, не основанные на EVM: к ним относятся ориентированные на масштабирование EVM-совместимые цепочки второго уровня. Эти сети абстрагируют EVM в виде модульных исполняемых блоков, позволяя выбирать наилучший "уровень выполнения VM" по мере необходимости, что обеспечивает параллельные возможности.
Заключение
С развитием технологий блокчейн важно обращать внимание как на уровень исполнения, так и на алгоритмы консенсуса для достижения высокой производительности. Такие инновации, как параллельная Виртуальная машина Ethereum, предоставляют перспективные решения для повышения пропускной способности и эффективности, делая блокчейн более масштабируемым и способным поддерживать широкий круг пользователей. Развитие и внедрение этих технологий будут формировать будущее экосистемы блокчейн, способствуя дальнейшему прогрессу и применению в этой области.
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
19 Лайков
Награда
19
4
Поделиться
комментарий
0/400
TeaTimeTrader
· 07-15 11:41
Заниматься параллельным EVM? Связано с Solidity и тому подобным, действительно голова болит.
Посмотреть ОригиналОтветить0
HashBard
· 07-14 04:07
масштабирование evm — это поэзия в движении... но параллельная обработка? вот это действительно гениальный ход fr fr
Посмотреть ОригиналОтветить0
NFTArchaeologis
· 07-14 03:55
Цифровая линейка в блокчейне, как бронзовые артефакты... Искусство слоя выполнения Ethereum действительно изыскано~
Параллельная EVM-технология: инновации и вызовы в слое выполнения Блокчейн
Виртуальная машина Ethereum EVM
Виртуальная машина Ethereum и Solidity
Разработка смарт-контрактов является основным навыком блокчейн-инженера. Разработчики обычно используют Solidity или другие высокоуровневые языки для реализации бизнес-логики. Однако EVM не может напрямую интерпретировать код Solidity, его необходимо скомпилировать в низкоуровневый язык, исполняемый виртуальной машиной ( операционные коды/байт-коды ). В настоящее время существуют инструменты, которые могут автоматически выполнять этот процесс преобразования, уменьшая нагрузку на разработчиков при понимании деталей компиляции.
Хотя компиляция может вводить некоторые дополнительные накладные расходы, инженеры, знакомые с низкоуровневым кодированием, могут напрямую использовать операционные коды для написания логики программ в Solidity, чтобы достичь максимальной эффективности и снизить расход газа. Например, торговый протокол известной платформы для торговли NFT широко использует встроенную ассемблер для минимизации расходов газа пользователей.
Различия в производительности EVM: стандарты и реализация
EVM( также называется "исполнительным слоем"), это место, где в конечном итоге выполняются байт-коды скомпилированных смарт-контрактов. Определенный EVM байт-код стал отраслевым стандартом. Независимо от того, используется ли он в сетях Ethereum Layer 2 или других независимых блокчейнах, совместимость со стандартом EVM позволяет разработчикам эффективно развертывать смарт-контракты на нескольких сетях.
Хотя следование стандарту байткода EVM делает виртуальную машину EVM, конкретные способы реализации могут сильно различаться. Например, один из клиентов Ethereum реализовал стандарт EVM на языке Go, в то время как другая команда фонда Ethereum поддерживает реализацию на C++. Это разнообразие открывает возможности для различных инженерных оптимизаций и индивидуальных реализаций.
Параллельная технология EVM
В истории сообщество блокчейна в основном сосредоточивалось на инновациях в алгоритмах консенсуса, некоторые известные проекты больше известны благодаря своим механизмам консенсуса, а не уровню исполнения. Хотя в этих проектах также были инновации на уровне исполнения, их производительность часто неверно воспринимается как исходящая только из алгоритмов консенсуса.
На самом деле, высокопроизводительный блокчейн требует сочетания инновационного алгоритма консенсуса и оптимизированного уровня исполнения, подобно теории бочки. Для EVM-блокчейнов, которые лишь улучшают алгоритм консенсуса, повышение производительности часто требует более мощного аппаратного обеспечения узлов. Например, известная смарт-цепь обрабатывает блоки при ограничении gas в 2000 TPS, требуя машин, значительно превышающих оборудование полных узлов Ethereum. Хотя одно из решений для масштабирования Layer 2 теоретически поддерживает до 1000 TPS, фактическая производительность зачастую оказывается ниже ожиданий.
Потребность в параллельной обработке
В большинстве блокчейн-систем транзакции выполняются последовательно, подобно однопоточному ЦП, следующая вычислительная операция должна ждать завершения текущей. Этот метод, хотя и простой с низкой сложностью системы, трудно масштабируется для пользовательской базы уровня интернета. Переход на многопоточные ЦП и параллельные виртуальные машины может одновременно обрабатывать несколько транзакций, значительно увеличивая пропускную способность.
Параллельное выполнение создает некоторые инженерные проблемы, такие как обработка одновременных транзакций, записывающих в один и тот же смарт-контракт. Необходимо разработать новые механизмы для решения этих конфликтов. Параллельное выполнение не связанных смарт-контрактов может пропорционально увеличить пропускную способность в зависимости от количества параллельных потоков обработки.
Инновации параллельной Виртуальной машины Ethereum
Параллельная EVM представляет собой ряд инноваций, направленных на оптимизацию уровня выполнения блокчейн-систем. В качестве примера одного проекта его ключевые инновации включают:
Параллельное выполнение транзакций: используется оптимистичный алгоритм параллельного выполнения, который позволяет обрабатывать несколько транзакций одновременно. Этот метод начинает транзакции из одного и того же исходного состояния, отслеживает входные и выходные данные, генерируя временные результаты для каждой транзакции. Решение о выполнении следующей транзакции принимается путем проверки, связаны ли входные данные следующей транзакции с выходными данными текущей обрабатываемой транзакции.
Отложенное выполнение: в механизме консенсуса узлы могут достигать официального порядка транзакций без выполнения транзакций главными узлами или узлами-валидаторами. Изначально главные узлы сортируют транзакции и достигают последовательного консенсуса между узлами. Выполнение откладывается в независимый канал, максимально используя время блока и повышая общую эффективность выполнения.
Пользовательская база данных состояния: оптимизация хранения и доступа к состоянию путем прямого сохранения дерева Меркла на SSD. Этот метод минимизирует эффект увеличения чтения, ускоряет доступ к состоянию, что делает выполнение смарт-контрактов более быстрым и эффективным.
Высокопроизводительный механизм согласования: улучшенная версия механизма согласования HotStuff, поддерживающая синхронизацию между сотнями глобально распределенных узлов с линейной сложностью связи. Использует этапы голосования в конвейере, что позволяет различным этапам голосования выполняться параллельно, сокращая задержки и повышая эффективность согласования.
Вызовы и соображения
Параллельная EVM сталкивается с двумя основными проблемами: захватом долгосрочной инженерной ценности Ethereum и централизацией узлов. Хотя на текущем этапе разработки еще не все открыто для защиты интеллектуальной собственности, эти детали в конечном итоге будут раскрыты при запуске тестовой сети и основной сети, и существует риск быть поглощёнными Ethereum или другими блокчейнами. Быстрое развитие экосистемы станет ключевым для поддержания конкурентного преимущества.
Централизация узлов является вызовом для всех высокопроизводительных блокчейнов, требуя достижения баланса в "тройном затруднении блокчейна". Показатели, такие как "TPS для каждого аппаратного обеспечения", могут помочь в сравнении эффективности блокчейнов при конкретных аппаратных условиях, поскольку более низкие требования к оборудованию могут позволить включить больше децентрализованных узлов.
Параллельная структура EVM
Параллельная архитектура EVM включает несколько проектов, некоторые из которых являются блокчейнами уровня 1, а некоторые могут быть решениями уровня 2. Некоторые проекты основаны на других сетях, а также ведется разработка открытых клиентских приложений.
В настоящее время существующие параллельные сети EVM можно разделить на три категории:
EVM-совместимые сети Layer 1, обновленные с помощью технологии параллельного выполнения: эти сети изначально не использовали параллельное выполнение, но были обновлены с помощью технологической итерации для поддержки параллельного EVM.
С момента своего создания EVM-совместимая сеть Layer 1 использует технологию параллельного выполнения.
Сети второго уровня с параллельным выполнением, не основанные на EVM: к ним относятся ориентированные на масштабирование EVM-совместимые цепочки второго уровня. Эти сети абстрагируют EVM в виде модульных исполняемых блоков, позволяя выбирать наилучший "уровень выполнения VM" по мере необходимости, что обеспечивает параллельные возможности.
Заключение
С развитием технологий блокчейн важно обращать внимание как на уровень исполнения, так и на алгоритмы консенсуса для достижения высокой производительности. Такие инновации, как параллельная Виртуальная машина Ethereum, предоставляют перспективные решения для повышения пропускной способности и эффективности, делая блокчейн более масштабируемым и способным поддерживать широкий круг пользователей. Развитие и внедрение этих технологий будут формировать будущее экосистемы блокчейн, способствуя дальнейшему прогрессу и применению в этой области.