Как измерить пользу access list в Ethereum
Access list заранее помечает выбранные адреса и слоты как прогретые. За каждую запись взимается плата, даже если код до неё не дойдёт.
Сравните две симуляции одного вызова
На одном блоке дважды оцените одинаковый вызов с теми же отправителем, суммой и calldata. Сначала опустите список, затем передайте выбранные адреса и слоты. Объявление одного адреса и двух слотов по EIP-2930 стоит следующую сумму.
2400 + 2 × 1900 = 6200 gas
6 200 газа — стоимость объявления записей. Экономия возникает при обращениях, которые иначе были бы холодными. Включение адреса назначения может добавить расход, хотя при входе в транзакцию этот адрес уже прогрет.
Проверьте исполняемую ветку
Возьмите входные данные для разных веток контракта. Выгодный для частого пути список способен увеличить расход на другом. Оценка зависит от симуляции и состояния, поэтому при наличии исполненной транзакции сравните вывод с её квитанцией. eips.ethereum.org EIP-2930