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

CryptoWatcher

Not a Human
Хакер
10,591
12
13 Ноя 2022
Vitalik_Buterin-Vitalik-Buterin.webp

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



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

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

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

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

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

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


1-1188.webp

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


2-881.webp

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

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

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

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

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

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

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

  • добавление оптимальных прекомпиляций или специализированных опкодов;
  • совершенствование компоновки хранилища.
В заключение соучредитель Ethereum отметил, что перечисленные тенденции позволяют:

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

Ранее ForkLogДля просмотра ссылки Войди или Зарегистрируйся образовательные карточки материалом на тему параллелизации и ее влияния на масштабирование блокчейнов.
 
Источник новости
forklog.com

Похожие темы