The Explicit Incorporation of Variance in the Performance
Total Page:16
File Type:pdf, Size:1020Kb
THE EXPLICIT INCORPORATION OF VARIANCE IN THE PERFORMANCE MODELING OF SCHEDULING ALGORITHMS IN DISTRIBUTED AND SOFT REAL-TIME SYSTEMS By Nathan Hamm Dissertation Submitted to the Faculty of the Graduate School of Vanderbilt University in partial fulfillment of the requirements for the degree of DOCTOR OF PHILOSOPHY in Computer Science May, 2011 Nashville, Tennessee Approved: Professor Larry Dowdy Professor J. Michael Fitzpatrick Professor Aniruddha Gokhale Professor Mark McDonald Professor Jeremy Spinrad Copyright © 2011 by Larry Nathan Hamm All Rights Reserved To my beloved grandmother, Jewell, always in my heart iii ACKNOWLEDGMENTS I want to thank my mother, Sarah, for her love, encouragement, and understanding throughout my dissertation research. Her emotional and financial support has been essential. I especially want to thank my loving wife, Deana, for her continuous encouragement and understanding, for the many personal sacrifices she made, and for being infinitely supportive during difficult times in both of our lives. I sincerely thank my mentor, Dr. Larry Dowdy, for his continuous motivation, encouragement, insight, and fortitude, all of which have been instrumental in the completion of my dissertation. Dr. Dowdy is wise far beyond his years and he has taught me as much about life and people, as academics and research. I am honored to have studied under the guidance and leadership of such an exceptional character. I am forever grateful for his guidance, inspiration, patience, and support. I thank Dr. Michael Fitzpatrick for our many enlightening and entertaining conversations over the years, as well as his interest and support in allowing me to help instruct his classes and teach summer courses. I thank my committee members, Larry Dowdy, Michael Fitzpatrick, Andy Gokhale, Mark McDonald, and Jerry Spinrad, for their help, insight, and support. My dissertation has improved as a direct result of their valuable feedback. Also, this work would not have been possible without the generous financial support of Vanderbilt University. A portion of this work was funded by a grant from Acxiom Corporation. iv TABLE OF CONTENTS Page DEDICATION................................................................................................................... iii ACKNOWLEDGMENTS ................................................................................................. iv LIST OF TABLES.............................................................................................................. x LIST OF FIGURES .......................................................................................................... xii Chapter I. INTRODUCTION 1.1 Introduction..................................................................................................1 1.2 The Importance of Variance ........................................................................2 1.3 Motivation for Research ..............................................................................3 1.4 Thesis Statement ..........................................................................................4 1.5 Research Overview ......................................................................................5 1.6 Research Contributions................................................................................7 1.7 Organization.................................................................................................9 II. RELATED WORK 2.1 Performance Modeling Using Petri Nets ...................................................11 2.1.1 Petri Net Definition........................................................................12 2.1.2 Basic Modeling Principles .............................................................15 2.1.3 Petri Net Extensions.......................................................................17 2.1.4 Colored Petri Nets..........................................................................24 2.1.5 CPN Tools......................................................................................27 2.1.6 Analyzing Petri Nets......................................................................32 2.1.7 Modeling Example.........................................................................35 2.1.8 Summary of Petri Net Modeling....................................................41 2.2 Performance Modeling in Real-Time Systems..........................................42 2.2.1 Real-Time Scheduling ...................................................................44 2.2.2 Static Priority Scheduling ..............................................................44 v 2.2.3 Dynamic Priority Scheduling.........................................................46 2.2.4 Other Scheduling Techniques........................................................49 2.2.5 Scheduling in Soft Real-Time Systems .........................................50 2.2.6 Summary of Real-Time Scheduling...............................................51 2.3 The Method of Stages ................................................................................52 2.3.1 Stage-Type Distributions...............................................................53 2.3.2 Common Stage-Type Distributions ...............................................55 2.3.3 The Coxian Distribution ................................................................59 2.3.4 Advantage of Stage-Type Distributions.........................................61 2.3.5 Matching Higher Moments............................................................62 2.3.6 Modeling Technique ......................................................................63 2.3.7 Workload Representation...............................................................65 2.3.8 State-Space Representation............................................................67 2.3.9 Summary of the Method of Stages.................................................75 2.4 Chapter Summary......................................................................................76 2.5 Research Contributions..............................................................................77 III. PERFORMANCE MODELING OF AN ENTERPRISE GRID ENVIRONMENT USING COLORED PETRI NETS 3.1 Introduction................................................................................................78 3.2 System Overview and Data Analysis.........................................................81 3.3 Workload Characterization........................................................................83 3.4 Metrics of Interest......................................................................................85 3.5 Petri Net Model..........................................................................................87 3.5.1 Parameterization ............................................................................90 3.5.2 Calibration......................................................................................92 3.5.3 Validation.......................................................................................94 3.6 Capacity-Planning Scenarios.....................................................................96 3.7 Chapter Summary....................................................................................101 3.8 Research Contributions............................................................................101 IV. A SIMULATION TOOL FOR MODELING VARIANCE IN SOFT REAL-TIME SYSTEMS 4.1 Introduction..............................................................................................103 4.2 Motivating Example.................................................................................105 vi 4.3 Method of Stages Simulator.....................................................................108 4.4 Configuration Information.......................................................................110 4.4.1 Task Stream Configuration..........................................................113 4.4.2 Scheduler Configuration ..............................................................115 4.4.3 Simulator Configuration..............................................................117 4.5 Running a Simulation ..............................................................................118 4.6 Examining Output Files...........................................................................121 4.7 Discussion................................................................................................124 4.8 Simulator Validation................................................................................128 4.9 Chapter Summary....................................................................................129 4.10 Research Contributions............................................................................130 V. MODELING AND SIMULATION OF VARIANCE 5.1 Introduction..............................................................................................131 5.2 Choosing a Modeling Technique.............................................................131 5.3 Modeling and Simulation Framework .....................................................133 5.3.1 Sensitivity Analysis Experiments ................................................134 5.3.2 Variability-Based Guidelines for Scheduling ..............................139 5.3.3 Improved State-Based Scheduling Algorithms............................142 5.4 Prototype of the Next Version of MOSS .................................................145 5.4.1 Main Dialog Window ..................................................................146