Skip to main content
Log in

I/O access frequency-aware cache method on KVM/QEMU

  • Published:
Cluster Computing Aims and scope Submit manuscript

Abstract

Together with the rapid development of IT technology, cloud computing has been considered as the next generation’s computing infrastructure. One of the essential part of cloud computing is the virtual machine technology that enables to reduce the data center cost with better resource utilization. Especially, virtual desktop infrastructure (VDI) is receiving explosive attentions from IT markets because of its advantages of easier software management, greater data protection, and lower cost. However, sharing physical resources in VDI to consolidate multiple guest virtual machines (VMs) on a host has a tradeoff that can lead to significant I/O degradation. Optimizing I/O virtualization overhead is a challenging task because it needs to scrutinize multiple software layers between guest VMs and host where those VMs are executing. In this paper, we present a hypervisor-level cache, called hyperCache, which is possible to provide a shortcut in KVM/QEMU. It intercepts I/O requests in the hypervisor and analyses their I/O access patterns to select data retaining high access frequency. Also, it has a capability of maintaining the appropriate cache memory size by utilizing the cache block map. Our experimental results demonstrate that our method improves I/O bandwidth by up to 4.7x over the existing QEMU.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12

Similar content being viewed by others

References

  1. Dasilva, D., Liu, L., Bessis, N., Zhan, Y.: Enabling green IT through building a virtual desktop infrastructure. In: Proceedings 2012 8th international conference on semantics. knowledge and grids, pp. 32–38, Beijing (2012)

  2. Tarasov, V., Hidebrand, D., Kuenning, G., Zadok, E.: Virtual machine workloads: the case for new benchmarks for NAS. In: Proceedings 11 \(^{th }\) USENIX conference on file and storage technologies (FAST’13), pp. 307–320, Santa Clara (2013)

  3. Ferreto, T., Netto, M., Calheiros, R., DeRose, C.: Server consolidation with migration control for virtualized data centers. J. Futur. Gener. Comput. Syst. 27(8), 1027–1034 (2011)

    Article  Google Scholar 

  4. Spruijt, R.: VDI smackdown. White paper, vol. 1.4 (2012)

  5. Hwang, J., Wood, T.: Adaptive dynamic priority scheduling for virtual desktop infrastructure. In: Proceedings IEEE 20th international workshop on quality of service. Coimbra (2012)

  6. Jin, H., Gao, W., Wu, S., Shi, X., Wu, X., Zhou, F.: Optimizing the live migration of virtual machine by CPU scheduling. J. Netw. Comput. Appl. 34(4), 1088–1096 (2011)

    Article  Google Scholar 

  7. Clark, C., Fraser, K., Hand, S., Hansen, J., Jul, E., Limpach, C., Pratt, I., Warfield, A.: Live migration of virtual machines. In: Proceedings 2nd conference on symposium on networked systems design & implementation, Boston (2005)

  8. Meyer, T., Aggarwal, G., Cully, B., Lefebvre, G., Feeley, M., Hutchinson, N., Warfield, A.: Parallax: virtual disks for virtual machines. In: Proceedings 3rd ACM SIGOPS/EuroSys European conference on computer systems, Glasgow (2018)

  9. Boutcher, D., Chandra, A.: Does virtualization make disk scheduling passe? ACM SIGOPS Oper. Syst. Rev. 44(1), 20–24 (2010)

    Article  Google Scholar 

  10. Shirinbab, S.: Performance aspects in virtualized software systems. In: Blekinge institute of technology licentiate dissertation series (2014)

  11. Waldspurger, C.: Memory resource management in VMware ESX server. ACM SIGOPS Oper. Syst. Rev. 36, 181–194 (2002)

    Article  Google Scholar 

  12. Banerjee, I., Guo, F., Tati, K., Venkatasubramanian, R.: Memory overcommitment in the ESX server. VMware Tech J. 2, 2–12 (2013)

    Google Scholar 

  13. Kim, H., Jo, H., Lee, J.: XHive: efficient cooperative caching for virtual machines. IEEE Trans. Comput. 50(1), 106–119 (2011)

  14. Gordon, A., Hines, M., da Silva, D., Ben-Yehuda, M., Silva, M., Lizarraga, G.: Ginkgo: automated, application-driven memory overcommitment for cloud computing. In: Proceedings IEEE 3rd international conference on cloud computing technology and science (CloudCom), Athens (2011)

  15. Gupta, D., Lee, S., Vrable, M., Savage, S., Snoeren, A., Varghese, G., Voelker, G., Vahdat, A.: Difference engine: harnessing memory redundancy in virtual machines. Commun. ACM 53(10), 85–93 (2010)

    Article  Google Scholar 

  16. Amit, N., Tsafrir, D., Schuster, A.: VSwapper: a memory swapper for virtualized Environment. ACM SIGARCH Comput. Archit. News 42(1), 349–366 (2014)

    Google Scholar 

  17. Yassour, B., Ben-Yehuda, M., Wasserman, O.: On the DMA mapping problem in direct device assignment. In: Proceedings 3rd annual Haifa experimental systems conference, Haifa (2010)

  18. Yassour, B., Ben-Yehuda, M., Wasserman, O.: Direct device assignment for untrusted fully-virtualized virtual machines. Technical Report, H-0263, IBM Research (2008)

  19. Pan, Z., Dong, Y., Chen, Y., Zhang, L., Zhang, Z.: CompSC: live migration with pass-through devices. ACM SIGPLAN Not. 47(7), 109–120 (2012)

    Article  Google Scholar 

  20. Har’El, N., Gordon, A., Landau, A.: Efficient and scalable paravirtual I/O system. In: Proceedings 2013 USENIX annual technical conference, pp. 231-242, San Jose (2013)

  21. Gordon, A., Har’El, N., Landau, A., Ben-Yehuda, M., Traeger, A.: Towards exitless and efficient paravirtual I/O. In: Proceedings 5th annual international systems and storage conference, Haifa (2012)

  22. Bhosale, S., Caldeira, A., Grabowski, B., Graham, C., Hames, A., Haug, V., Kahle, M., Maciel, C., Mangalur, M., Sanchez, M.: IBM power systems SR-IOV. IBM redpaper (2014)

  23. Dong, Y., Yang, X., Li, J., Liao, G., Tian, K., Guan, H.: High performance network virtualization with SR-IOV. J. Parallel Distrib. Comput. 72(11), 1471–1480 (2012)

    Article  Google Scholar 

  24. Santos, J., Turner, Y., Janakiraman, G., Pratt, I.: Bridging the gap between software and Hardware techniques for I, O virtualization. In: Proceedings: USENIX annual technical conference, Boston (2008)

  25. Russell, R.: Virtio: towards a De-Facto standard For virtual I/O devices. ACM SIGOPS Oper. Syst. Rev. 42(5), 95–103 (2008)

    Article  Google Scholar 

  26. Razavi, K., Kielmann, T.: Scalable virtual machine deployment using VM image caches. In: Proceedings SC’13 on high performance computing, networking, storage and analysis, Denver (2013)

  27. Tang, C.: FVD: a high-performance virtual machine image format for cloud. In: Proceedings: USENIX annual technical conference. Portland (2011)

  28. Shamma, M., Meyer, D., Wires, J., Ivanova, M., Hutchinson, N., Warfield, A.: Capo: recapitulating storage for virtual desktops. In: Proceedings of 9th USENIX conference on file and storage technologies, San Jose (2011)

  29. Hong, C., Kim, Y., Yoo, S., Lee, C., Yoo, C.: Cache-aware virtual machine scheduling on multi-core architecture. IEICE Trans. Inf. Syst. E95–D, 2377–2392 (2012)

    Article  Google Scholar 

  30. Ongaro, D., Cox, A., Rixner, S.: Scheduling I/O in virtual machine monitor. In: Proceedings fourth ACM SIGPLAN/SIGOPS international conference on virtual execution environments, Seattle (2008)

  31. Kivity, A., Kamay, Y., Laor, D., Lublin, U., Liguori, A.: KVM: the Linux virtual machine monitor. In: Proceedings 2007 ottawa linux symposium, pp. 225-230 (2007)

  32. Bellard, F.: QEMU, a fast and portable dynamic translator. In: Proceedings annual conference on USENIX annual technical conference, Anaheim (2005)

Download references

Acknowledgements

This work was supported by the National Research Foundation of Korea (NRF) Grant funded by the Korea government (MSIP) (NRF-2014R1A2A2A01002614). Also, this work is supported by the MSIP, Korea, under the Global IT Talent support program (IITP-2016-H0905-15-1005) supervised by the IITP.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jaechun No.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Kim, T., No, J., Piao, Z. et al. I/O access frequency-aware cache method on KVM/QEMU. Cluster Comput 20, 2143–2155 (2017). https://doi.org/10.1007/s10586-017-0937-x

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10586-017-0937-x

Keywords

Navigation