Papers1 provider · 2 records
April 7, 2026· Figshare
dissertation
Open access

OTIMIZAÇÃO DE GAS EM ETHEREUM: ANÁLISE DE OPCODES E ESTRUTURAS DE DADOS

Authors:Tiago Ferreira Cavazin *

Abstract

Este artigo analisa estratégias de otimização de gas em Ethereum a partir de duas dimensões principais: o custo dos opcodes da EVM e as escolhas de estruturas de dados em Solidity. A tabela de opcodes da EVM e a evolução do gas schedule mostram que operações de armazenamento e acesso externo, como SSTORE, SLOAD, CALL, BALANCE e EXT*, estão entre as mais caras, especialmente após EIPs como a 2929, que aumentaram o custo de acessos “frios” a contas e slots de storage para refletir melhor seu impacto na execução e na camada de armazenamento. Estudos recentes sobre custos de armazenamento evidenciam que uma escrita em SSTORE pode custar cerca de 22.100 gas para 32 bytes (aprox. 690 gas/byte), enquanto leituras via SLOAD também são significativamente caras, motivando pesquisas sobre técnicas como SSTORE2 e mecanismos para corrigir “overcharge” em leitura/escrita de storage, com ganhos médios de até 30–32% em fees para certos padrões de uso. Boas práticas de otimização de gas em Solidity incluem reduzir o número de acessos a storage movendo valores frequentemente lidos para variáveis em memória, empacotar variáveis em slots de 32 bytes (storage packing), preferir tipos fixos a dinâmicos quando possível, evitar cópias desnecessárias de arrays de storage para memória e desenhar estruturas de dados que minimizem gravações em storage. A literatura e guias de otimização indicam que a escolha entre arrays, mappings, structs e padrões de layout impacta diretamente o custo de execução, especialmente em loops que interagem com storage ou estruturas dinâmicas. Conclui‑se que a otimização de gas em Ethereum é um problema tanto de engenharia de baixo nível, ligado ao custo de opcodes e ao modelo warm/cold de acessos, quanto de design de dados e algoritmos, com implicações econômicas diretas para usuários, protocolos DeFi e estratégias de design de L2s.<br>

Community

0 comments
Use Connect Wallet in the navigation

No discussion yet

Be the first to share a question or observation.