Популярные криптовалюты

BTC $96,208.7 -1.28%
DOGE $0.41323 -1.90%
ETH $3,312.46 -2.39%
XRP $1.35 -5.96%
XLM $0.4741 -5.39%
SOL $246.35 -3.46%
BNB $649.05 -0.32%

Виталик Бутерин предложил способ увеличения эффективности EVM

ETH $3,312.46 -2.39%

Специализация и параллелизация вычислений приводят к повышению эффективности и безопасности. Об этом в новом эссе написал соучредитель Ethereum Виталик Бутерин.

Специализация и параллелизация вычислений способствуют повышению эффективности и безопасности. Об этом в новом эссе написал сооснователь Ethereum Виталик Бутерин.

Glue and coprocessor architectures:https://t.co/7CwdzKR0ix

— vitalik.eth (@VitalikButerin) September 2, 2024

По мнению криптографа, это открывает возможности для увеличения децентрализации и упрощения аудита кода.

Согласно Бутерину, любые ресурсоемкие вычисления можно разделить на две части:

  1. Относительно небольшое количество сложной, но не требующей больших затрат бизнес-логики.
  2. Большое количество интенсивной, но высокоструктурированной «дорогой работы».

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

В EVM эти две формы выполнения обрабатываются по-разному. Сложная бизнес-логика пишется на языке более высокого уровня вроде Solidity, который компилируется в виртуальной машине.

«Дорогая работа» запускается опкодами EVM (SLOAD и т. д.), но свыше 99 % фактических вычислений производится в специализированных модулях непосредственно внутри клиентского кода (или даже библиотек).

По мнению Бутерина, все чаще встречается архитектура, которую он называет «клей и сопроцессор». В ней есть некий центральный компонент — «клей» — с высокой общностью, но низкой эффективностью, который отвечает за передачу данных между одним или несколькими компонентами сопроцессора. Последний обладает низкой общностью, но высокой эффективностью.

Данные: vitalik.eth.limo.

Соучредитель Ethereum пояснил, что представленная выше схема упрощена, поскольку на практике, к примеру в архитектуре ZKP, существует более двух уровней на кривой компромисса между эффективностью и общностью. Но, если упростить, достаточно думать о двух уровнях. Параллели этому есть во многих областях вычислений.

Данные: vitalik.eth.limo.

Согласно Бутерину, вычисления только недавно стали настолько быстрыми, что затраты на бизнес-логику стали действительно незначительными. Это создало предпосылки для оптимизации VM, в которой выполняется бизнес-логика, для целей, отличных от эффективности — удобства для разработчиков, привычности, безопасности и т. п.

При этом специализированные «сопроцессорные» модули могут продолжать разрабатываться с учетом эффективности и получать свои свойства безопасности и удобства для разработчиков из относительно простого «интерфейса», который они имеют с «клеем», добавил он.

Становится все более очевидным, какие операции являются наиболее важными и дорогостоящими. Это наиболее заметно в криптографии, но актуально и для ИИ, и других областей.

Продолжая повествование, Бутерин делает вывод, что «клей» следует оптимизировать для улучшения его свойств, равно как и сопроцессоры.

Соучредитель Ethereum убежден, что EVM не обязательно должны быть эффективными, они просто должны быть знакомыми. Вычисления в неэффективной VM можно улучшить за счет добавления нужных сопроцессоров («прекомпиляторов»). 

По его словам, оптимизирующие EVM команды порой приходят к выводу, что отсутствие параллелизации зачастую не является основным препятствием для масштабируемости.

Бутерин считает лучшими способами улучшения виртуальной машины:

  • добавление оптимальных прекомпиляций или специализированных опкодов;
  • совершенствование компоновки хранилища.

В заключение соучредитель Ethereum отметил, что перечисленные тенденции позволяют:

  1. Увеличить эффективность специализации на стороне клиента, это улучшает способность выполнять чувствительные и требовательные к производительности вычисления локально на аппаратном обеспечении пользователя.
  1. Создают широкие возможности для того, чтобы стремление к эффективности не нарушало другие ценности, в первую очередь безопасность, открытость и простоту. Это несет пользу для криптографии, поскольку она олицетворяет «дорогие структурированные вычисления», которые ускоряются благодаря подобной тенденции. Последнее создает предпосылки для повышения безопасности и большего фокуса на оптимизации прекомпиляций и других функций, которые «живут» вместе с VM.
  1. Открывает возможность для участия небольших и новых игроков. Если вычисления становятся менее монолитными и более модульными, это значительно снижает барьер для входа. Даже имея ASIC для одного типа вычислений, можно добиться успеха. То же самое будет происходить и в областях ZKP и оптимизации EVM. Написание кода с эффективностью, близкой к «пограничной», становится намного проще и доступнее. Это облегчает его аудит и формальную верификацию.

Напомним, в августе разработчики проекта Starknet представили механизм одновременного исполнения нескольких транзакции в решении второго уровня.

Ранее ForkLog дополнил образовательные карточки материалом на тему параллелизации и ее влияния на масштабирование блокчейнов.

RSS 02.09.2024 2 141
Источник: https://forklog.com/news/vitalik-buterin-predlozhil-sposob-uvelicheniya-effektivnosti-evm