Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/1736020.1736034acmconferencesArticle/Chapter ViewAbstractPublication PagesasplosConference Proceedingsconference-collections
research-article

Request behavior variations

Published: 13 March 2010 Publication History

Abstract

A large number of user requests execute (often concurrently) within a server system. A single request may exhibit fluctuating hardware characteristics (such as instruction completion rate and on-chip resource usage) over the course of its execution, due to inherent variations in application execution semantics as well as dynamic resource competition on resource-sharing processors like multicores. Understanding such behavior variations can assist fine-grained request modeling and adaptive resource management.
This paper presents operating system management to track request behavior variations online. In addition to metric sample collection during periodic interrupts, we exploit the frequent system calls in server applications to perform low-cost in-kernel sampling. We utilize identified behavior variations to support or enhance request modeling in request classification, anomaly analysis, and online request signature construction. A foundation of our request modeling is the ability to quantify the difference between two requests' time series behaviors. We evaluate several differencing measures and enhance the classic dynamic time warping technique with additional penalties for asynchronous warp steps. Finally, motivated by fluctuating request resource usage and the resulting contention, we implement contention-easing CPU scheduling on multicore platforms and demonstrate its effectiveness in improving the worst-case request performance.
Experiments in this paper are based on five server applications -- Apache web server, TPCC, TPCH, RUBiS online auction benchmark, and a user-content-driven online teaching application called WeBWorK.

References

[1]
Intel 64 and IA-32 architectures software developer's manual volume 3B: System programming guide, part 2, table B-7. http://download.intel.com/design/processor/manuals/253669.pdf.
[2]
Moodle course management system. http://moodle.org/.
[3]
RUBiS: Rice University Bidding System. http://rubis.objectweb.org.
[4]
SPECweb99 benchmark. http://www.specbench.org/osg/web99.
[5]
TPC-C benchmark. http://www.tpc.org/tpcc.
[6]
TPC-H benchmark. http://www.tpc.org/tpch.
[7]
WeBWorK: Online homework for math and science. http://webwork.maa.org/moodle/.
[8]
J.M. Anderson, L.M. Berc, J. Dean, S. Ghemawat, M.R. Henzinger, S.A. Leung, R.L. Sites, M.T. Vandevoorde, C.A. Waldspurger, and W.E. Weihl. Continuous profiling: Where have all the cycles gone? ACM Trans. on Computer Systems, 15(4):357--390, November 1997.
[9]
M. Aron and P. Druschel. Soft timers: Efficient microsecond software timer support for network processing. ACM Trans. on Computer Systems, 18(3):197--228, August 2000.
[10]
P. Barham, A. Donnelly, R. Isaacs, and R. Mortier. Using Magpie for request extraction and workload modeling. In 6th USENIX Symp. on Operating Systems Design and Implementation, pages 259--272, San Francisco, CA, December 2004.
[11]
L.A. Barroso, K. Gharachorloo, and E. Bugnion. Memory system characterization of commercial workloads. In 25th Int'l Symp. on Computer Architecture, pages 3--14, Barcelona, Spain, July 1998.
[12]
A.P. Batson and A.W. Madison. Measurements of major locality phases in symbolic reference strings. In ACM SIGMETRICS, pages 75--84, Cambridge, MA, March 1976.
[13]
A.S. Dhodapkar and J.E. Smith. Managing multi-configuration hardware via dynamic working set analysis. In 29th Int'l Symp. on Computer Architecture, pages 233--244, Anchorage, AL, May 2002.
[14]
A. Fedorova, C. Small, D. Nussbaum, and M. Seltzer. Chip multithreading systems need a new operating system scheduler. In SIGOPS European Workshop, Leuven, Belgium, September 2004.
[15]
A. Fedorova, M. Seltzer, and M.D. Smith. Improving performance isolation on chip multiprocessors via an operating system scheduler. In 16th Int'l Conf. on Parallel Architecture and Compilation Techniques, pages 25--38, Brasov, Romania, September 2007.
[16]
M. Hauswirth, A. Diwan, P.F. Sweeney, and M.C. Mozer. Automating vertical profiling. In 20th ACM Conf. on Object-Oriented Programming, Systems, Languages, and Applications, pages 281--296, San Diego, CA, October 2005.
[17]
C. Isci and M. Martonosi. Phase characterization for power: Evaluating control-flow-based and event-counter-based techniques. In 12th Int'l Symp. on High-Performance Computer Architecture, pages 121--132, Austin, TX, February 2006.
[18]
L. Kaufman and P. J. Rousseeuw. Finding groups in data: An introduction to cluster analysis. Wiley, New York, 1990.
[19]
K. Keeton, D.A. Patterson, Y.Q. He, R.C. Raphael, and W.E. Baker. Performance characterization of a Quad Pentium Pro SMP using OLTP workloads. In 25th Int'l Symp. on Computer Architecture, pages 15--26, Barcelona, Spain, July 1998.
[20]
J.R. Larus and M. Parkes. Using cohort scheduling to enhance server performance. In USENIX Annual Technical Conf., Monterey, CA, June 2002.
[21]
V.I. Levenshtein. Binary codes capable of correcting deletions, insertions, and reversals. Soviet Physics Doklady, 10, 1966.
[22]
J. Lin, Q. Lu, X. Ding, Z. Zhang, X. Zhang, and P. Sadayappan. Gaining insights into multicore cache partitioning: Bridging the gap between simulation and real systems. In 14th Int'l Symp. on High-Performance Computer Architecture, Salt Lake City, UT, February 2008.
[23]
C. Myers, L.R. Rabiner, and A.E. Rosenberg. Performance tradeoffs in dynamic time warping algorithms for isolated word recognition. IEEE Trans. on Acoustics, Speech, and Signal Processing, 28(6):623--635, December 1980.
[24]
S. Parekh, S. Eggers, and H. Levy. Thread-sensitive scheduling for SMT processors. Technical report, Department of Computer Science and Engineering, University of Washington, May 2000.
[25]
H. Sakoe and S. Chiba. Dynamic programming optimization for spoken word recognition. IEEE Trans. on Acoustics, Speech, and Signal Processing, 26(1):43--49, February 1978.
[26]
K. Shen, H. Tang, T. Yang, and L. Chu. Integrated resource management for cluster-based internet services. In 5th USENIX Symp. on Operating Systems Design and Implementation, pages 225--238, Boston, MA, December 2002.
[27]
K. Shen, M. Zhong, S. Dwarkadas, C. Li, C. Stewart, and X. Zhang. Hardware counter driven on-the-fly request signatures. In 13th Int'l Conf. on Architectural Support for Programming Languages and Operating Systems, pages 189--200, Seattle, WA, March 2008.
[28]
K. Shen, C. Stewart, C. Li, and X. Li. Reference-driven performance anomaly identification. In ACM SIGMETRICS, pages 85--96, Seattle, WA, June 2009.
[29]
X. Shen, Y. Zhong, and C. Ding. Locality phase prediction. In 11th Int'l Conf. on Architectural Support for Programming Languages and Operating Systems, pages 165--176, Boston, MA, October 2004.
[30]
T. Sherwood, S. Sair, and B. Calder. Phase tracking and prediction. In 30th Int'l Symp. on Computer Architecture, pages 336--349, San Diego, CA, June 2003.
[31]
A. Snavely and D. Tullsen. Symbiotic job scheduling for a simultaneous multithreading processor. In 9th Int'l Conf. on Architectural Support for Programming Languages and Operating Systems, pages 234--244, Cambridge, MA, November 2000.
[32]
C. Stewart and K. Shen. Performance modeling and system management for multi-component online services. In Second USENIX Symp. on Networked Systems Design and Implementation, pages 71--84, Boston, MA, May 2005.
[33]
C. Stewart, M. Leventi, and K. Shen. Empirical examination of a collaborative web application. In IEEE Int'l Symp. on Workload Characterization, Seattle, WA, September 2008.
[34]
D. Tam, R. Azimi, L. Soares, and M. Stumm. Managing shared L2 caches on multicore systems in software. In Workshop on the Interaction between Operating Systems and Computer Architecture, San Diego, CA, June 2007.
[35]
B. Urgaonkar, P. Shenoy, and T. Roscoe. Resource overbooking and application profiling in shared hosting platforms. In 5th USENIX Symp. on Operating Systems Design and Implementation, pages 239--254, Boston, MA, December 2002.
[36]
R. von Behren, J. Condit, F. Zhou, G.C. Necula, and E. Brewer. Capriccio: Scalable threads for internet services. In 19th ACM Symp. on Operating Systems Principles, pages 268--281, Bolton Landing, NY, October 2003.
[37]
M. Welsh, D. Culler, and E. Brewer. SEDA: An architecture for wellconditioned, scalable internet services. In 18th ACM Symp. on Operating Systems Principles, pages 230--243, Banff, Canada, October 2001.
[38]
X. Zhang, S. Dwarkadas, G. Folkmanis, and K. Shen. Processor hardware counter statistics as a first-class system resource. In 11th Workshop on Hot Topics in Operating Systems, San Diego, CA, May 2007.
[39]
X. Zhang, S. Dwarkadas, and K. Shen. Towards practical page coloring-based multi-core cache management. In 4th European Systems Conf., pages 89--102, Nuremberg, Germany, April 2009.
[40]
X. Zhang, S. Dwarkadas, and K. Shen. Hardware execution throttling for multi-core resource management. In USENIX Annual Technical Conf., San Deigo, CA, June 2009.

Cited By

View all
  • (2017)Request-aware cooperative I/O scheduling for scale-out database applicationsProceedings of the 9th USENIX Conference on Hot Topics in Storage and File Systems10.5555/3154601.3154625(24-24)Online publication date: 10-Jul-2017
  • (2017)An Efficient Locality-Aware Task Assignment Algorithm for Minimizing Shared Cache Contention2017 18th International Conference on Parallel and Distributed Computing, Applications and Technologies (PDCAT)10.1109/PDCAT.2017.00017(44-51)Online publication date: Dec-2017
  • (2016)TreadmillACM SIGARCH Computer Architecture News10.1145/3007787.300118644:3(456-468)Online publication date: 18-Jun-2016
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ASPLOS XV: Proceedings of the fifteenth International Conference on Architectural support for programming languages and operating systems
March 2010
422 pages
ISBN:9781605588391
DOI:10.1145/1736020
  • General Chair:
  • James C. Hoe,
  • Program Chair:
  • Vikram S. Adve
  • cover image ACM SIGARCH Computer Architecture News
    ACM SIGARCH Computer Architecture News  Volume 38, Issue 1
    ASPLOS '10
    March 2010
    399 pages
    ISSN:0163-5964
    DOI:10.1145/1735970
    Issue’s Table of Contents
  • cover image ACM SIGPLAN Notices
    ACM SIGPLAN Notices  Volume 45, Issue 3
    ASPLOS '10
    March 2010
    399 pages
    ISSN:0362-1340
    EISSN:1558-1160
    DOI:10.1145/1735971
    Issue’s Table of Contents
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]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 13 March 2010

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. hardware counter
  2. multicore
  3. operating system adaptation
  4. request modeling
  5. server system

Qualifiers

  • Research-article

Conference

ASPLOS '10

Acceptance Rates

ASPLOS XV Paper Acceptance Rate 32 of 181 submissions, 18%;
Overall Acceptance Rate 535 of 2,713 submissions, 20%

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)13
  • Downloads (Last 6 weeks)1
Reflects downloads up to 05 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2017)Request-aware cooperative I/O scheduling for scale-out database applicationsProceedings of the 9th USENIX Conference on Hot Topics in Storage and File Systems10.5555/3154601.3154625(24-24)Online publication date: 10-Jul-2017
  • (2017)An Efficient Locality-Aware Task Assignment Algorithm for Minimizing Shared Cache Contention2017 18th International Conference on Parallel and Distributed Computing, Applications and Technologies (PDCAT)10.1109/PDCAT.2017.00017(44-51)Online publication date: Dec-2017
  • (2016)TreadmillACM SIGARCH Computer Architecture News10.1145/3007787.300118644:3(456-468)Online publication date: 18-Jun-2016
  • (2016)TreadmillProceedings of the 43rd International Symposium on Computer Architecture10.1109/ISCA.2016.47(456-468)Online publication date: 18-Jun-2016
  • (2015)Request-oriented durable write caching for application performanceProceedings of the 2015 USENIX Conference on Usenix Annual Technical Conference10.5555/2813767.2813782(193-206)Online publication date: 8-Jul-2015
  • (2014)Building and using application utility models to dynamically choose thread countsThe Journal of Supercomputing10.1007/s11227-014-1148-368:3(1184-1213)Online publication date: 1-Jun-2014
  • (2013)Power containersACM SIGPLAN Notices10.1145/2499368.245112448:4(65-76)Online publication date: 16-Mar-2013
  • (2013)Power containersACM SIGARCH Computer Architecture News10.1145/2490301.245112441:1(65-76)Online publication date: 16-Mar-2013
  • (2013)Power containersProceedings of the eighteenth international conference on Architectural support for programming languages and operating systems10.1145/2451116.2451124(65-76)Online publication date: 16-Mar-2013
  • (2012)FIOSProceedings of the 10th USENIX conference on File and Storage Technologies10.5555/2208461.2208474(13-13)Online publication date: 14-Feb-2012
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media