skip to main content
10.1145/2568088.2568104acmconferencesArticle/Chapter ViewAbstractPublication PagesicpeConference Proceedingsconference-collections
research-article

Agile middleware for scheduling: meeting competing performance requirements of diverse tasks

Published: 22 March 2014 Publication History

Abstract

As the need for scaled-out systems increases, it is paramount to architect them as large distributed systems consisting of off-the-shelf basic computing components known as compute or data nodes. These nodes are expected to handle their work independently, and often utilize off-the-shelf management tools, like those offered by Linux, to differentiate priorities of tasks. While prioritization of background tasks in server nodes takes center stage in scaled-out systems, with many tasks associated with salient features such as eventual consistency, data analytics, and garbage collection, the standard Linux tools such as nice and ionice fail to adapt to the dynamic behavior of high priority tasks in order to achieve the best trade-off between protecting the performance of high priority workload and completing as much low priority work as possible. In this paper, we provide a solution by proposing a priority scheduling middleware that employs different policies to schedule background tasks based on the instantaneous resource requirements of the high priority applications running on the server node. The selection of policies is based on off-line and on-line learning of the high priority workload characteristics and the imposed performance impact due to low priority work. In effect, this middleware uses a {\em hybrid} approach to scheduling rather than a monolithic policy. We prototype and evaluate it via measurements on a test-bed and show that this scheduling middleware is robust as it effectively and autonomically changes the relative priorities between high and low priority tasks, consistently meeting their competing performance targets.

References

[1]
TPC-W. http://www.tpc.org/tpcw/.
[2]
The open compute project. http://www.opencompute.org/, 2011.
[3]
Y. Abe, H. Yamada, and K. Kono. Enforcing appropriate process execution for exploiting idle resources from outside operating systems. In EuroSys, pages 27--40, 2008.
[4]
T. Bezenek, T. Cain, R. Dickson, T. Heil, M. Martin, C. McCurdy, R. Rajwar, E. Weglarz, C. Zilles, and M. Lipasti. Java tpc-w implementation distribution. http://pharm/ece.wisc.edu/tpcw.shtml, 2011.
[5]
E. Cecchet, A. Ch, S. Elnikety, J. Marguerite, and W. Zwaenepoel. A comparison of software architectures for e-business applications. Technical report, In Proc. of 4th Middleware Conference, Rio de, 2002.
[6]
A. K. Coskun, R. D. Strong, D. M. Tullsen, T. S. Rosing, and T. S. Rosing. Evaluating the impact of job scheduling and power management on processor lifetime for chip multiprocessors. In SIGMETRICS/Performance, pages 169--180, 2009.
[7]
T. Cucinotta, F. Checconi, L. Abeni, L. Palopoli, and L. Palopoli. Self-tuning schedulers for legacy real-time applications. In EuroSys, pages 55--68, 2010.
[8]
J. R. Douceur, W. J. Bolosky, and W. J. Bolosky. Progress-based regulation of low-importance processes. In SOSP, pages 247--260, 1999.
[9]
A. D. Ferguson, P. Bodak, S. Kandula, E. Boutin, R. Fonseca, and R. Fonseca. Jockey: guaranteed job latency in data parallel clusters. In EuroSys, pages 99--112, 2012.
[10]
M. Isard, V. Prabhakaran, J. Currey, U. Wieder, K. Talwar, A. Goldberg, and A. Goldberg. Quincy: fair scheduling for distributed computing clusters. In SOSP, pages 261--276, 2009.
[11]
C. Krasic, M. Saubhasik, A. Sinha, and A. Goel. Fair and timely scheduling via cooperative polling. In EuroSys, pages 103--116, 2009.
[12]
S.-H. Lim, J.-S. Huh, Y. Kim, G. M. Shipman, C. R. Das, and C. R. Das. D-factor: a quantitative model of application slow-down in multi-resource shared systems. In SIGMETRICS, pages 271--282, 2012.
[13]
J. N. Matthews, W. Hu, M. Hapuarachchi, T. Deshane, D. Dimatos, G. Hamilton, M. McCabe, and J. Owens. Quantifying the performance isolation properties of virtualization systems. In Experimental Computer Science, page 6, 2007.
[14]
J. Meehean, A. Arpaci-Dusseau, R. Arpaci-Dusseau, and M. Livny. CPU Futures: Scheduler support for application management of cpu contention. Technical Report at: http://research.cs.wisc.edu/techreports/2010/TR1684.pdf, 2011.
[15]
C. W. Mercer, S. Savage, and H. Tokuda. Processor capacity reserves: Operating system support for multimedia applications. In ICMCS, pages 90--99, 1994.
[16]
N. Mi, A. Riska, X. Li, E. Smirni, and E. Riedel. Restrained utilization of idleness for transparent scheduling of background tasks. In Proceedings of the Eleventh International Joint Conference on Measurement and Modeling of Computer Systems, SIGMETRICS/Performance, pages 205--216, 2009.
[17]
J. Nieh and M. S. Lam. A smart scheduler for multimedia applications. pages 117--163, 2003.
[18]
P. Padala, K.-Y. Hou, K. G. Shin, X. Zhu, M. Uysal, Z. Wang, S. Singhal, and A. Merchant. Automated control of multiple virtualized resources. In EuroSys, pages 13--26, 2009.
[19]
L. Sha, T. F. Abdelzaher, K.-E. AErzAln, A. Cervin, T. P. Baker, A. Burns, G. C. Buttazzo, M. Caccamo, J. P. Lehoczky, and A. K. Mok. Real time scheduling theory: A historical perspective. pages 101--155, 2004.
[20]
M. Stonebraker. The case for shared nothing. IEEE Database Eng. Bull., 9(1):4--9, 1986.
[21]
E. Thereska, A. Donnelly, D. Narayanan, and D. Narayanan. Sierra: practical power-proportionality for data center storage. In EuroSys, pages 169--182, 2011.
[22]
Q. Wang, Y. Kanemasa, M. Kawaba, and C. Pu. When average is not average: large response time fluctuations in n-tier systems. In Proceedings of the 9th international conference on Autonomic computing, ICAC '12, pages 33--42, New York, NY, USA, 2012. ACM.
[23]
F. Yan, S. Hughes, A. Riska, and E. Smirni. Overcoming limitations of off-the-shelf priority schedulers in dynamic environments. In Proceedings of the 21st International Symposium on Modeling, Analysis, and Simulation On Computer and Telecommunication Systems, MASCOTS 13, 2013.
[24]
F. Yan, A. Riska, and E. Smirni. Fast eventual consistency with performance guarantees for distributed storage. In ICDCS Workshops, pages 23--28, 2012.
[25]
M. Zaharia, D. Borthakur, J. S. Sarma, K. Elmeleegy, S. Shenker, I. Stoica, and I. Stoica. Delay scheduling: a simple technique for achieving locality and fairness in cluster scheduling. In EuroSys, pages 265--278, 2010.
[26]
R. Zhang, T. Abdelzaher, and J. Stankovic. Kernel support for open qos-aware computing. In Real-Time and Embedded Technology and Applications Symposium, 2003. Proceedings. The 9th IEEE, pages 96--105, 2003.

