Maxing Out the SVM: Performance Impact of Memory and Program Cache Sizes in the Agave Validator
Turan Vural, Yuki Yuminaga, Alex Petrosyan, Ben Livshits
TL;DR
The paper addresses RAM and program cache bottlenecks in Solana's Agave validator under mainnet-like conditions. It employs controlled experiments that vary RAM from 128 GB to 1.5 TB and test multiple program-cache configurations to quantify throughput, memory behavior, and cache latency. The findings identify ~512 GB as a safe baseline for reliable operation, with 1 TB–1.5 TB offering smoother performance and faster catch-up, while 128 GB is non-viable. It also shows that enlarging the program cache to 1024–2048 entries markedly reduces program-cache latency (up to ~90% reduction) and evictions, providing clear guidance for hardware provisioning and caching strategies to improve validator efficiency.
Abstract
In this paper we analyze some of the bottlenecks in the execution pipeline of Solana's Agave validator client, focusing on RAM and program cache usage under mainnet conditions. Through a series of controlled experiments, we measure the validator's throughput and resource efficiency as RAM availability ranges between 128 GB to 1,536 GB (1.5 TB). We discover that the validator performance degrades significantly below 256 GB, with transaction processing falling behind real-time block production. Additionally, we study the program cache behavior, identifying inefficiencies in program eviction and load latency. Our results provide practical guidance for hardware provisioning and suggest improvements to the Solana execution and caching strategy, reducing latency due to the program cache by 90%.
