skip to main content
10.1145/1806799.1806808acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Quality of service profiling

Published:01 May 2010Publication History

ABSTRACT

Many computations exhibit a trade off between execution time and quality of service. A video encoder, for example, can often encode frames more quickly if it is given the freedom to produce slightly lower quality video. A developer attempting to optimize such computations must navigate a complex trade-off space to find optimizations that appropriately balance quality of service and performance.

We present a new quality of service profiler that is designed to help developers identify promising optimization opportunities in such computations. In contrast to standard profilers, which simply identify time-consuming parts of the computation, a quality of service profiler is designed to identify subcomputations that can be replaced with new (and potentially less accurate) subcomputations that deliver significantly increased performance in return for acceptably small quality of service losses.

Our quality of service profiler uses loop perforation (which transforms loops to perform fewer iterations than the original loop) to obtain implementations that occupy different points in the performance/quality of service trade-off space. The rationale is that optimizable computations often contain loops that perform extra iterations, and that removing iterations, then observing the resulting effect on the quality of service, is an effective way to identify such optimizable subcomputations. Our experimental results from applying our implemented quality of service profiler to a challenging set of benchmark applications show that it can enable developers to identify promising optimization opportunities and deliver successful optimizations that substantially increase the performance with only small quality of service losses.

References

  1. prof. Digital Unix man page.Google ScholarGoogle Scholar
  2. UCI Machine Learning Repository. http://archive.ics.uci.edu/ml/.Google ScholarGoogle Scholar
  3. VTune Performance Analyser, Intel Corp.Google ScholarGoogle Scholar
  4. E. Amigo, J. Gonzalo, and J. Artiles. A comparison of extrinsic clustering evaluation metrics based on formal constraints. In Information Retrieval Journal. Springer Netherlands, July 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. J. Anderson, L. Berc, J. Dean, S. Ghemawat, M. Henzinger, S. Leung, R. Sites, M. Vandevoorde, C. Waldspurger, and W. Weihl. Continuous profiling: where have all the cycles gone? ACM Transactions on Computer Systems, 15(4):357--390, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. J. Ansel, C. Chan, Y. Wong, M. Olszewski, Q. Zhao, A. Edelman, and S. Amarasinghe. PetaBricks: a language and compiler for algorithmic choice. In PLDI '09. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. W. Baek and T. Chilimbi. Green: A system for supporting energy-conscious programming using principled approximation. Technical Report TR-2009-089, Microsoft Research, Aug. 2009.Google ScholarGoogle Scholar
  8. E. Berger and B. Zorn. DieHard: probabilistic memory safety for unsafe languages. In PLDI, June 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. C. Bienia, S. Kumar, J. P. Singh, and K. Li. The PARSEC benchmark suite: Characterization and architectural implications. In PACT '08. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. B. Demsky, M. Ernst, P. Guo, S. McCamant, J. Perkins, and M. Rinard. Inference and enforcement of data structure consistency specifications. In ISSTA '06. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. B. Demsky and M. Rinard. Data structure repair using goal-directed reasoning. In ICSE '05, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. B. Furht, J. Greenberg, and R. Westwater. Motion Estimation Algorithms for Video Compression. Kluwer Academic Publishers, Norwell, MA, USA, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. S. Graham, P. Kessler, and M. Mckusick. Gprof: A call graph execution profiler. In SCC '82. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. H. Hoffmann, S. Misailovic, S. Sidiroglou, A. Agarwal, and M. Rinard. Using Code Perforation to Improve Performance, Reduce Energy Consumption, and Respond to Failures. Technical Report MIT-CSAIL-TR-2009-042, MIT, Sept. 2009.Google ScholarGoogle Scholar
  15. C. Lattner and V. Adve. LLVM: A Compilation Framework for Lifelong Program Analysis & Transformation. In CGO'04. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. D. Le Gall. MPEG: A video compression standard for multimedia applications. CACM, Apr. 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. S. Misailovic, D. Kim, and M. Rinard. Automatic Parallelization with Automatic Accuracy Bounds. Technical Report MIT-CSAIL-TR-2010-007, 2010.Google ScholarGoogle Scholar
  18. H. Nguyen and M. Rinard. Detecting and eliminating memory leaks using cyclic memory allocation. In ISMM '07. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. G. Pennington and R. Watson. jProf - a JVMPI based profiler, 2000.Google ScholarGoogle Scholar
  20. J. Perkins, S. Kim, S. Larsen, S. Amarasinghe, J. Bachrach, M. Carbin, C. Pacheco, F. Sherwood, S. Sidiroglou, G. Sullivan, W. Wong, Y. Zibin, M. Ernst, and M. Rinard. Automatically patching errors in deployed software. In SOSP '09. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. M. Rinard. Probabilistic accuracy bounds for fault-tolerant computations that discard tasks. In ICS '06. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. M. Rinard. Using early phase termination to eliminate load imbalancess at barrier synchronization points. In OOPSLA '07. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. M. Rinard, C. Cadar, D. Dumitran, D. M. Roy, T. Leu, and J. William S. Beebee. Enhancing Server Availability and Security Through Failure-Oblivious Computing. In OSDI '04. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. S. Sidiroglou, O. Laadan, C. Perez, N. Viennot, J. Nieh, and A. D. Keromytis. Assure: automatic software self-healing using rescue points. In ASPLOS '09. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. S. Sidiroglou, M. E. Locasto, S. W. Boyd, and A. D. Keromytis. Building a reactive immune system for software services. In USENIX '05. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. D. Viswanathan and S. Liang. Java virtual machine profiler interface. IBM Systems Journal, 39(1), 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library

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
  • Published in

    cover image ACM Conferences
    ICSE '10: Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1
    May 2010
    627 pages
    ISBN:9781605587196
    DOI:10.1145/1806799

    Copyright © 2010 ACM

    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    • Published: 1 May 2010

    Permissions

    Request permissions about this article.

    Request Permissions

    Check for updates

    Qualifiers

    • research-article

    Acceptance Rates

    Overall Acceptance Rate276of1,856submissions,15%

    Upcoming Conference

    ICSE 2025

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader