skip to main content
research-article

Autonomic thread scaling library for QoS management

Published:25 March 2016Publication History
Skip Abstract Section

Abstract

Over the last years embedded system industry faced a revolution thanks to the introduction of multicores and heterogeneous devices. The availability of these new platforms opens new paths for these devices that can be nowadays used for more high demand tasks, exploiting the parallelism made available by the muticore processors. Nonetheless the progresses of the HW technology are not backed up by improvements of the SW side, and runtime mechanisms to manage resource allocation and contention on resources are still lacking the proper effectiveness. This paper tackles the problem of dynamic resource management from the application point of view and presents a user space library to control application performance. The control knob exploited by the library is the possibility of scaling the number of threads used by an application and seamlessly integrates with OpenMP. A case study illustrates the benefits that this library has in a classic embedded system scenario, introducing an overhead of less than 0.5%.

References

  1. N. Rajovic et al., "Supercomputing with commodity cpus: are mobile socs ready for hpc?" in High Performance Computing, Networking, Storage and Analysis (SC), International Conf. for. IEEE, 2013.Google ScholarGoogle Scholar
  2. L. Dagum et al., "Openmp: an industry standard api for shared-memory programming," Computational Science & Engineering, IEEE, vol. 5, no. 1, 1998.Google ScholarGoogle Scholar
  3. A. Sharifi et al., "Mete: meeting end-to-end qos in multicores through system-wide resource management," in Proc. of the ACM SIGMETRICS joint international conference on Measurement and modeling of computer systems. ACM, 2011.Google ScholarGoogle Scholar
  4. D. B. Bartolini et al., "Towards a performance-as-a-service cloud," in Proc. of the 4th annual Symposium on Cloud Computing. ACM, 2013.Google ScholarGoogle Scholar
  5. H. Hoffmann et al., "Application heartbeats: a generic interface for specifying program performance and goals in autonomous computing environments," in Proceedings of the 7th international conference on Autonomic computing. ACM, 2010.Google ScholarGoogle Scholar
  6. G. Durelli, "Source code." [Online]. Available: https://bitbucket.org/durellinux/libthreadscale-codeGoogle ScholarGoogle Scholar
  7. R. Nathuji et al., "Q-clouds: managing performance interference effects for qos-aware clouds," in Proceedings of the 5th European conference on Computer systems. ACM, 2010.Google ScholarGoogle Scholar
  8. D. B. Bartolini et al., "The autonomic operating system research project: achievements and future directions," in Proceedings of the 50th Annual Design Automation Conference. ACM, 2013.Google ScholarGoogle Scholar
  9. F. Sironi et al., "Metronome: operating system level performance management via self-adaptive computing," in Design Automation Conference (DAC), 2012 49th. IEEE, 2012.Google ScholarGoogle Scholar
  10. F. X. Lin et al., "K2: a mobile operating system for heterogeneous coherence domains," in Proc. of the 19th int. conf. on Architectural support for programming languages and operating systems. ACM, 2014.Google ScholarGoogle Scholar
  11. H. Hoffmann and M. Maggio, "Pcp: A generalized approach to optimizing performance under power constraints through resource management," in 11th Int. Conf. on Autonomic Computing, 2014.Google ScholarGoogle Scholar
  12. H. Hoffmann, "Seec: A general and extensible framework for self-aware computing, âĂİ massachusetts institute of technology," Tech. Rep, Tech. Rep., 2011.Google ScholarGoogle Scholar
  13. J. R. Wernsing and G. Stitt, "Elastic computing: a framework for transparent, portable, and adaptive multi-core heterogeneous computing," in ACM SIGPLAN Notices, vol. 45. ACM, 2010.Google ScholarGoogle Scholar
  14. D. B. Bartolini et al., "Automated fine-grained cpu provisioning for virtual machines," ACM Trans. on Architecture and Code Optimization, vol. 11, 2014.Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. A. Sharifi et al., "Courteous cache sharing: Being nice to others in capacity management," in Design Automation Conf. (DAC), 2012 49th. IEEE, 2012.Google ScholarGoogle Scholar

Recommendations

Comments

Login options

Check if you have access through your login credentials or your institution to get full access on this article.

Sign in

Full Access

  • Published in

    cover image ACM SIGBED Review
    ACM SIGBED Review  Volume 13, Issue 1
    Special Issue on the 5th Embedded Operating Systems Workshop (EWiLi 2015)
    January 2016
    58 pages
    EISSN:1551-3688
    DOI:10.1145/2907972
    Issue’s Table of Contents

    Copyright © 2016 Authors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    • Published: 25 March 2016

    Check for updates

    Qualifiers

    • research-article

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader