The Static Allocation is Not a Static: Optimizing SSD Address Allocation Through Boosting Static Policy
Yang Zhou, Fang Wang, Zhan Shi, Dan Feng · IEEE Transactions on Parallel and Distributed Systems · 2024
The address allocation policy in SSD aims to translate the logical address of I/O requests into a physical address, and the static address allocation is widely used in modern SSD. Through extensive experiments, we find that there are significant differences in the utilization of SSD parallelism among different static address allocation policies. We also observe that the fixed address allocation design prevents SSDs from continuing to meet the challenges posed by cloud workloads and misses the possibility of further optimization. These situations stem from our excessive reliance on SSD parallelism over time. In this paper, we proposeHsaP, ahybridstatic addressallocationpolicy, that adaptively chooses the best static allocation policy to meet the SSD performance at runtime.HsaPis adynamicscheduling scheme based onstaticaddress allocation policy. The static policy ensures thatHsaPhas stable performance and light-weight overhead, while dynamic scheduling can effectively combine different allocation policies, selecting the best-performing static mapping mode for a given SSD state. Meanwhile,HsaPcan further improve the read and write performance of SSDs simultaneously through plane reallocation and data rewrite. Experimental results show thatHsaPachieves significant read and write performance gain of a wide range of the latest cloud block storage traces compared to several state-of-the-art address allocation approaches.