Forklog
2024-09-02 14:19:37

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

Специализация и параллелизация вычислений способствуют повышению эффективности и безопасности. Об этом в новом эссе написал сооснователь Ethereum Виталик Бутерин. Glue and coprocessor architectures:https://t.co/7CwdzKR0ix— vitalik.eth (@VitalikButerin) September 2, 2024 По мнению криптографа, это открывает возможности для увеличения децентрализации и упрощения аудита кода. Согласно Бутерину, любые ресурсоемкие вычисления можно разделить на две части: Относительно небольшое количество сложной, но не требующей больших затрат бизнес-логики. Большое количество интенсивной, но высокоструктурированной «дорогой работы». В первом случае лучше подходит обработка с помощью архитектуры, которая может иметь более низкую эффективность, но должна обладать очень высокой общностью (generality), во втором — с помощью архитектуры с противоположными свойствами. В EVM эти две формы выполнения обрабатываются по-разному. Сложная бизнес-логика пишется на языке более высокого уровня вроде Solidity, который компилируется в виртуальной машине. «Дорогая работа» запускается опкодами EVM (SLOAD и т. д.), но свыше 99% фактических вычислений производится в специализированных модулях непосредственно внутри клиентского кода (или даже библиотек). По мнению Бутерина, все чаще встречается архитектура, которую он называет «клей и сопроцессор». В ней есть некий центральный компонент — «клей» — с высокой общностью, но низкой эффективностью. Он отвечает за передачу данных между одним или несколькими компонентами сопроцессора. Последний обладает низкой общностью, но высокой эффективностью. Данные: vitalik.eth.limo. Соучредитель Ethereum пояснил, что представленная выше схема упрощена, поскольку на практике, к примеру в архитектуре ZKP, существует более двух уровней на кривой компромисса между эффективностью и общностью. Но, если упростить, достаточно думать о двух уровнях. Параллели этому есть во многих областях вычислений. Данные: vitalik.eth.limo. Согласно Бутерину, вычисления только недавно стали настолько быстрыми, что затраты на бизнес-логику стали действительно незначительными. Это создало предпосылки для оптимизации VM, в которой выполняется бизнес-логика, для целей, отличных от эффективности — удобства для разработчиков, привычности, безопасности и т. п. При этом специализированные «сопроцессорные» модули могут продолжать разрабатываться с учетом эффективности и получать свои свойства безопасности и удобства для разработчиков из относительно простого «интерфейса», который они имеют с «клеем», добавил он. Становится все более очевидным, какие операции являются самыми важными и дорогостоящими. Это наиболее заметно в криптографии, но актуально и для ИИ, и других областей. Продолжая повествование, Бутерин делает вывод, что «клей» следует оптимизировать для улучшения его свойств, равно как и сопроцессоры. Соучредитель Ethereum убежден, что EVM не обязательно должны быть эффективными, они просто должны быть знакомыми. Вычисления в неэффективной VM можно улучшить за счет добавления нужных сопроцессоров («прекомпиляторов»).  По его словам, оптимизирующие EVM команды порой приходят к выводу, что отсутствие параллелизации зачастую не является основным препятствием для масштабируемости. Бутерин считает лучшими способами улучшения виртуальной машины: добавление оптимальных прекомпиляций или специализированных опкодов; совершенствование компоновки хранилища. В заключение соучредитель Ethereum отметил, что перечисленные тенденции позволяют: Увеличить эффективность специализации на стороне клиента — это улучшает способность выполнять чувствительные и требовательные к производительности вычисления локально на аппаратном обеспечении пользователя. Создают широкие возможности для того, чтобы стремление к эффективности не нарушало другие ценности, в первую очередь безопасность, открытость и простоту. Это несет пользу для криптографии, поскольку она олицетворяет «дорогие структурированные вычисления», которые ускоряются благодаря подобной тенденции. Последнее создает предпосылки для повышения безопасности и большего фокуса на оптимизации прекомпиляций и других функций, которые «живут» вместе с VM. Открывает возможность для участия небольших и новых игроков. Если вычисления становятся менее монолитными и более модульными, это значительно снижает барьер для входа. Даже имея ASIC для одного типа вычислений, можно добиться успеха. То же самое будет происходить и в областях ZKP и оптимизации EVM. Написание кода с эффективностью, близкой к «пограничной», становится намного проще и доступнее. Это облегчает его аудит и формальную верификацию. Напомним, в августе разработчики проекта Starknet представили механизм одновременного исполнения нескольких транзакции в решении второго уровня. Ранее ForkLog дополнил образовательные карточки материалом на тему параллелизации и ее влияния на масштабирование блокчейнов.

Get Crypto Newsletter
Read the Disclaimer : All content provided herein our website, hyperlinked sites, associated applications, forums, blogs, social media accounts and other platforms (“Site”) is for your general information only, procured from third party sources. We make no warranties of any kind in relation to our content, including but not limited to accuracy and updatedness. No part of the content that we provide constitutes financial advice, legal advice or any other form of advice meant for your specific reliance for any purpose. Any use or reliance on our content is solely at your own risk and discretion. You should conduct your own research, review, analyse and verify our content before relying on them. Trading is a highly risky activity that can lead to major losses, please therefore consult your financial advisor before making any decision. No content on our Site is meant to be a solicitation or offer.