Cited By

View all
  • (2020)BatchProceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis10.5555/3433701.3433792(1-15)Online publication date: 9-Nov-2020
  • (2020)BATCH: Machine Learning Inference Serving on Serverless Platforms with Adaptive BatchingSC20: International Conference for High Performance Computing, Networking, Storage and Analysis10.1109/SC41405.2020.00073(1-15)Online publication date: Nov-2020

Index Terms

  1. Agile middleware for scheduling: meeting competing performance requirements of diverse tasks

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    ICPE '14: Proceedings of the 5th ACM/SPEC international conference on Performance engineering
    March 2014
    310 pages
    ISBN:9781450327336
    DOI:10.1145/2568088
    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: 22 March 2014

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. background throughput
    2. decision map
    3. learning performance patterns
    4. linux priority utilities
    5. performance guarantee
    6. priority scheduling
    7. workload characterization

    Qualifiers

    • Research-article

    Funding Sources

    Conference

    ICPE'14
    Sponsor:

    Acceptance Rates

    ICPE '14 Paper Acceptance Rate 21 of 78 submissions, 27%;
    Overall Acceptance Rate 252 of 851 submissions, 30%

    Upcoming Conference

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

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

    Other Metrics

    Citations

    Cited By

    View all
    • (2020)BatchProceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis10.5555/3433701.3433792(1-15)Online publication date: 9-Nov-2020
    • (2020)BATCH: Machine Learning Inference Serving on Serverless Platforms with Adaptive BatchingSC20: International Conference for High Performance Computing, Networking, Storage and Analysis10.1109/SC41405.2020.00073(1-15)Online publication date: Nov-2020

    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