Abstract
The paging scheme randomly translates the virtual address into the physical address. Thus, it can lead to some serious problems like performance non-determinism and poor cache performance. In order to resolve these problems, page coloring is applied to operating systems such as Solaris, FreeBSD, and Windows. However, there is a problem applying page coloring in virtualization environment. The paging scheme translates the virtual address of the guest into the physical address of the guest which is not the real physical address. In this paper, we introduce a technique that can be used for synchronizing the page color between guest virtual machine (VM) and host machine. We name this technique page coloring synchronization. Our technique has some advantages such as reducing performance non-determinism and improving cache performance in virtualization environment. Our experiments demonstrate that if our technique is applied to the virtual machine monitor (VMM), it improves the performance up to 6.3%. Also, our experiments show that our technique can reduce performance non-determinism.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Hwang, J., Suh, S., Heo, S., Park, C., Ryu, J., Park, S., Kim, C.: Xen on Arm: System Virtualization using Xen Hypervisor for ARM-based Secure Mobile Phones. In: 5th Annual IEEE Consumer Communications & Networking Conference, pp. 257–261 (2008)
McDougall, R., Anderson, J.: Virtualization Performance: Perspectives and Challenges Ahead. ACM SIGOPS Operating Systems Review 44(4), 40–56 (2010)
Zhang, X., Dwarkadas, S., Shen, K.: Towards Practical Page Coloring-based Multi-core Cache Management. In: 4th ACM European Conference on Computer Systems (EuroSys), pp. 89–102 (2009)
Lynch, W., Bray, B., Flynn, M.: The Effect of Page Allocations on Caches. In: 25th Annual International Symposium on Microarchitecture, pp. 222–225 (1992)
Bershad, B., Lee, D., Romer, T., Chen, J.: Avoiding Conflict Misses Dynamically in Large Direct-Mapped Caches. In: 6th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS), pp. 158–170 (1994)
Sherwood, T., Calder, B., Emer, J.: Reducing Cache Misses Using Hardware and Software Page Placement. In: 13th International Conference on Supercomputing, pp. 155–164 (1999)
Cho, S., Jin, L.: Managing Distributed, Shared L2 Caches through OS-Level Page Allocation. In: 39th Annual International Symposium on Microarchitecture (2006)
Kessler, R., Hill, M.: Page Placement Algorithms for Large Real-Indexed Caches. ACM Transactions on Computer Systems 10(4), 338–359 (1992)
Bugnion, E., Anderson, J., Lam, M.: Compiler-Directed Page Coloring for Multiprocessors. In: 7th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS), pp. 244–255 (1996)
Taylor, G., Davies, P., Farmwald, M.: The TLB Slice – A Low-Cost High-Speed Address Translation Mechanism. In: 17th International Symposium on Computer Architecture (ISCA), pp. 355–363 (1990)
Tam, D., Azimi, R., Soares, L., Stumm, M.: Managing Shared L2 Caches on Multicore Systems in Software. In: Workshop on the Interaction between Operating Systems and Computer Architecture (2007)
Soares, L., Tam, D., Stumm, M.: Reducing the Harmful Effects of Last-Level Cache Polluters with an OS-Level, Software-Only Pollute Buffer. In: 41th Annual International Symposium on Microarchitecture, pp. 258–269 (2008)
Lin, J., Lu, Q., Ding, X., Zhang, Z., Zhang, X., Sadayappan, P.: Gaining Insights into Multicore Cache Partitioning: Bridging the Gap between Simulation and Real Systems. In: International Symposium on High-Performance Computer Architecture (HPCA), pp. 367–378 (2008)
McDougall, R., Mauro, J.: Solaris Internals: Solaris 10 and OpenSolaris Kernel Architecture. Sun Microsystems Press (2006)
Dillon, M.: Design Elements of the FreeBSD VM System, http://www.freebsd.org/doc/en/articles/vm-design
Russinovich, M., Solomon, D.: Microsoft Windows Internals. In: Microsoft Windows Server(TM) 2003, Windows XP, Windows 2000 (Pro-Developer), 4th edn., Microsoft Press, Redmond (2004)
Barham, P., Dragovic, B., Fraser, K., Hand, S., Harris, T., Ho, A., Neugebauer, R., Pratt, I., Warfield, A.: Xen and the Art of Virtualization. In: 19th ACM Symposium on Operating Systems Principles (SOSP), pp. 164–177 (2003)
Neiger, G., Santoni, A., Leung, F., Rodgers, D., Uhlig, R.: Intel Virtualization Technology: Hardware Support for Efficient Processor Virtualization. Intel Technology Journal 10(3) (2006)
Kernel Based Virtual Machine (KVM), http://www.linux-kvm.org
SysBench: A System Performance Benchmark, http://sysbench.sf.net
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kim, J., Kim, J., Ahn, D., Eom, Y.I. (2011). Page Coloring Synchronization for Improving Cache Performance in Virtualization Environment. In: Murgante, B., Gervasi, O., Iglesias, A., Taniar, D., Apduhan, B.O. (eds) Computational Science and Its Applications - ICCSA 2011. ICCSA 2011. Lecture Notes in Computer Science, vol 6784. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21931-3_38
Download citation
DOI: https://doi.org/10.1007/978-3-642-21931-3_38
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-21930-6
Online ISBN: 978-3-642-21931-3
eBook Packages: Computer ScienceComputer Science (R0)