Quality of service profiling
Name
Rinard_Quality of service.pdf
Size
1.09 MB
Format
Adobe PDF
Checksum (MD5)
7764d309f09c6f5944b14271eadcf1bd
Author(s) • • •
Misailovic, Sasa
Sidiroglou, Stylianos
Hoffmann, Henry Christian
Rinard, Martin C.
Date Issued
May 2010
Journal
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering (ICSE '10)
Publisher
Association for Computing Machinery
Citation
Misailovic, Sasa et al. "Quality of service profiling." in Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering, ICSE ’10, May 2-8 2010, Cape Town, South Africa, ACM (2010).
Version
Author's final manuscript
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.
MIT Department
Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
Terms of Use
Creative Commons Attribution-Noncommercial-Share Alike 3.0
Persistent DSpace Link
DOI of Published Version
https://doi.org/10.1145/1806799.1806808