Skip to main content

Machine-learning-based cache partition method in cloud environment

Abstract

In the modern cloud environment, considering the cost of hardware and software resources, applications are often co-located on a platform and share such resources. However, co-located execution and resource sharing bring memory access conflict, especially in the Last Level Cache (LLC). In this paper, a lightweight method is proposed for partition LLC named by Classification-and-Allocation (C&A). Specifically, Support Vector Machine (SVM) is used in the proposed method to classify applications into the triple classes based on the performance change characteristic (PCC), and the Bayesian Optimizer (BO) is leveraged to schedule LLC to guarantee applications with the same PCC sharing the same part of LLC. Since the near-optimal partition can be found efficiently by leveraging BO-based scheduling with a few sampling steps, C&A can handle unseen and versatile workloads with low overhead. We evaluate the proposed method in several workloads. Experimental results show that C&A can outperform the state-of-art method KPart (El-Sayed et al in Proceedings of 2018 IEEE International Symposium on High Performance Computer Architecture (HPCA) 104−117, 2018) by 7.45\(\%\) and 22.50\(\%\) respectively in overall system throughput and fairness, and reduces 20.60\(\%\) allocation overhead.

This is a preview of subscription content, access via your institution.

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

References

  1. 1.

    Cheng N et al (2014) Vehicular wifi offloading: Challenges and solutions. Veh Commun (Elsevier) 1(1):13–21

    Google Scholar 

  2. 2.

    Chen D et al (2017) S2M: A lightweight acoustic fingerprints based wireless device authentication protocol. IEEE Internet Things J 4(1):88–100

    Article  Google Scholar 

  3. 3.

    Cheng N et al (2014) Opportunistic spectrum access for CR-VANETs: A game theoretic approach. IEEE Trans Veh Technol 63(1):237–251

    Article  Google Scholar 

  4. 4.

    Zhang N et al (2014) Dynamic spectrum access in multi-channel cognitive radio networks. IEEE J Sel Areas Commun 32(11):2053–2064

    Article  Google Scholar 

  5. 5.

    Shi W et al (2018) Drone assisted vehicular networks: Architecture. Challenges and Opportunities, IEEE Network 32(3):130–137

    Google Scholar 

  6. 6.

    Zhang N et al (2018) Synergy of big data and 5G wireless networks: Opportunities, approaches, and challenges. IEEE Wirel Commun 25(1):12–18

    Article  Google Scholar 

  7. 7.

    Peng H, Shen X (2020) Multi-agent reinforcement learning based resource management in MEC-and UAV-assisted vehicular networks. IEEE J Sel Areas Commun 39(1):131–141

    Article  Google Scholar 

  8. 8.

    Wang B, Fan T, Nie X (2020) Advanced delay assured numerical heuristic modelling for peer to peer project management in cloud assisted internet of things platform. Peer-to-Peer Networking and Applications 13:1–11

    Article  Google Scholar 

  9. 9.

    Guevara JC, da Fonseca NLS (2021) Task scheduling in cloud-fog computing systems. Peer-to-Peer Networking and Applications 14:1–16

    Article  Google Scholar 

  10. 10.

    Qureshi MK, Patt YN (2006) Utility-based cache partitioning: A low-overhead, high-performance, runtime mechanism to partition shared caches, in proceedings of 2006 39th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO’06) 423–432

  11. 11.

    Iyer R, Zhao L, Guo F, Illikkal R, Makineni S, Newell D, Solihin Y, Hsu L, Reinhardt S (2007) QoS methods and architecture for cache/memory in CMP platforms. ACM SIGMETRICS Performance Evaluation Review 35(1):25–36

    Article  Google Scholar 

  12. 12.

    Iyer R (2004) CQoS: A framework for enabling QoS in shared caches of CMP platforms. In Proceedings of the 18th Annual International Conference on Supercomputing 257–266

  13. 13.

    Suh GE, Rudolph L, Devadas S (2004) Dynamic partitioning of shared cache memory. J Supercomput 28(1):7–26

    Article  Google Scholar 

  14. 14.

    Kim S, Chandra D, Solihin Y (2004) Fair cache sharing and partitioning in a chip multiprocessor architecture. In Proceedings of 13th International Conference on Parallel Architecture and Compilation Techniques 111–122

  15. 15.

    Lee H, Cho S, Childers B (2011) CloudCache: Expanding and shrinking private caches. In Proceedings of 17th International Conference on High-Performance Computer Architecture 219–230

  16. 16.

    Wu W, Chen N, Zhou C et al (2021) Dynamic RAN slicing for service-oriented vehicular networks via constrained learning. IEEE J Sel Areas Commun

  17. 17.

    Ale L, Zhang N, Wu H et al (2019) Online proactive caching in mobile edge computing using bidirectional deep recurrent neural network. IEEE Internet Things J 6(3):5520–5530

    Article  Google Scholar 

  18. 18.

    Ding Y, Wu G, Chen D, Zhang N, Gong L, Cao M, Qin Z (2020) Deepedn: a deep learning-based image encryption and decryption network for internet of medical things. IEEE Internet Things J 8(3):1504–1518

    Article  Google Scholar 

  19. 19.

    Chen D, Zhao Z et al (2021) MAGLeak: A learning-based side-channel attack for password recognition with multiple sensors in IIoT environment. IEEE Trans Ind Inf

  20. 20.

    Qin Z, Hu L, Zhang N et al (2019) Learning-aided user identification using smartphone sensors for smart homes. IEEE Internet Things J 6(5):7760–7772

    Article  Google Scholar 

  21. 21.

    Liu L (2019) QoS-aware machine learning-based multiple resources scheduling for microservices in cloud environment. arXiv preprint arXiv:1911.13208

  22. 22.

    Liu L, Li Y, Ding C, Yang H, Wu C (2015) Rethinking memory management in modern operating system: Horizontal, vertical or random? IEEE Trans Comput 65(6):1921–1935

    MathSciNet  Article  Google Scholar 

  23. 23.

    Wang X, Chen S, Setter J et al (2017) SWAP: Effective fine grain management of shared last-level caches with minimum hardware support. In Proceedings of 2017 IEEE International Symposium on High Performance Computer Architecture (HPCA) 121–132

  24. 24.

    Ye Y, West R, Cheng Z et al (2014) Coloris: A dynamic cache partitioning system using page coloring. In Proceedings of 2014 23rd International Conference on Parallel Architecture and Compilation Techniques (PACT) 381–392

  25. 25.

    El-Sayed N, Mukkara A, Tsai P A et al (2018) KPart: A hybrid cache partitioning-sharing technique for commodity multicores. In Proceedings of 2018 IEEE International Symposium on High Performance Computer Architecture (HPCA) 104–117

  26. 26.

    Sanchez D, Kozyrakis C (2011) Vantage: Scalable and efficient fine-grain cache partitioning. In Proceedings of the 38th Annual international Symposium on Computer Architecture 57–68

  27. 27.

    Wang R, Chen L (2014) Futility scaling: High-associativity cache partitioning, in 2014 47th Annual IEEE/ACM International Symposium on Microarchitecture 356–367

  28. 28.

    https://github.com/intel/intel-cmt-cat, Intel-cmt-cat. Last Accessed 31 Aug 2021

  29. 29.

    Chen S, Delimitrou C, Martinez JF (2019) Parties: Qos-aware resource partitioning for multiple interactive services. In Proceedings of the Twenty-Fourth International Conference on Architectural Support for Programming Languages and Operating Systems 107–120

  30. 30.

    Park J, Park S, Baek W (2019) CoPart: Coordinated partitioning of last-level cache and memory bandwidth for fairness-aware workload consolidation on commodity servers. In Proceedings of the Fourteenth EuroSys Conference 2019 1–16

  31. 31.

    Patel T, Tiwari D (2020) CLITE: Efficient and QoS-Aware Co-Location of Multiple Latency-Critical Jobs for Warehouse Scale Computers. In 2020 IEEE International Symposium on High Performance Computer Architecture (HPCA) 193–206

  32. 32.

    Cortez E, Bonde A, Muzio A et al (2017) Resource central: Understanding and predicting workloads for improved resource management in large cloud platforms. In Proceedings of the 26th Symposium on Operating Systems Principles (SOSP) 153–167

  33. 33.

    https://www.spec.org/cpu2006/, SPEC CPU (2006). Last Accessed 31 Aug 2021

  34. 34.

    https://www.spec.org/cpu2017/, SPEC CPU (2017). Last Accessed 31 Aug 2021

  35. 35.

    Artusi R, Verderio P, Marubini E (2002) Bravais-Pearson and Spearman correlation coefficients: meaning, test of hypothesis and confidence interval. Int J Biol Markers 17(2):148–151

    Article  Google Scholar 

  36. 36.

    Phyu T N (2009) Survey of classification techniques in data mining. In Proceedings of the International MultiConference of Engineers and Computer Scientists 1(5)

  37. 37.

    Suykens JAK, Vandewalle J (1999) Least squares support vector machine classifiers. Neural Process Lett 9(3):293–300

    Article  Google Scholar 

  38. 38.

    Noble WS (2006) What is a support vector machine? Nat Biotechnol 24(12):1565–1567

    Article  Google Scholar 

  39. 39.

    Gardner MW, Dorling SR (1998) Artificial neural networks (the multilayer perceptron)-a review of applications in the atmospheric sciences. Atmos Environ 32(14–15):2627–2636

    Article  Google Scholar 

  40. 40.

    Pelikan M, Goldberg D E, Cantú-Paz E (1999) BOA: The Bayesian optimization algorithm. In Proceedings of the genetic and evolutionary computation conference GECCO-99 1:525–532

  41. 41.

    Chen L, Wang Y, Cui Z et al (2013) Scattered superpage: A case for bridging the gap between superpage and page coloring. In Proceedings of the 31st International Conference on Computer Design (ICCD) 177–184

  42. 42.

    Snoek J, Larochelle H, Adams RP (2012) Practical bayesian optimization of machine learning algorithms. In Advances in Neural Information Processing Systems 2951–2959

  43. 43.

    Moreto M, Cazorla FJ, Ramirez A et al (2009) FlexDCP: a QoS framework for CMP architectures. ACM SIGOPS Operating Systems Review 43(2):86–96

    Article  Google Scholar 

  44. 44.

    Jaleel A, Hasenplaugh W, Qureshi M et al (2008) Adaptive insertion policies for managing shared caches. In Proceedings of the 17th International Conference on Parallel Architectures and Compilation Techniques 208–219

  45. 45.

    Shahriari B, Swersky K, Wang Z et al (2015) Taking the human out of the loop: A review of Bayesian optimization. Proc IEEE 104(1):148–175

    Article  Google Scholar 

  46. 46.

    Snoek J, Larochelle H, Adams RP (2012) Practical bayesian optimization of machine learning algorithms. arXiv preprint arXiv:1206.2944

  47. 47.

    Eggensperger K, Feurer M, Hutter F et al (2013) Towards an empirical foundation for assessing bayesian optimization of hyperparameters. NIPS workshop on Bayesian Optimization in Theory and Practice 10:3

    Google Scholar 

Download references

Author information

Affiliations

Authors

Corresponding author

Correspondence to Dajiang Chen.

Additional information

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

This research work is jointly supported by National Key Research and Development Project under Grant No.2018YFB1402800, Zhejiang Provincial Natural Science Foundation of China under Grant No. LY20F020026, the NSFC (No. 61872059), and the project “The Verification Platform of Multi-tier Coverage Communication Network for oceans” (No.LZC0020)

Appendix

Appendix

We select following benchmarks for evaluations, where benchmarks selected in SPECCPU are shown in Table 3, benchmarks used in Fig. 4 are shown in Table 4, and benchmarks used in Figs. 7, 8, 9 and 11 are shown in Table 5.

Table 3 Benchmarks selected in SPECCPU
Table 4 Benchmarks selected in Fig. 3
Table 5 Benchmarks selected for evaluation in Fig. 7

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Qiu, J., Hua, Z., Liu, L. et al. Machine-learning-based cache partition method in cloud environment. Peer-to-Peer Netw. Appl. (2021). https://doi.org/10.1007/s12083-021-01235-x

Download citation

Keywords

  • Cloud
  • Cache Partition
  • Last Level Cache
  • Machine Learning