TY - GEN
T1 - Flashshare
T2 - 13th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2018
AU - Zhang, Jie
AU - Kwon, Miryeong
AU - Gouk, Donghyun
AU - Koh, Sungjoon
AU - Lee, Changlim
AU - Alian, Mohammad
AU - Chun, Myoungjun
AU - Kandemir, Mahmut Taylan
AU - Kim, Nam Sung
AU - Kim, Jihong
AU - Jung, Myoungsoo
PY - 2007/1/1
Y1 - 2007/1/1
N2 - A modern datacenter server aims to achieve high energy efficiency by co-running multiple applications. Some of such applications (e.g., web search) are latency sensitive. Therefore, they require low-latency I/O services to fast respond to requests from clients. However, we observe that simply replacing the storage devices of servers with Ultra-Low-Latency (ULL) SSDs does not notably reduce the latency of I/O services, especially when co-running multiple applications. In this paper, we propose FLASHSHARE to assist ULL SSDs to satisfy different levels of I/O service latency requirements for different co-running applications. Specifically, FLASHSHARE is a holistic cross-stack approach, which can significantly reduce I/O interferences among co-running applications at a server without any change in applications. At the kernel-level, we extend the data structures of the storage stack to pass attributes of (co-running) applications through all the layers of the underlying storage stack spanning from the OS kernel to the SSD firmware. For given attributes, the block layer and NVMe driver of FLASHSHARE differently manage the I/O scheduler and interrupt handler of NVMe. We also enhance the NVMe controller and cache layer at the SSD firmware-level, by dynamically partitioning DRAM in the ULL SSD and adjusting its caching strategies to meet diverse user requirements. The evaluation results demonstrate that FLASHSHARE can shorten the average and 99th-percentile turnaround response times of co-running applications by 22% and 31%, respectively.
AB - A modern datacenter server aims to achieve high energy efficiency by co-running multiple applications. Some of such applications (e.g., web search) are latency sensitive. Therefore, they require low-latency I/O services to fast respond to requests from clients. However, we observe that simply replacing the storage devices of servers with Ultra-Low-Latency (ULL) SSDs does not notably reduce the latency of I/O services, especially when co-running multiple applications. In this paper, we propose FLASHSHARE to assist ULL SSDs to satisfy different levels of I/O service latency requirements for different co-running applications. Specifically, FLASHSHARE is a holistic cross-stack approach, which can significantly reduce I/O interferences among co-running applications at a server without any change in applications. At the kernel-level, we extend the data structures of the storage stack to pass attributes of (co-running) applications through all the layers of the underlying storage stack spanning from the OS kernel to the SSD firmware. For given attributes, the block layer and NVMe driver of FLASHSHARE differently manage the I/O scheduler and interrupt handler of NVMe. We also enhance the NVMe controller and cache layer at the SSD firmware-level, by dynamically partitioning DRAM in the ULL SSD and adjusting its caching strategies to meet diverse user requirements. The evaluation results demonstrate that FLASHSHARE can shorten the average and 99th-percentile turnaround response times of co-running applications by 22% and 31%, respectively.
UR - http://www.scopus.com/inward/record.url?scp=85064538230&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85064538230&partnerID=8YFLogxK
M3 - Conference contribution
T3 - Proceedings of the 13th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2018
SP - 477
EP - 492
BT - Proceedings of the 13th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2018
PB - USENIX Association
Y2 - 8 October 2018 through 10 October 2018
ER -