[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to main content

A Linux Scheduler to Limit the Slowdown Generated by Volunteer Computing Systems

  • Conference paper
  • First Online:
Applied Informatics (ICAI 2020)

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 1277))

Included in the following conference series:

  • 880 Accesses

Abstract

Volunteer computing systems leverage idle resources on voluntarily enabled desktops to execute CPU-intensive jobs. When these systems execute simultaneously to tasks performed by the end-user (i.e., the person who runs applications on the shared desktop), a slowdown can be generated and the end-user may perceive it. Since slowdown is a key factor to either encourage or discourage end-users to donate their computing resources, volunteer computing systems often aim at reducing it by limiting CPU consumption. This introduces a trade-off in using the available processing resources. On the one hand, if the processor is fully idle then resources are underutilized. On the other hand, significant slowdown still can be generated in presence of other CPU-intensive end-user tasks. In contrast to fixing CPU consumption, we tackle this problem by modifying the Linux Scheduler to implement scheduling policies that determine whether a volunteer computing system can execute a job by dynamically considering the potential slowdown that it may introduce. By implementing our policies, we found the utilization of idle resources is improved and the slowdown the end-user experiences is effectively limited. Our evaluation results show that our approach overcomes state-of-the-art CPU limiting techniques such as the CPUlimit and cgroups.

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

Access this chapter

Subscribe and save

Springer+ Basic
£29.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
GBP 19.95
Price includes VAT (United Kingdom)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
GBP 71.50
Price includes VAT (United Kingdom)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
GBP 89.99
Price includes VAT (United Kingdom)
  • 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

Similar content being viewed by others

Notes

  1. 1.

    https://boinc.berkeley.edu/.

  2. 2.

    https://research.cs.wisc.edu/htcondor/.

  3. 3.

    http://setiathome.ssl.berkeley.edu/.

  4. 4.

    https://boinc.bakerlab.org/.

  5. 5.

    Some documentation and user-space tools refer to SCHED_NORMAL as SCHED_OTHER.

  6. 6.

    https://github.com/opsengine/cpulimit.

References

  1. Aas, J.: Understanding the Linux 2.6.8.1 CPU Scheduler. Technical report, SGI (2005)

    Google Scholar 

  2. Anderson, D.: Local scheduling for volunteer computing. In: Parallel and Distributed Processing Symposium, IPDPS 2007, pp. 1–8. IEEE (2007)

    Google Scholar 

  3. Anderson, D.P., Christensen, C., Allen, B.: Designing a runtime system for volunteer computing. In: SC 2006 Conference, p. 33 (2006)

    Google Scholar 

  4. Bryant, R., Hawkes, J.: Linux scalability for large NUMA systems. In: Linux Symposium, vol. 76 (2003)

    Google Scholar 

  5. Durrani, M.N., Shamsi, J.A.: Volunteer computing: requirements, challenges, and solutions. J. Netw. Comput. Appl. 39, 369–380 (2014)

    Article  Google Scholar 

  6. Faggioli, D., Checconi, F., Trimarchi, M., Scordino, C.: An EDF scheduling class for the Linux kernel. In: the Real-Time Linux Workshop (2009)

    Google Scholar 

  7. Intel Turbo Boost Technology in Intel Core Microarchitecture (Nehalem) Based Processors (2008). https://goo.gl/kvA1YZ

  8. Intel Core i7–4770 Processor Specifications (2013). https://goo.gl/jjH5yT

  9. Jiang, W., et al.: CFS optimizations to KVM threads on multi-core environment. In: Parallel and distributed systems, ICPADS 2009, pp. 348–354 (2009)

    Google Scholar 

  10. Jones, M.T.: Inside the Linux 2.6 completely fair scheduler. IBM Developer Works Technical Report 2009 (2009)

    Google Scholar 

  11. Kravetz, M., Franke, H., Nagar, S., Ravindran, R.: Enhancing Linux scheduler scalability. In: Proceedings of the Ottawa Linux Symposium (2001)

    Google Scholar 

  12. La’adan, O., Barak, A.: Inter process communication optimization in a scalable computing cluster (chap. 4). In: Annual Review of Scalable Computing, pp. 121–180. World Scientific Publishing (1999)

    Google Scholar 

  13. Lelli, J., Lipari, G., Faggioli, D., Cucinotta, T.: An efficient and scalable implementation of global EDF in Linux. In: Workshop on Operating Systems Platforms for Embedded Real-Time Applications, OSPERT 2011, pp. 6–15 (2011)

    Google Scholar 

  14. Lozi, J.P., Lepers, B., Funston, J., Gaud, F., Quéma, V., Fedorova, A.: The Linux scheduler: a decade of wasted cores. In: 11th European Conference on Computer Systems, p. 1. ACM (2016)

    Google Scholar 

  15. Menage, P.: CGroups, Linux Kernel Documentation (2006). https://www.kernel.org/doc/Documentation/cgroup-v1/cgroups.txt

  16. Molloy, S.P., Honeyman, P.: Scalable Linux scheduling. In: USENIX Technical Conference, Boston (2001)

    Google Scholar 

  17. Rosales, E., Sotelo, G., de la Vega, A., Diaz, C.O., Gómez, C.E., Castro, H.E.: Harvesting idle CPU resources for desktop grid Computing while limiting the slowdown generated to end-users. Cluster Comput. 18(4), 1331–1350 (2015). https://doi.org/10.1007/s10586-015-0482-4

    Article  Google Scholar 

  18. Rubab, S., Hassan, M.F., Mahmood, A.K., Shah, N.M.: Bin packing multi-constraints job scheduling heuristic for heterogeneous volunteer grid resources. In: Fourth International Conference on Computer Science & Computational Mathematics, ICCSCM 2015 (2015)

    Google Scholar 

  19. Vyas, D., Subhlok, J.: Volunteer computing on clusters. In: Frachtenberg, E., Schwiegelshohn, U. (eds.) JSSPP 2006. LNCS, vol. 4376, pp. 161–175. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-71035-6_8

    Chapter  Google Scholar 

  20. Wong, C.S., Tan, I., Kumari, R.D., Wey, F.: Towards achieving fairness in the Linux scheduler. ACM SIGOPS Oper. Syst. Rev. 42(5), 34–43 (2008)

    Article  Google Scholar 

  21. Yu, K., Han, D., Youn, C., Hwang, S., Lee, J.: Power-aware task scheduling for big. Little mobile processor. In: 2013 International SoC Design Conference (ISOCC), pp. 208–212. IEEE (2013)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jaime Chavarriaga .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Chavarriaga, J., de-la-Vega, A., Rosales, E., Castro, H. (2020). A Linux Scheduler to Limit the Slowdown Generated by Volunteer Computing Systems. In: Florez, H., Misra, S. (eds) Applied Informatics. ICAI 2020. Communications in Computer and Information Science, vol 1277. Springer, Cham. https://doi.org/10.1007/978-3-030-61702-8_11

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-61702-8_11

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-61701-1

  • Online ISBN: 978-3-030-61702-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics