Garbage Collection (GC) has been a critical optimization target for improving the performance of flash-based Solid State Drives (SSDs); the long-lasting GC process occupies the flash resources, thereby blocking normal I/O requests and increasing response times. This is a well-documented problem, and a wide range of prior works successfully hide the negative impact of GC on the I/O response times. In this paper, however, we unveil another serious side-effect of GC, called the plane under-utilization problem. More specifically, while a plane is busy doing GC, the other plane(s) in the same die remain idle, as all the planes in a die share a single command and address path that is dedicated to the GC. We also note that most of the state-of-the-art proposals attacking the GC impact on I/O response times are not able to resolve the plane under-utilization problem, and in turn, miss a great potential to further improve the SSD performance. Thus, we next propose a scheduling technique, I/O-parallelized GC, which leverages the idle planes during GC to serve the blocked I/O requests. As a result, flash resources (planes) can be active during the most of GC time and the blocked I/O requests can get serviced quickly, and in turn, an improved SSD performance can be achieved. Using simulation-based evaluations over a wide variety of workloads, we show that the proposed I/O-parallelized GC scheme can improve the response times of the GC-affected I/O requests by 83% (reads) and 70% (writes), by increasing the average plane utilization from the (two planes-per-die) baseline 50% to 74.4% during GC. The I/O-parallelized GC is orthogonal to prior proposals that hide GC overheads; so, they can be combined for further SSD performance improvement.
|Title of host publication||HPDC 2018 - Proceedings of the 2018 International Symposium on High-Performance Parallel and Distributed Computing|
|Publisher||Association for Computing Machinery, Inc|
|Number of pages||12|
|Publication status||Published - 2018 Jun 11|
|Event||27th ACM International Symposium on High-Performance Parallel and Distributed Computing, HPDC 2018 - Tempe, United States|
Duration: 2018 Jun 11 → 2018 Jun 15
|Name||HPDC 2018 - Proceedings of the 2018 International Symposium on High-Performance Parallel and Distributed Computing|
|Other||27th ACM International Symposium on High-Performance Parallel and Distributed Computing, HPDC 2018|
|Period||18/6/11 → 18/6/15|
Bibliographical notePublisher Copyright:
© 2018 Association for Computing Machinery.
All Science Journal Classification (ASJC) codes
- Computational Theory and Mathematics
- Computer Science Applications