Skip to main content

CDLP: A Core Distributing Policy Based on Logic Partitioning

  • Conference paper
  • First Online:
Green, Pervasive, and Cloud Computing (GPC 2017)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 10232))

Included in the following conference series:

  • 1887 Accesses

Abstract

With multi-core processors being increasingly employed by servers in cloud/data centers, how to take advantage of multi-core has been a key issue to improve the system performance. Data reuse in shared cache is an attractive approach to exploit multi-core, and therefore researchers present a number of solutions from different levels such as compiler and operating system. However, because of the lack of cooperation in two-level scheduling framework in virtualized system, the scheduling and distributing policy employed by VCPU (Virtual CPU) scheduler often counteract the endeavor of the guest operating in pursuing data reuse. Aiming the problem, we present CDLP: a novel dynamic core distributing policy based on logic partitioning, and we present a set of algorithms including core distribution, load balancing, core redistribution, core reclaiming. In order to verify the effectiveness and correctness of CDLP, we implement a prototype based on Xen platform, the experimental results demonstrate that CDLP can effectively realize data reuse and fully utilize processing resource.

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

Access this chapter

Institutional subscriptions

References

  1. Blelloch, G.E., Gibbons, P.B.: Effectively sharing a cache among threads. In: Gibbons, P.B., Adler, M. (eds.) Proceedings of the Sixteenth Annual ACM Symposium on Parallelism in Algorithms and Architectures (SPAA 2004), Barcelona, Spain, 27–30 June 2004, pp. 235–244. ACM Press, New York (2004)

    Google Scholar 

  2. Blelloch, G.E., Gibbons, P.B., Matias, Y.: Provably efficient scheduling for languages with fine-grained parallelism. J. ACM 46(2), 281–321 (1999)

    Article  MathSciNet  MATH  Google Scholar 

  3. Chen, S., Gibbons, P.B., Kozuch, M., et al.: Scheduling threads for constructive cache sharing on CMPs. In: Scheideler, C. (ed.) Proceedings of the 19th Annual ACM Symposium on Parallelism in Algorithms and Architectures (SPAA 2007), San Diego, CA, USA, 09–11 June 2007, pp. 105–115. ACM Press, New York (2007)

    Google Scholar 

  4. Tam, D., Azimi, R.,Stumm, M.: Thread clustering: sharing-aware scheduling on SMP-CMP-SMT multiprocessors. In: Ferreira, P., Gross, T.R., Veiga, L. (eds.) Proceedings of the 2nd ACM SIGOPS/EuroSys European Conference on Computer Systems (EuroSys 2007), Lisbon, Portugal, 21–23 March 2007, pp. 47–58. ACM Press, New York (2007)

    Google Scholar 

  5. Pericas, M., Taura, K., Matsuoka, S.: Scalable analysis of multicore data reuse and sharing. In: Proceedings of the 28th ACM International Conference on Supercomputing (ICS 2014), Muenchen, Germany, 10–13 June 2014, pp. 353–362. ACM Press, New York (2014)

    Google Scholar 

  6. Zhang, W., Liu, F., Fan, R.: Cache matching: thread scheduling to maximize data reuse. In: Proceedings of the High Performance Computing Symposium (HPC 2014), Tampa, FL, USA, 13–16 April 2014, no. 7. ACM Press, New York (2014)

    Google Scholar 

  7. Jin, H., Qin, H., Wu, S., et al.: CCAP: a cache contention-aware virtual machine placement approach for HPC cloud. Int. J. Parallel Program. (2013). ISSN 1573-7630

    Google Scholar 

  8. Kim, S., Eom, H., Yeom, H.Y.: Virtual machine scheduling for multicores considering effects of shared on-chip last level cache interference. In: Culler, D., Shirazi, B. (eds.) Proceedings of the 3rd International Green Computing Conference (IGCC 2012), San Jose, CA, USA, 04–08 June 2012, pp. 1–6. IEEE Computer Society, Washington (2012)

    Google Scholar 

  9. Rao, J., Wang, K., Zhou, X., et al.: Optimizing virtual machine scheduling in NUMA multicore systems. In: Zhang, L. (ed.) IEEE Proceedings of the 19th International Symposium on High Performance Computer Architecture (HPCA 2013), Shenzhen, China, 23–27 February 2013, pp. 206–317. IEEE Computer Society, Washington (2013)

    Google Scholar 

  10. Barham, P., Dragovic, B., Fraser, K., et al.: Xen and the art of virtualization. In: Scott, M.L., Peterson, L.L. (eds.) Proceedings of the 19th ACM Symposium on Operating Systems Principles (SOSP 2003), Bolton Landing, NY, USA, 19–22 October 2003, pp. 164–177. ACM Press, New York (2003)

    Google Scholar 

  11. Kandemir, M., Prashanth, S., Hari Krishna, S.: Optimizing shared cache behavior of chip multiprocessors. In: Albonesi, D.H., Martonosi, M., August, D.I., et al. (eds.) Proceedings of the 42nd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 2009), New York, 12–16 December 2009, pp. 505–516. ACM Press, New York (2009)

    Google Scholar 

  12. Woo, S.C., Ohara, M., Torrie, E., et al.: The SPLASH-2 programs: characterization and methodological considerations. In: Patterson, D.A. (ed.) Proceedings of the 22nd Annual International Symposium on Computer Architecture (ISCA 1995), S. Margherita Ligure, Italy, 22–24 June 1995, pp. 24–36. ACM Press, New York (1995)

    Google Scholar 

  13. Bienia, C., Kumar, S., Singh, J.P., et al.: The PARSEC benchmark suite: characterization and architectural implications. In: Moshovos, A., Tarditi, D., Olukotun, K. (eds.) Proceedings of the 17th International Conference on Parallel Architectures and Compilation Techniques (PACT 2008), Toronto, Canada, 25–29 October 2008, pp. 72–81. ACM Press, New York (2008)

    Google Scholar 

  14. Magnusson, P.S., Christensson, M., Eskilson, J., et al.: Simics: a full system simulation platform. J. Comput. 35(2), 50–58 (2002)

    Google Scholar 

  15. Martin, M., Sorin, D., Beckmann, B., et al.: Multifacet’s general execution-driven multiprocessor simulator (gems) toolset. Comput. Architect. News 33(4), 92–99 (2005)

    Article  Google Scholar 

  16. Srikantaiah, S., Kandemir, M., Jane, I.M.: Adaptive set pinning: managing shared caches in chip multiprocessors. In: Eggers, S.J., Larus, J.R. (eds.) Proceedings of the 13th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 2008), Seattle, Washington, USA, 1–5 March 2008, pp. 135–144. ACM Press, New York (2008)

    Google Scholar 

  17. Aslot, V., Domeika, M.J., Eigenmann, R., et al.: SPECcomp: a new benchmark suite for measuring parallel computer performance. In: Eigenmann, R., Voss, M. (eds.) Proceedings of the International Workshop on OpenMP Applications and Tools: OpenMP Shared Memory Parallel Programming, pp. 1–10. Springer, London (2001)

    Google Scholar 

  18. Raghavendra, K.T.: Virtual CPU scheduling techniques for kernel based virtual machine (KVM). In: Diamond, S. (ed.) The Second IEEE International Conference on Cloud Computing in Emerging Markets (CCEM 2013), Bangalore, India, 16–18 October 2013, pp. 1–6. IEEE Computer Society Press, Washington (2013)

    Google Scholar 

  19. Zhong, A., Jin, H., Wu, S., et al.: Optimizing Xen hypervisor by using lock-aware scheduling. In: Proceedings of the Second International Conference on Cloud and Green Computing (CGC 2012), Xiangtan, China, 1–3 Novemenber 2012, pp. 31–38. IEEE Computer Society Press, Washington (2012)

    Google Scholar 

  20. Credit Based Scheduler. http://wiki.xensource.com/xenwiki/Creditscheduler

  21. Libvirt. http://libvirt.org/

  22. Menon, A., Santos, J.R., Turner, Y.: Diagnosing performance overheads in the Xen virtual machine environment. In: Hind, M. (ed.) Proceedings of the 1st ACM/USENIX International Conference on Virtual Execution Environments (VEE 2005), Chicago, Illinois, USA, 11–12 June 2005, pp. 13–23. ACM Press, New York (2005)

    Google Scholar 

  23. Chen, S., Ailamaki, A., Gibbons, P.B., et al.: Inspector joins. In: Böhm, K., Jensen, C.S., Haas, L.M., et al. (eds.) Proceedings of the 31st International Conference on Very Large Data Bases (VLDB 2005), Trondheim, Norway, 30 August–2 September 2005, pp. 817–828. ACM Press, New York (2005)

    Google Scholar 

  24. Mergesort. https://en.wikipedia.org/wiki/Merge_sort

Download references

Acknowledgements

This work was supported by the National Key Research and Development Program of China under Grant 2016YFB0800403, the Natural Science Foundation of China (61174177), the Open Foundation of Hubei Engineering Research Center of Construction Quality Testing Equipment (2016KTE06), and BRCAST-KFKT2014001.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Shun Ren .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Cite this paper

Zhong, A., Ren, S., Xu, S. (2017). CDLP: A Core Distributing Policy Based on Logic Partitioning. In: Au, M., Castiglione, A., Choo, KK., Palmieri, F., Li, KC. (eds) Green, Pervasive, and Cloud Computing. GPC 2017. Lecture Notes in Computer Science(), vol 10232. Springer, Cham. https://doi.org/10.1007/978-3-319-57186-7_33

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-57186-7_33

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-57185-0

  • Online ISBN: 978-3-319-57186-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics