Chapter 5 Experiment 24
5.3 Real Workload Evaluation
We evaluate the fairness for the real workloads in this section. Table 5.2 plots the read/write ratios of the selected workloads. WebSearch1 and Financial1 are OLTP workloads [4]. The former one is a read-intensive workload which is collected from a popular search engine. The latter one [4] is an on-line transaction processing workload. The Exchange workloads [5] are collected from different Microsoft servers.
The requests in OLTP workloads spread evenly into whole time while the exchange workloads burst the requests at a small time period. To build the workload with multi-processes, we assume one workload represents one process. Then, we select the same amount of requests in each workload and mix these requests into a new workload.
Figure 5.5 is the results of fairness for the real workloads. From the results, we
CHAPTER 5. EXPERIMENT 31
Workload Read ratio(%) Write ratio(%)
Financial1 23.16 76.84
WebSearch1 99.98 0.02
Exchange2 53.67 46.33
Exchange3 57.41 42.59
Table 5.2: Characterization of real workload.
find that when there is no GC, both FIOS and FlashFQ are able to achieve fairness.
However, when there are GC activated, both of them are not able to achieve fairness.
Notably, Websearch1 has the worst slowdown ratio among these workloads, because Websearch1 is a read-intensive workload. When GC is activated inside SSD, it will be significantly delayed and this cannot be solved by the host side fair scheduler.
For the proposed scheme FGC, we find that it is able to achieve fairness no matter FIOS or FlashFQ is implemented at the host side.
Figure 5.6 is the results on throughput for the real workloads. FGC is able to significantly improve the throughput of the storage systems.
These results further confirm that GC aware fairness scheduling presented in this work is able to achieve both fairness and improve performance.
CHAPTER 5. EXPERIMENT 32
(a) 1 4KB reader, 1 4KB writer (b) 2 4KB reader, 2 4KB writer
(c) 4 4KB reader, 4 4KB writer (d) 8 4KB reader, 8 4KB writer
(e) 16 4KB reader, 16 4KB writer (f) 32 4KB reader, 32 4KB writer
Figure 5.1: The slowdown ratio of synthetic workloads with n 4KB readers and n 4KB writers. We only show the largest slowdown ratio per case. For each case, we mark the proportional slowdown with the dotted line.
CHAPTER 5. EXPERIMENT 33
Figure 5.2: The performance of synthetic workloads with n 4KB readers and n 4KB writers. Results cover three policy under each I/O scheduler.
CHAPTER 5. EXPERIMENT 34
Figure 5.3: The slowdown ratio of synthetic workload with four 4KB readers and four 4KB writers. The n-KB in horizontal axis is the size of the request issued by the processes.
CHAPTER 5. EXPERIMENT 35
Figure 5.4: Worst case response time. The result is the average response time of 99.9% tail latency for the workload with 16 128KB readers and 16 128KB writers running concurrent.
CHAPTER 5. EXPERIMENT 36
Figure 5.5: Slowdown ratio for the real workload.
CHAPTER 5. EXPERIMENT 37
Figure 5.6: Throughput for the real workload.
Chapter 6 Conclusion
This paper proposed Fair-GC which is a scheduler in SSD that helps modern host I/O scheduler achieves fairness when GC occurs. The design of Fair-GC is motivated by the execution of GC. GC indirectly reduce the fairness while the host I/O scheduler try to assign same SSD resource to each process. To minimize the GC impact on the system, Fair-GC distributes the GC overhead to each process in SSD and try to let the processes execute concurrently with GC. We evaluate fairness under different workloads and discuss the impact of the size of GC-quota. Since Fair-GC adopts the preemption technology, we compare preemption GC as well. Compared to PGC, existing I/O scheduler for SSDs can achieve fairness with FGC. For the I/O scheduler for HDDs, Fair-GC reduces the GC impact on the processes.
38
Bibliography
[1] NVM Express. http://www.nvmexpress.org/. Accessed: 2017-09-26.
[2] Micron Technology. MT29F512G08CUAAA NAND Flash Memory Datasheet, 2009.
[3] N. Agrawal, V. Prabhakaran, T. Wobber, J. D. Davis, M. S. Manasse, and R. Pani-grahy. Design tradeoffs for ssd performance. In USENIX Annual Technical Confer-ence, volume 8, pages 57–70, 2008.
[4] O. Application. I/o. umass trace repository, 2007.
[5] S. N. I. Association et al. Snia iotta repository. Microsoft Enterprise Traces, Colorado Springs, Colorado (iotta. snia. org/traces/130), 2011.
[6] J. Axboe. Linux block io—present and future. In Ottawa Linux Symp, pages 51–61, 2004.
[7] L.-P. Chang, T.-W. Kuo, and S.-W. Lo. Real-time garbage collection for flash-memory storage systems of real-time embedded systems. ACM Transactions on Embedded Computing Systems (TECS), 3(4):837–863, 2004.
[8] M. Jung, W. Choi, S. Srikantaiah, J. Yoo, and M. T. Kandemir. Hios: A host interface i/o scheduler for solid state disks. ACM SIGARCH Computer Architecture News, 42(3):289–300, 2014.
[9] M. Jung, R. Prabhakar, and M. T. Kandemir. Taking garbage collection overheads
BIBLIOGRAPHY 40
off the critical path in ssds. In Proceedings of the 13th International Middleware Conference, pages 164–186. Springer-Verlag New York, Inc., 2012.
[10] B. S. Kim and S. L. Min. Qos-aware flash memory controller. In Real-Time and Embedded Technology and Applications Symposium (RTAS), 2017 IEEE, pages 51–
62. IEEE, 2017.
[11] J. Kim, D. Lee, and S. H. Noh. Towards slo complying ssds through ops isolation.
In FAST, pages 183–189, 2015.
[12] J. Lee, Y. Kim, G. M. Shipman, S. Oral, and J. Kim. Preemptible i/o scheduling of garbage collection for solid state drives. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 32(2):247–260, 2013.
[13] J. Lee, Y. Kim, G. M. Shipman, S. Oral, F. Wang, and J. Kim. A semi-preemptive garbage collector for solid state drives. In Performance Analysis of Systems and Software (ISPASS), 2011 IEEE International Symposium on, pages 12–21. IEEE, 2011.
[14] S. Park and K. Shen. Fios: a fair, efficient flash i/o scheduler. In FAST, pages 1–1, 2012.
[15] S.-H. Park, D.-g. Kim, K. Bang, H.-J. Lee, S. Yoo, and E.-Y. Chung. An adaptive idle-time exploiting method for low latency nand flash-based storage devices. IEEE Transactions on Computers, 63(5):1085–1096, 2014.
[16] N. Shahidi, M. Arjomand, M. Jung, M. T. Kandemir, C. R. Das, and A. Sivasubra-maniam. Exploring the potentials of parallel garbage collection in ssds for enterprise storage systems. In Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis, pages 1–1. IEEE Press, 2016.
[17] K. Shen and S. Park. Flashfq: A fair queueing i/o scheduler for flash-based ssds. In USENIX Annual Technical Conference, pages 67–78, 2013.
[18] W. Wu, S. Traister, J. Huang, N. D. Hutchison, and S. Sprouse. Pre-emptive garbage collection of memory blocks, Jan. 7 2014. US Patent 8,626,986.
[19] Q. Xu, H. Siyamwala, M. Ghosh, T. Suri, M. Awasthi, Z. Guz, A. Shayesteh, and V. Balakrishnan. Performance analysis of nvme ssds and their implication on real world databases. In Proceedings of the 8th ACM International Systems and Storage Conference, page 6. ACM, 2015.