Constructing a Non-Linear Model with Neural Networks for Workload Characterization Richard M. Yoo Han Lee Kingsum Chow Hsien-Hsin S. Lee Georgia Tech Intel.

Slides:



Advertisements
Similar presentations
You have been given a mission and a code. Use the code to complete the mission and you will save the world from obliteration…
Advertisements

Variations of the Turing Machine
© Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems Introduction.
Chapter 1 The Study of Body Function Image PowerPoint
Cognitive Radio Communications and Networks: Principles and Practice By A. M. Wyglinski, M. Nekovee, Y. T. Hou (Elsevier, December 2009) 1 Chapter 12 Cross-Layer.
Towards Automating the Configuration of a Distributed Storage System Lauro B. Costa Matei Ripeanu {lauroc, NetSysLab University of British.
Technical University of Darmstadt J2EE Performance and Scalability – From Measuring to Predicting Samuel Kounev Databases and Distributed Systems Group,
and 6.855J Spanning Tree Algorithms. 2 The Greedy Algorithm in Action
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Title Subtitle.
1 1  1 =.
FACTORING ax2 + bx + c Think “unfoil” Work down, Show all steps.
Year 6 mental test 5 second questions
Multi-Layer Perceptron (MLP)
Visualization Techniques -
The Impact of Soft Resource Allocation on n-tier Application Scalability Qingyang Wang, Simon Malkowski, Yasuhiko Kanemasa, Deepal Jayasinghe, Pengcheng.
Solve Multi-step Equations
1 The tiling algorithm Learning in feedforward layered networks: the tiling algorithm writed by Marc M é zard and Jean-Pierre Nadal.
EE, NCKU Tien-Hao Chang (Darby Chang)
Turing Machines.
Web Performance Tuning Lin Wang, Ph.D. US Department of Education Copyright [Lin Wang] [2004]. This work is the intellectual property of the author. Permission.
PP Test Review Sections 6-1 to 6-6
ABC Technology Project
Mental Math Math Team Skills Test 20-Question Sample.
An Application of Linear Programming Lesson 12 The Transportation Model.
1 COPYRIGHT © 2011 ALCATEL-LUCENT. ALL RIGHTS RESERVED. On the Capacity of Wireless CSMA/CA Multihop Networks Rafael Laufer and Leonard Kleinrock Bell.
Outline Minimum Spanning Tree Maximal Flow Algorithm LP formulation 1.
Inven - Cost - 1Inventory Basic Valuation Methods.
1 Computation in neural networks M. Meeter. 2 Perceptron learning problem Input Patterns Desired output [+1, +1, -1, -1] [+1, -1, +1] [-1, -1, +1, +1]
VOORBLAD.
Hypothesis Tests: Two Independent Samples
Equations of Lines Equations of Lines
Copyright © 2012, Elsevier Inc. All rights Reserved. 1 Chapter 7 Modeling Structure with Blocks.
Constant, Linear and Non-Linear Constant, Linear and Non-Linear
1..
Beyond Linear Separability
© 2012 National Heart Foundation of Australia. Slide 2.
Lets play bingo!!. Calculate: MEAN Calculate: MEDIAN
Production and Cost Analysis: Part I
Sets Sets © 2005 Richard A. Medeiros next Patterns.
Backpropagation Learning Algorithm
1 Joseph Ghafari Artificial Neural Networks Botnet detection for Stéphane Sénécal, Emmanuel Herbert.
Benjamin Banneker Charter Academy of Technology Making AYP Benjamin Banneker Charter Academy of Technology Making AYP.
Doc.: IEEE /1234r0 Submission November 2009 Sameer Vermani, QualcommSlide 1 Interference Cancellation for Downlink MU-MIMO Date: Authors:
25 seconds left…...
Subtraction: Adding UP
Slippery Slope
Performance Tuning for Informer PRESENTER: Jason Vorenkamp| | October 11, 2010.
1 hi at no doifpi me be go we of at be do go hi if me no of pi we Inorder Traversal Inorder traversal. n Visit the left subtree. n Visit the node. n Visit.
Determining How Costs Behave
We will resume in: 25 Minutes.
©Brooks/Cole, 2001 Chapter 12 Derived Types-- Enumerated, Structure and Union.
Chapter 15: Quantitatve Methods in Health Care Management Yasar A. Ozcan 1 Chapter 15. Simulation.
Chapter 8 Estimation Understandable Statistics Ninth Edition
Computational Intelligence Winter Term 2011/12 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering (LS 11) Fakultät für Informatik TU Dortmund.
A SMALL TRUTH TO MAKE LIFE 100%
PSSA Preparation.
Mani Srivastava UCLA - EE Department Room: 6731-H Boelter Hall Tel: WWW: Copyright 2003.
Simple Linear Regression Analysis
Multiple Regression and Model Building
Tutorial 1: Sensitivity analysis of an analytical function
1 Volume measures and Rebasing of National Accounts Training Workshop on System of National Accounts for ECO Member Countries October 2012, Tehran,
Machine Learning Neural Networks
Artificial Neural Networks (ANN). Output Y is 1 if at least two of the three inputs are equal to 1.
Presentation transcript:

Constructing a Non-Linear Model with Neural Networks for Workload Characterization Richard M. Yoo Han Lee Kingsum Chow Hsien-Hsin S. Lee Georgia Tech Intel Corporation Georgia Tech

Yoo: Neural Network Modeling 2 Java Middleware Tuning Workload tuning workload configuration workload performance Finding the best workload configuration that brings about the best workload performance configuration parameters: things we have control over thread pool size, JVM heap size, injection rate, etc. performance indicators: workload behavior in response to configurations response time, throughput, etc. Java middleware tuning Inherently complicated due to its nonlinearity

Yoo: Neural Network Modeling 3 Nonlinear Workload Behavior linear linear The performance of a workload does not necessarily improve or degrade in a linear fashion in response to a linear adjustment in its configuration parameters Hard to predict the performance change with respect to configuration changes Lottery Sample data distribution from a case study

Yoo: Neural Network Modeling 4 Nonlinear Behavior in Java Middleware Dominant in Java middleware behavior due to its stacked execution environment Application Java Application Server Java Virtual Machine Operating System Hardware A stacked execution environment

Yoo: Neural Network Modeling 5 A Model Based Approach Regard the relation between the m configuration parameters and the n performance indicators as an m -> n nonlinear function Map the workload tuning problem to a nonlinear function approximation problem Workload f(x) Configuration Parameters X 1, X 2, …, X m Performance Indicators Y 1, Y 2, …, Y n

Yoo: Neural Network Modeling 6 Function Approximation with Neural Networks Artificial Neural Networks A network of many computational elements called perceptrons Weighted sum of inputs + nonlinear activation function Learn the input by adjusting the weights to minimize the prediction error for Y Depending on the structure and organization of perceptrons, many neural networks exist A typical structure of a perceptron

Yoo: Neural Network Modeling 7 Multi-Layer Perceptrons (MLPs) A stacked layer of multiple perceptrons A feed-forward network Output from previous layer feeds the next layer A 3-layer perceptron A perceptron X1X1 X2X2 XnXn Y1Y1 YmYm

Yoo: Neural Network Modeling 8 Training MLPs Backpropagation algorithm By far the most popular method (standard) Propagate the error of outer layer back to inner layer (blaming) Each layer calculates its local error that contributed to the outer layers error Adjust each layers weight to minimize the local error X1X1 X2X2 XnXn Y1Y1 YmYm A 3-layer perceptron Y1Y1 YmYm

Yoo: Neural Network Modeling 9 Reason for Choosing MLP Among many neural network configurations, MLPs excel in function approximation Can approximate any nonlinear function MLPs are widely used in function approximation and pattern classification area

Yoo: Neural Network Modeling 10 Training the Neural Network Neural networks are trained with samples Each sample is a tuple comprised of configuration parameter settings and the corresponding performance indicator values (X 1, X 2, …, X m, Y 1, Y 2, …, Y n ) Present each performance sample to the neural network multiple times X 1 Thread pool size X 2 JVM heap size Y 1 Response time f(x)

Yoo: Neural Network Modeling 11 X 1 Thread pool size X 2 JVM heap size Y 1 Response time Training the Neural Network When presented with each samples, based on the previous knowledge, neural network tries to predict the performance indicator Y 1, Y 2, …, Y n by observing given configuration settings X 1, X 2, …, X m f(x) ?

Yoo: Neural Network Modeling 12 Training the Neural Network learns At the same time, neural network learns the samples by minimizing the error between predicted performance values (Y 1, Y 2, …, Y n ) and the actual performance values (Y 1, Y 2, …, Y n ) X 1 Thread pool size X 2 JVM heap size Y 1 Response time f(x) ? error = 3

Yoo: Neural Network Modeling 13 X 1 Thread pool size X 2 JVM heap size Y 1 Response time Training the Neural Network Process repeats over the entire samples, multiple times Training stops when a desired minimum error bound is reached f(x) 10 ? 31 11?8? 12 9? 1 12 ? 0 10 ?

Yoo: Neural Network Modeling 14 Model Validation Model validity = predictability over unseen samples Quantify the model validity by prediction accuracy over unseen samples K-fold cross validation Guarantee that the sample set represents the entire sample space divide the samples into k sets; for (i in 1:k) { leave 1 set out; model.train( k – 1 sets); error[i] = model.error( 1 set that was left out); } average the error[];

Yoo: Neural Network Modeling 15 Summary of Model Construction 1. Collect performance samples with varying configurations 2. Train neural network with samples 3. Perform k-fold cross validation to validate the model

Yoo: Neural Network Modeling 16 Workload J2EE 3-tier web service, modeling the transactions among a manufacturing company, its clients, and suppliers 4 configuration parameters Thread count assigned to mfg queue Thread count assigned to web queue Thread count assigned to default queue Injection rate 5 performance indicators Manufacturing response time Dealer purchase response time Dealer manage response time Dealer browse autos response time Throughput 4 -> 5 nonlinear function approximation

Yoo: Neural Network Modeling 17 Model Construction Collected 54 data samples with varying configurations Train the neural network with R statistical analysis toolkit Single hidden layer 100 hidden nodes Maximum iteration = 120 Performed 5-fold cross validation over the model

Yoo: Neural Network Modeling 18 Model Validation: Manufacturing Response Time Prediction for training setPrediction for validation set o : actual value x : predicted value Sample Index manufacturing.resp_time

Yoo: Neural Network Modeling 19 Model Validation: Throughput Sample Index throughput o : actual value x : predicted value Prediction for training setPrediction for validation set

Yoo: Neural Network Modeling 20 Model Accuracy Average prediction error for validation set Harmonic mean of model accuracy = 95% Trial Manufacturing Response Time Dealer Purchase Response Time Dealer Manage Response Time Dealer Browse Autos Response Time Effective Transactions per second 13.30%10.10%5.70%9.50%0.10% 21.50%7.30%2.70%4.20%0.30% 34.50%8.90%3.30%5.00%0.20% 44.00%12.60% 11.30%0.10% 51.40%11.30%10.70%6.40%0.20% Average3.00%10.00%7.00%7.30%0.20%

Yoo: Neural Network Modeling 21 Model Application Now we have an accurate and valid model Utilize this model to further improve the understandings in the workload Project the model to 3D by fixing 2 out of 4 configuration parameters 3 typical behaviors appeared repetitively Case of Parallel Slopes Case of Valleys Case of Hills

Yoo: Neural Network Modeling 22 Case of Parallel Slopes Parallel Slopes Injection rate and manufacturing queue fixed at (560, 16) Z axis: manufacturing response time X, Y axis: web queue and default queue value Tuning default queue value has less effect on response time once web queue value is fixed

Yoo: Neural Network Modeling 23 Case of Valleys Valleys Injection rate and manufacturing queue fixed at (560, 16) Z axis: dealer purchase response time X, Y axis: default queue and web queue value Valleys formed at (default, webQueue) = (15, 18) Default queue value and web queue value should be adjusted in a coherent way to stay in the valley

Yoo: Neural Network Modeling 24 Case of Hills Hills Injection rate and manufacturing queue fixed at (560, 16) Z axis: throughput X, Y axis: web queue and default queue value Default queue value and web queue value should be adjusted in a coherent way to stay on the hill

Yoo: Neural Network Modeling 25 Conclusion Devised a methodology that incorporates neural network to construct and validate a nonlinear behavior model Neural networks are an excellent tool to construct a nonlinear workload behavior model Significant insights can be gained by analyzing these constructed models

Yoo: Neural Network Modeling 26 Questions? Georgia Tech MARS lab

Yoo: Neural Network Modeling 27 Additional Thoughts interpolation Neural network models perform interpolation among samples Cannot Cannot be used for extrapolation Cannot predict the performance for the configuration that is far apart from the training data Known limitation of MLP