Difference between revisions of "CSE 503S Performance Evaluation Study"

From CSE330 Wiki
Jump to navigationJump to search
Line 23: Line 23:
 
**Elastic Load Balancing (ELB) evaluation using several smaller instances vs a single larger instance[https://aws.amazon.com/elasticloadbalancing/][http://harish11g.blogspot.com/2012/07/aws-elastic-load-balancing-elb-amazon.html]
 
**Elastic Load Balancing (ELB) evaluation using several smaller instances vs a single larger instance[https://aws.amazon.com/elasticloadbalancing/][http://harish11g.blogspot.com/2012/07/aws-elastic-load-balancing-elb-amazon.html]
  
** Benchmark your current ec2 instance's web server's performance using the tool ab from a separate ec2 instance (m4.large)
+
*For each experiment collect data for a range of settings/inputs/configurations (at least 5 data points) and two types of data.
+
**For example if I was using Apache Benchmark (ab) to test my web server I would be interested in the pages/sec and the mean time per request
* Graph to performance of your web server, specifically the requests per second and time per request
+
**For a mySQL database evaluation I could measure both and reads/sec and writes/sec to a database
 
 
* Select two additional metrics that are important for your web application and measure them as well to establish a base line performance (see list of examples)
 
 
 
* Determine three improvements you will make on your web server to improve these key metrics. (one of them may be to use a faster instance)
 
 
 
* Benchmark the performance of the improved system
 
 
 
* Graph the performance of the improved
 
  
 
* Create a report that contains a description of your app, the metrics you are interested in, the baseline and improved performance.
 
* Create a report that contains a description of your app, the metrics you are interested in, the baseline and improved performance.
 
+
** Provide a discussion of the evaluation and recommendations for deployment. If you are testing on different instance types discuss the cost benefits of a larger instance. (Is an instance that costs 10x that of a smaller instance worth it?)
* Provide a discussion of the proposed improvements and the benefits it offered. (is an instance that costs 10x worth it?)
 
  
 
== Grading ==
 
== Grading ==
Line 44: Line 35:
 
________
 
________
  
# '''Baseline performance (20 Points):'''
+
# '''Two Experimental Evaluations (20 Points Per Experiment, 40 Points Total):'''
#* ab benchmark executed results of website
+
#* Experimental setup clearly explained  (5 pts)
#* measurements of two other initial metrics
+
#* Tests performed with multiple data points (at least 5 data points)  ( 5 pts)
#* graph of initial performance
+
#* At least two different types of data recorded (6 pts)
# '''Upgraded performance (20 Points):  
+
#* Visualization of experimental results (4 pts)
#* Benchmark each improvement individually
+
 
#* Graph the results
+
# '''Write-up (20 Points):  
# '''Performance Analysis Report (20 Points)
+
#* Discussion of results  (10 pts)
 +
#* What were the potential bottlenecks?  (5 pts)
 +
#* What type of instance or configuration would you recommend (5 pts)

Revision as of 17:03, 8 November 2015

Students enrolled in CSE 530S will complete a performance analysis study as part of their final project. The goal of this analysis is to measure the performance of your web application. An additional goal is to increase the performance of your web application after we have completed a baseline measurement.

Reading

The following article will contain information that will help you with this assignment.

Project

You may work alone or with a partner on this assignment.

Requirements

  • Choose at least two types of experiments to perform on your web server. The types of experiments you should run are largely dependent on type web application you are developing. Ask the instructor if you are unclear on what types of experiments you should perform. Below is a small list of potential experiments to perform.
    • Apache web server performance evaluation on different AWS instance types [1] [2] [3][4]
    • MySQL Performance evaluation on different AWS instance types[5]
    • Apache and Nginx comparison on the same AWS instance type[6]
    • MongoDB performance on different instance types [7]
    • Node and Apache+PHP comparison on the same AWS instance type [8]
    • Apache Web Server performance with and without optimizations and tuning[9][10][11]
    • PHP performance with and without caching[12]
    • Elastic Load Balancing (ELB) evaluation using several smaller instances vs a single larger instance[13][14]
  • For each experiment collect data for a range of settings/inputs/configurations (at least 5 data points) and two types of data.
    • For example if I was using Apache Benchmark (ab) to test my web server I would be interested in the pages/sec and the mean time per request
    • For a mySQL database evaluation I could measure both and reads/sec and writes/sec to a database
  • Create a report that contains a description of your app, the metrics you are interested in, the baseline and improved performance.
    • Provide a discussion of the evaluation and recommendations for deployment. If you are testing on different instance types discuss the cost benefits of a larger instance. (Is an instance that costs 10x that of a smaller instance worth it?)

Grading

This assignment is worth 60 points in total.

________

  1. Two Experimental Evaluations (20 Points Per Experiment, 40 Points Total):
    • Experimental setup clearly explained (5 pts)
    • Tests performed with multiple data points (at least 5 data points) ( 5 pts)
    • At least two different types of data recorded (6 pts)
    • Visualization of experimental results (4 pts)
  1. Write-up (20 Points):
    • Discussion of results (10 pts)
    • What were the potential bottlenecks? (5 pts)
    • What type of instance or configuration would you recommend (5 pts)