Generating Synthetic Workloads Using Iterative Distillation Zachary Kurmas – Georgia Tech Kimberly Keeton – HP Labs Kenneth Mackenzie – Reservoir Labs.

Slides:



Advertisements
Similar presentations
MINERVA: an automated resource provisioning tool for large-scale storage systems G. Alvarez, E. Borowsky, S. Go, T. Romer, R. Becker-Szendy, R. Golding,
Advertisements

Fast Algorithms For Hierarchical Range Histogram Constructions
Cloud Computing Resource provisioning Keke Chen. Outline  For Web applications statistical Learning and automatic control for datacenters  For data.
Fingerprint Minutiae Matching Algorithm using Distance Histogram of Neighborhood Presented By: Neeraj Sharma M.S. student, Dongseo University, Pusan South.
Yoshiharu Ishikawa (Nagoya University) Yoji Machida (University of Tsukuba) Hiroyuki Kitagawa (University of Tsukuba) A Dynamic Mobility Histogram Construction.
Autocorrelation and Linkage Cause Bias in Evaluation of Relational Learners David Jensen and Jennifer Neville.
Adapted from Menascé & Almeida.1 Workload Characterization for the Web.
Synthesizing Representative I/O Workloads for TPC-H J. Zhang*, A. Sivasubramaniam*, H. Franke, N. Gautam*, Y. Zhang, S. Nagar * Pennsylvania State University.
1 Thesis Proposal Zachary Kurmas (v4.0– 24 April 03)
Mutual Information Mathematical Biology Seminar
Storage system designs must be evaluated with respect to many workloads New Disk Array Performance (CDF of latency) seconds % I/Os seconds % I/Os seconds.
OS Fall ’ 02 Performance Evaluation Operating Systems Fall 2002.
Memory Management.
Reverse Hashing for Sketch Based Change Detection in High Speed Networks Ashish Gupta Elliot Parsons with Robert Schweller, Theory Group Advisor: Yan Chen.
Performance Evaluation
1 Improving Hash Join Performance through Prefetching _________________________________________________By SHIMIN CHEN Intel Research Pittsburgh ANASTASSIA.
Distillation of Performance- Related Characteristics
Michael Ernst, page 1 Improving Test Suites via Operational Abstraction Michael Ernst MIT Lab for Computer Science Joint.
Parallel Computation in Biological Sequence Analysis Xue Wu CMSC 838 Presentation.
The Calibration Process
OS Fall ’ 02 Performance Evaluation Operating Systems Fall 2002.
Failure Avoidance through Fault Prediction Based on Synthetic Transactions Mohammed Shatnawi 1, 2 Matei Ripeanu 2 1 – Microsoft Online Ads, Microsoft Corporation.
Basics of Operating Systems March 4, 2001 Adapted from Operating Systems Lecture Notes, Copyright 1997 Martin C. Rinard.
Computer System Lifecycle Chapter 1. Introduction Computer System users, administrators, and designers are all interested in performance evaluation. Whether.
Determining the Significance of Item Order In Randomized Problem Sets Zachary A. Pardos, Neil T. Heffernan Worcester Polytechnic Institute Department of.
Toolbox for Dimensioning Windows Storage Systems Jalil Boukhobza, Claude Timsit 12/09/2006 Versailles Saint Quentin University.
Genetic Algorithm.
© 2006 IBM Corporation Adaptive Self-Tuning Memory in DB2 Adam Storm, Christian Garcia-Arellano, Sam Lightstone – IBM Toronto Lab Yixin Diao, M. Surendra.
1 Validation & Verification Chapter VALIDATION & VERIFICATION Very Difficult Very Important Conceptually distinct, but performed simultaneously.
Exploiting Flash for Energy Efficient Disk Arrays Shimin Chen (Intel Labs) Panos K. Chrysanthis (University of Pittsburgh) Alexandros Labrinidis (University.
WEKA - Explorer (sumber: WEKA Explorer user Guide for Version 3-5-5)
1 Software Testing and Quality Assurance Lecture 33 – Software Quality Assurance.
Using the Small-World Model to Improve Freenet Performance Hui Zhang Ashish Goel Ramesh Govindan USC.
« Performance of Compressed Inverted List Caching in Search Engines » Proceedings of the International World Wide Web Conference Commitee, Beijing 2008)
Chapter 3 System Performance and Models. 2 Systems and Models The concept of modeling in the study of the dynamic behavior of simple system is be able.
An I/O Simulator for Windows Systems Jalil Boukhobza, Claude Timsit 27/10/2004 Versailles Saint Quentin University laboratory.
10/10/2012ISC239 Isabelle Bichindaritz1 Physical Database Design.
ICOM 6115: Computer Systems Performance Measurement and Evaluation August 11, 2006.
Ó 1998 Menascé & Almeida. All Rights Reserved.1 Part V Workload Characterization for the Web (Book, chap. 6)
1 Evaluation of Cooperative Web Caching with Web Polygraph Ping Du and Jaspal Subhlok Department of Computer Science University of Houston presented at.
Deconstructing Storage Arrays Timothy E. Denehy, John Bent, Florentina I. Popovici, Andrea C. Arpaci-Dusseau, Remzi H. Arpaci-Dusseau University of Wisconsin,
© 2003, Carla Ellis Self-Scaling Benchmarks Peter Chen and David Patterson, A New Approach to I/O Performance Evaluation – Self-Scaling I/O Benchmarks,
21 June 2009Robust Feature Matching in 2.3μs1 Simon Taylor Edward Rosten Tom Drummond University of Cambridge.
1 Virtual Machine Memory Access Tracing With Hypervisor Exclusive Cache USENIX ‘07 Pin Lu & Kai Shen Department of Computer Science University of Rochester.
Lecture 40: Review Session #2 Reminders –Final exam, Thursday 3:10pm Sloan 150 –Course evaluation (Blue Course Evaluation) Access through.
RevDedup: A Reverse Deduplication Storage System Optimized for Reads to Latest Backups Chun-Ho Ng, Patrick P. C. Lee The Chinese University of Hong Kong.
Replicating Memory Behavior for Performance Skeletons Aditya Toomula PC-Doctor Inc. Reno, NV Jaspal Subhlok University of Houston Houston, TX By.
Tivoli Software © 2010 IBM Corporation 1 Using Machine Learning Techniques to Enhance The Performance of an Automatic Backup and Recovery System Amir Ronen,
Ó 1998 Menascé & Almeida. All Rights Reserved.1 Part V Workload Characterization for the Web.
Chapter 3 System Performance and Models Introduction A system is the part of the real world under study. Composed of a set of entities interacting.
Time Parallel Simulations I Problem-Specific Approach to Create Massively Parallel Simulations.
Buffer-pool aware Query Optimization Ravishankar Ramamurthy David DeWitt University of Wisconsin, Madison.
Parallel and Distributed Simulation Time Parallel Simulation.
Performance and Energy Efficiency Evaluation of Big Data Systems Presented by Yingjie Shi Institute of Computing Technology, CAS
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
ApproxHadoop Bringing Approximations to MapReduce Frameworks
1 Exploiting Nonstationarity for Performance Prediction Christopher Stewart (University of Rochester) Terence Kelly and Alex Zhang (HP Labs)
Data Mining and Decision Support
On Using SIFT Descriptors for Image Parameter Evaluation Authors: Patrick M. McInerney 1, Juan M. Banda 1, and Rafal A. Angryk 2 1 Montana State University,
Quantifying and Controlling Impact of Interference at Shared Caches and Main Memory Lavanya Subramanian, Vivek Seshadri, Arnab Ghosh, Samira Khan, Onur.
1 Evaluation of Cooperative Web Caching with Web Polygraph Ping Du and Jaspal Subhlok Department of Computer Science University of Houston presented at.
1 Management Information Systems M Agung Ali Fikri, SE. MM.
Methods of multivariate analysis Ing. Jozef Palkovič, PhD.
OPERATING SYSTEMS CS 3502 Fall 2017
The Composite-File File System: Decoupling the One-to-one Mapping of Files and Metadata for Better Performance Shuanglong Zhang, Helen Catanese, Andy An-I.
Predictive Performance
Reference-Driven Performance Anomaly Identification
Qingbo Zhu, Asim Shankar and Yuanyuan Zhou
Prophecy: Using History for High-Throughput Fault Tolerance
Srinivas Neginhal Anantharaman Kalyanaraman CprE 585: Survey Project
Presentation transcript:

Generating Synthetic Workloads Using Iterative Distillation Zachary Kurmas – Georgia Tech Kimberly Keeton – HP Labs Kenneth Mackenzie – Reservoir Labs

Storage system hardware / configuration decisions must be evaluated with respect to many workloads. New disk array Performance (CDF of latency) seconds % I/Os seconds % I/Os seconds % I/Os Database workload server workload File server workload Workloads Example Workloads beneficialdetrimental Changes may be beneficial to some users and detrimental to others.

Two sources for evaluation workloads Trace of real workloads List of I/O requests made by production workload LargeLarge InflexibleInflexible Difficult to obtain (due to security concerns)Difficult to obtain (due to security concerns) Perfectly accuratePerfectly accurate Synthetic workloads Randomly generated to maintain high-level properties Compact representationCompact representation Easily modifiedEasily modified Compact representation contains no specific dataCompact representation contains no specific data Rarely accurateRarely accurate

Production Workload (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321,131) (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321,131) (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321,131)... Synthetic Workload (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321,131) (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321,131) (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321,131)... Mean Request Size: 8Kb Mean interarrival Time:.04ms Read Percentage: 78% Location Distribution: (.01,.02,.0,.09,.14,.03,.12,… … Attribute-values Goal: Make production and synthetic workloads interchangeable $64,000 question: What goes in here?

Related work Literature contains many attributes and synthesis techniques 1.Entropy / “fractalness” (Wang et. al) 2.Entropy and locality (PQRS) (Wang et. al) 3.Clustering (Hong and Madhyastha) 4.LRU stack distance (several sources)

Solution: The Distiller Input: – Workload trace – List of candidate attributes Output: Attributes that specify synthetic workload Features: – Automatic: Requires little or no human intervention – Helps direct search for new attributes when necessary

High level (iterative) approach Within threshold? No Yes Done Evaluate resulting synthetic workload Choose additional attribute Add new attribute to list Initial attribute list Library of attributes Attribute-value List CDF of Response Time Initial attribute list Evaluate resulting synthetic workload Within threshold? Choose additional attribute Add new attribute to list

Example execution Workload – Trace of OpenMail server – 19,769 I/Os over 900 seconds (22 per second) – Throughput 164 KB/s Disk Array – HP FC-60 – 30 disks (18 GB each) 500GB total – 256 MB NVRAM write-back cache

Initial attributes Block-level I/O workload comprises I/O requests. Each request has four parameters. Initial attributes: observed distribution of each parameter. – Implicit dists. Inaccurate Open workload model (R,1024,42912,10) (W,8192,12493,12) (W,2048,20938,15) (R,2048,43943,22) (W8192,98238,23) (W8192,76232,24) R/WSizeLocationTime Within Threshold? No Yes Done Evaluate Synthetic Workload Choose additional Attribute Add new attribute to List Initial Attribute List Library of Attributes bytessectorsms

Production Workload (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321,131) (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321,131) (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321,131)... Synthetic Workload (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321,131) (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321,131) (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321,131)... Mean Request Size: 8Kb Mean interarrival Time:.04ms Read Percentage: 78% Location Distribution: (.01,.02,.0,.09,.14,.03,.12,… … CDF of response time latency Similarity quantified using RMS of horizontal distance Attribute-values Evaluate synthetic workload Within Threshold? No Yes Done Evaluate Synthetic Workload Choose additional Attribute Add new attribute to List Initial Attribute List Library of Attributes

Initial State % of I/Os RMS Error: 65% Note log scale on x axis Within Threshold? No Yes Done Evaluate Synthetic Workload Choose additional Attribute Add new attribute to List Initial Attribute List Library of Attributes

Can measure any disk array behavior – Power consumption – Cache hit ratio Can use any comparison metric – Root-mean-square – Mean response time – Area between curves – Area between curves on log scale I ndependent of evaluation method Within Threshold? No Yes Done Evaluate Synthetic Workload Choose additional Attribute Add new attribute to List Initial Attribute List Library of Attributes

How to choose attribute? Problem – Many attributes not useful – Some attributes redundant or incompatible – Testing every attribute slow Solution – Partition attributes into groups – Estimate benefit of entire group – Choose attribute from most promising group Within threshold? No Yes Done Evaluate synthetic workload Choose additional attribute Add new attribute to list Initial attribute list Library of attributes Choose attribute group Within Threshold? No Yes Done Evaluate Synthetic Workload Choose additional Attribute Add new attribute to List Initial Attribute List Library of Attributes Choose attribute group

Attribute groups Arrival Time Distribution of interarrival time Markov model of interarrival time Clustering Location Arrival Time Size Op. Type Location, Op. Type Dist. of read locations Dist. of write locations Joint Dist. Op Type Read Pct  Markov model Op Type, Arrival Time Op Type, Arrival Time, Req. Size Location Dist. of location LRU stack distance Jump Distance Run Count Request Size Dist. of request size Markov model Location, Request Size Joint Dist. Req. size conditioned upon chosen location Request Size, Arrival Time Within Threshold? No Yes Done Evaluate Synthetic Workload Choose additional Attribute Add new attribute to List Initial Attribute List Library of Attributes Choose attribute group

Key ideas 1.Attributes within the same group describe similar relationships 1.Arrival time  Burstiness 2.Location  Locality 3.{Arrival time, Location}  relationship between locality and burstiness 2.We can test effects of a relationship by “subtracting” it from target workload. Within Threshold? No Yes Done Evaluate Synthetic Workload Choose additional Attribute Add new attribute to List Initial Attribute List Library of Attributes Choose attribute group

Difference in performance is estimate of effect of location attributes (W, 1024,,.111 ) (R, 8192,,.126 ) (R, 8192, ,.127 ) (W, 2048, ,.131 ) (W, 1024, ,.137 ) (R, 8192, ,.143 ) (R, 8192, ,.144 ) Workloads maintain same relationships except location Permuting the locations destroys all relationships involving location (W, 1024, ,.111 ) (R, 8192, ,.126 ) (R, 8192, ,.127 ) (W, 2048, ,.131 ) (W, 1024, ,.137 ) (R, 8192, ,.143 ) (R, 8192, ,.144 ) , , , , , , , Subtractive method Rotating locations breaks only relationships between location and other parameters Within Threshold? No Yes Done Evaluate Synthetic Workload Choose additional Attribute Add new attribute to List Initial Attribute List Library of Attributes Choose attribute group , , , , , , , , , , , , , , , , , , , , ,

Subtractive method % of I/Os RMS difference for location: 15% RMS difference for request size: 8% Within Threshold? No Yes Done Evaluate Synthetic Workload Choose additional Attribute Add new attribute to List Initial Attribute List Library of Attributes Choose attribute group

Evaluate individual attribute Within Threshold? No Yes Done Evaluate Synthetic Workload Choose additional Attribute Add new attribute to List Initial Attribute List Library of Attributes Choose attribute group (W, 1024, ,.111 ) (R, 8192, ,.126 ) (R, 8192, ,.127 ) (W, 2048, ,.131 ) (W, 1024, ,.137 ) (R, 8192, ,.143 ) (R, 8192, ,.144 ) Compare with “rotated” workload because relationships with other parameters still broken , , , , , , , (W, 1024,,.111 ) (R, 8192,,.126 ) (R, 8192, ,.127 ) (W, 2048, ,.131 ) (W, 1024, ,.137 ) (R, 8192, ,.143 ) (R, 8192, ,.144 ) , , , , , , , Location generated by attribute that measures runs. (Runs preserved, other locs random.) To test specific location attribute, generate synthetic workload using that attribute, and compare it to “rotated” location workload.

Improved location % of I/Os RMS Error: 6% Markov model of location produces representative sequence of locations Within Threshold? No Yes Done Evaluate Synthetic Workload Choose additional Attribute Add new attribute to List Initial Attribute List Library of Attributes Choose attribute group

Final result % of I/Os Within Threshold? No Yes Done Evaluate Synthetic Workload Choose additional Attribute Add new attribute to List Initial Attribute List Library of Attributes Choose attribute group

Experiments Used Distiller to find synthetic versions of: – OpenMail: (10% error) – TPC-C: (8% error) – TPC-H: (12% error) – artificial workloads: (2% to 12% error) Artificial workloads used to – “stress test” the Distiller – Test Distiller apart from its library

Future work Test synthetic workloads against real design decisions (e.g. prefetch length) Evaluate different methods for selecting specific attributes (e.g. first-fit vs. best-fit) Evaluate tradeoff between size of synthetic workload descriptions and accuracy of resulting synthetic workload Incorporate closed workload model – Evaluate from application perspective Automatically develop new attributes – Genetic and/or data mining techniques

Conclusions Distiller is able to specify accurate synthetic workloads – Needs little human intervention – Provides framework for new attributes – Helps direct development of new attributes Zack Kurmas

End Of Talk

To Note: Anything that is not clear Any time I belabor a point – i.e. If you start thinking “move on already”, make a note of it. Anytime I talk about an issue that is perfectly obvious, or completely irrelevant. – i.e. If you get bored, make a note of where.

Production Workload (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321,131) (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321,131) (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321,131)... Synthetic Workload (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321,131) (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321,131) (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321,131)... Goal: Make production workload trace and Specific Goal: Both workloads have similar response times General Goal: Both workloads should lead to similar design decisions synthetic workload interchangeable Best of both worlds

Iterative approach (version 2) (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321, Production Workload Attribute-value List Synthetic Workload (R,1024,120932,124) (W,8192,120834,126) (W,8192,120844,127) (R,2048,334321, CDF of Response Time

Initial attributes (old) All parameter values drawn independently at random from observed distribution 1.Read / write percentage 2.Observed distribution of request size 3.Observed distribution of location 4.Observed distribution of interarrival time Observed distributions are as simple as possible without using implicit distributions – Experience shows implicit distributions are incorrect – It doesn’t take that may bits to do it correctly Within Threshold? No Yes Done Evaluate Synthetic Workload Choose additional Attribute Add new attribute to List Initial Attribute List Library of Attributes

Attribute groups Attributes measure one or more parameters – Mean Request Size Request Size – Distribution of LocationLocation – BurstinessInterarrival Time – Request Size – Read/Write Attributes grouped by parameter(s) measured – Location = {mean location, distribution of location, locality, mean jump distance *, mean run length *,...} – Arrival Time = {mean interarrival time, Markov model of interarrival time, Hurst parameter, etc. } Distribution of Read Size Within Threshold? No Yes Done Evaluate Synthetic Workload Choose additional Attribute Add new attribute to List Initial Attribute List Library of Attributes Choose attribute group

Improved synthetic workload Improvement small, but in proportion to total location error. % of I/Os

Subtractive method – iteration 2 Only location and operation type have important inter- parameter relationships % of I/Os

Test relationship between location and op. type % of I/Os Differences similar to differences between target and initial synthetic workloads

(Op Size Location Time) (W, 1024, ,.111 ) (R, 8192, ,.126 ) (R, 8192, ,.127 ) (W, 2048, ,.131 ) (W, 1024, ,.137 ) (R, 8192, ,.143 ) (R, 8192, ,.144 ) Patterns between locations may produce locality Patterns between arrival times may produce burstiness Patterns between location and arrival time may offset burstiness Key observations 1.Workload performance determined by 1.Relationships between different requests 2.relationships between a single request’s parameters 2.Attributes within the same group describe similar relationships 3.We can test effects of a relationship by “subtracting” it from target workload. Within Threshold? No Yes Done Evaluate Synthetic Workload Choose additional Attribute Add new attribute to List Initial Attribute List Library of Attributes Choose attribute group

Contributions – More workloads available to storage researchers ŸCompanies more likely to release synthetic workloads. ŸSynthetic workloads may allow for hypothetical studies – Framework for new attributes / generation techniques