Skip to main content

Interference-Aware Program Scheduling for Multicore Processors

  • Conference paper
Algorithms and Architectures for Parallel Processing (ICA3PP 2013)

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

Abstract

Running multiple application programs on a multicore processor can maximize processor resources utilization. However, contention to the shared resources may result in interference among co-running programs, and make the program performance unstable and unpredictable. In order to optimize the performance of co-running programs and ensure the QoS of latency-sensitive applications, we propose an interference-aware scheduling strategy IA for systems based on multicore processors. Our work begins with analysis of the behavior of a set of benchmark programs, after that we train a simple program classifier. We use this classifier to classify the benchmark programs into three categories according to their interference with each other. The interference-aware scheduler tries to schedule the programs with less interference to the same multicore processor. Experiments results show that our method improves system performance while maintaining reasonable resource utilization. It outperforms the previously published scheduling strategy in guaranteeing the QoS of latency-sensitive applications.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Zhuravlev, S., Blagodurov, S., Fedorova, A.: Addressing shared resource contention in multicore processors via scheduling. In: Architectural Support for Programming Languages and Operating Systems (ASPLOS 2010), pp. 129–141 (March 2010)

    Google Scholar 

  2. Moreto, M., Cazorla, F., Ramirez, A., Sakellariou, R., Valero, M.: Flexdcp: a qos framework for CMP architectures. SIGOPS Operating Systems Review 43(2) (April 2009)

    Google Scholar 

  3. Mars, J., Tang, L., Hundt, R., Skadron, K., Soffa, M.L.: Bubble-Up: increasing utilization in modern warehouse scale computers via sensible co-locations. In: Proceedings of the 44th Annual IEEE/ACM International Symposium on Microarchitecture, December 3-7 (2011)

    Google Scholar 

  4. Tang, L., Mars, J., Vachharajani, N., Hundt, R., Soffa, M.L.: The impact of memory subsystem resource sharing on data center applications. In: ISCA 2011, pp. 283–294. ACM Press, New York (2011)

    Google Scholar 

  5. Nathuji, R., Kansal, A., Ghaffarkhah, A.: Q-clouds: managing performance interference effects for qos-aware clouds. In: Proceedings of the 5th European Conference on Computer Systems, EuroSys 2010 (2010)

    Google Scholar 

  6. Govindan, S., Liu, J., Kansal, A., Sivasubramaniam, A.: Cuanta: quantifying effects of shared on-chip resource interference for consolidated virtual machines. In: Proceedings of the 2nd ACM Symposium on Cloud Computing, SOCC (2011)

    Google Scholar 

  7. Dwyer, T., Fedorova, A.: A Practical Method for Estimating Performance Degradation on Multicore Processors, and its Application to HPC Workloads, SC12

    Google Scholar 

  8. Dey, T., Wang, W., Davidson, J., Soffa, M.L.: Characterizing multi-threaded applications based on shared-resource contention. In: ISPASS (2011)

    Google Scholar 

  9. Pusukuri, K.K., Vengerov, D., Fedorova, A., Kalogeraki, V.: FACT: a Framework for Adaptive Contention-aware Thread Migrations. In: Computing Frontiers (2011)

    Google Scholar 

  10. Paolieri, M., Qui Andones, E., Cazorla, F., Davis, R., Valero, M.: Ia3: An interference aware allocation algorithm for multicore hard real-time systems. In: 2011 17th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS), pp. 280–290 (April 2011)

    Google Scholar 

  11. Tang, L., Mars, J., Soffa, M.L.: Compiling for niceness: Mitigating contention for QoS in warehouse scale computers. In: Proceedings of the 10th Annual IEEE/ACM International Symposium on Code Generation and Optimization. ACM, New York (2012)

    Google Scholar 

  12. Saez, J.C., Shelepov, D., Fedorova, A., Prieto, M.: Leveraging workload diversity through OS scheduling to maximize performance on single-ISA heterogeneous multicore systems. Journal of Parallel and Distributed Computing 71(1), 114–131 (2011)

    Article  Google Scholar 

  13. Xie, Y., Loh, G.: Dynamic Classification of Program Memory Behaviors in CMPs. In: Proc. of CMP-MSI, Held in Conjunction with ISCA-35 (2008)

    Google Scholar 

  14. Chiang, R.C., Huang, H.H.: TRACON: Interference-Aware scheduling for data-intensive applications in virtualized environments. In: Proc. of the Int’l Conf. for High Performance Computing, Networking, Storage and Analysis (2011)

    Google Scholar 

  15. Xu, C., Chen, X., Dick, R., Mao, Z.: Cache contention and application performance prediction for multi-core systems. In: ISPASS 2010 (March 2010)

    Google Scholar 

  16. Chandra, D., Guo, F., Kim, S., Solihin, Y.: Predicting inter-thread cache contention on a chip multi-processor architecture. In: HPCA 2005, Washington, DC, USA, pp. 340–351 (2005)

    Google Scholar 

  17. https://perf.wiki.kernel.org/index.php/Main_Page

  18. Azimi, R., Tam, D.K., Soares, L., Stumm, M.: Enhancing operating system support for multicore processors by using hardware performance monitoring. SIGOPS Oper. Syst. Rev. 43(2), 56–65 (2009)

    Article  Google Scholar 

  19. Qureshi, M.K., Patt, Y.N.: Utility-based cache partitioning: A lowoverhead, high-performance, runtime mechanism to partition shared caches. In: MICRO 39: Proceedings of the 39th Annual IEEE/ACM International Symposium on Microarchitecture, pp. 423–432 (2006)

    Google Scholar 

  20. Kim, Y., Papamichael, M., Mutlu, O., Harchol-Balter, M.: Thread Cluster Memory Scheduling: Exploiting Differences in Memory Access Behavior. In: Proceedings of MICRO (2010)

    Google Scholar 

  21. Liu, F., Jiang, X., Solihin, Y.: Understanding how off-chip memory bandwidth partitioning in chip multiprocessors affects system performance. In: HPCA 2010, pp. 1–12 (2010)

    Google Scholar 

  22. Zhang, X., Dwarkadas, S., Shen, K.: Towards practical page coloring-based multicore cache management. In: Proceedings of the 4th ACM European Conference on Computer Systems (EuroSys 2009), pp. 89–102 (2009)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer International Publishing Switzerland

About this paper

Cite this paper

Wang, L., Wang, R., Fu, C., Luan, Z., Qian, D. (2013). Interference-Aware Program Scheduling for Multicore Processors. In: Kołodziej, J., Di Martino, B., Talia, D., Xiong, K. (eds) Algorithms and Architectures for Parallel Processing. ICA3PP 2013. Lecture Notes in Computer Science, vol 8285. Springer, Cham. https://doi.org/10.1007/978-3-319-03859-9_38

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-03859-9_38

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-03858-2

  • Online ISBN: 978-3-319-03859-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics