1 / 30

Advanced Systems Lab

Advanced Systems Lab. G. Alonso, D. Kossmann Systems Group http: // www.systems.ethz.ch. ADMINISTRATION. Overview of the Course. Lecture : Tuesdays , 5-7pm, CAB G61 covers material from the text book ~9 sessions (probably done mid November)

trevet
Télécharger la présentation

Advanced Systems Lab

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Advanced Systems Lab G. Alonso, D. Kossmann Systems Group http://www.systems.ethz.ch

  2. ADMINISTRATION

  3. OverviewoftheCourse • Lecture: Tuesdays, 5-7pm, CAB G61 • coversmaterial from the text book • ~9 sessions (probably done mid November) • Project Work (40% of the grade; 80% of the effort) • done in groups of 3 students • Java programming • Meetings with supervisors, Thursdays, 5-7pm, CAB/CHN • FIRST MEETING: NEXT THURSDAY!!! -> CAB G11, not in theusualrooms! • Exam (60% of the grade) • Sessionsprüfung, details to be announced • Web page http://www.systems.ethz.ch/courses/fall2012/ASL

  4. Literature • Raj Jain: The Art of Computer Systems Performance Analysis, John Wiley &Sons • (we will not cover Part V „Simulation“) • Library has copies. Nevertheless, worthbuying. • Exambased on bookchaptersandbookexercises • Almost all „Systems“ publications have examples • Networks, operating systems, databases, ... • Master and PhDtheses of Systems Group • ACM SIGMETRICS: specialized on performance eval.

  5. Requirements • Things we assume you know: • Programming • Basic statistics and probability theory • Operating systems (threads, scheduling, memory management) • Databases (SQL) • Networks (RPC, TCP/IP, routing, sockets) • If you do not have the necessary background, you need to acquire it before taking this course

  6. Project forthiscourse • Three milestones *  Milestone 1:  Build System     - persistent messaging system *  Milestone 2:  Performance Experiments     - study performance of the system you have implemented under various parameters *  Milestone 3:  Modeling     - estimate/model performance of the system you have implemented based on queuing models

  7. Objective of thiscourse • Quantitative evaluationofcomputersystems • Learnhow to answerquestions of the form... • Whatisbetter: A or B?, Is A good enough? • Whatarethe limits of A?, Howcan I improve A? • A, B, C, ... arecomputersystems • software + hardware • oftenonlycomponents of a biggersystem • Almost alwaystheansweris: „Itdepends!“ • Thatiswhatmakesperformanceeval. interesting.

  8. Goals • Things you will know at the end of the course • System building principles • Experimental design and analysis • Answering quantitative questions about systems • Experiments presentation • Queuing theory applied to system performance analysis • Insights on the systems used in the project

  9. From a former student … … coming back to work in the inter-semester break, the first project assignment I got was to analyze and improve the performance of the trading systems and prototype a new architecture … . It was an unbelievable feeling to leave the exam room and get such work assignment that requires all the knowledge I learned in class.

  10. From another former student …

  11. THE COURSE

  12. On vegetarians (from Wikipedia) A 1999 metastudy combined data from five studies from western countries.[68] The metastudy reported mortality ratios, where lower numbers indicated fewer deaths, for fish eaters to be 0.82, vegetarians to be 0.84, occasional meat eaters to be 0.84. Regular meat eaters and vegans shared the highest mortality ratio of 1.00. The study reported the numbers of deaths in each category, and expected error ranges for each ratio, and adjustments made to the data. However, the "lower mortality was due largely to the relatively low prevalence of smoking in these [vegetarian] cohorts"

  13. Schedule • Intro • Basic concepts • Metrics and workloads • Workloads • Review of statistics • Queuing theory

  14. Quantitative questionsaboutsystems • In scopequestions (althoughnot well specified) • Canwemoveour web server to theAmazoncloud? • Are SSDsbetterthanharddisks? • Should I use quick sortinstead of mergesortformy online catalogue? • IsMySQL fast enoughformy online catalogue? • Out ofscopequestions • Is a product better than another? • Feature analysis • Costs (e.g., $ per tpcm)

  15. How do youanswer such questions? • Experiments • Youimplement / install „system(s) under test“ (SUT) • Yourunbenchmarks and measureobservableresults • Modeling • Youbuild a model of the „system(s) under test“ • Youcalculateresultswithmodel • Simulation • Youimplement a systemthatbehaveslike SUT • Yourunbenchmarks and measurecomputedresults

  16. Experiments vs. Modeling • Experiments • Oftenexpensive to implement • Specific to environment (e.g., hardwareused) • Accurate (quantitative) results • Sometimesmisleading • Modeling • Typicallycheap • General • Qualitative results • Youalwayslearnsomething • Usemodelingwhenveryoucan • Unfortunately, modern systemsaretoocomplex

  17. Methodology • Askthe right question • Definethe „system(s) under test“ • Definewhat „better“ means • Define relevant workloads, understandparameters • Make a hypothesis • „A good scientistpredictstheresults and explainslaterwhysomethingtotally different happened.“ • Carry out experiment (real system, model) • Run workloads, measuremetrics • Report results, analyzeresults, gotoStep 1 • Giveanswer to question, possiblyrefinequestion

  18. Methodology • Askthe right question • Definethe „system(s) under test“ • Definewhat „better“ means • Define relevant workloads, understandparameters • Make a hypothesis • „A good scientistpredictstheresults and explainslaterwhysomethingtotally different happened.“ • Carry out experiment (real system, model) • Run workloads, measuremetrics • Report results, analyzeresults, gotoStep 1 • Give answer to question, possiblyrefinequestion Difficult

  19. Making a Hypothesis • Usethesameformat as the final results • Draw graphswithexpectedresults • Even try to predictvariance and statisticalproperties • Makebulletpointswithexplanations • Use „modeling“ to makehypothesis • Share hypothesiswithyourcustomer (advisor) • Validateswhetheryouareaskingthe right question • i.e., canyoumakedecisionsifresults turn out likethat • Comparison of expected vs. real results • Essential to find bugs in yourexperiments • Essential to understand real results

  20. The most dangerous profession • In a study in 1685 of the ages and professions of deceased men, it was found that the profession with the lowest average age of death was “student.” • Why does being a student appear to be so dangerous? http://www.stat.columbia.edu/~gelman/bag-of-tricks/chap10.pdf

  21. Example • Metric 1: Throughput (y-axis of graphs) • requests completed per unit of time (secs) • count only “successful” requests (no error, < timeout) • Metric 2: Response Time (y-axis of graphs) • max/min/avg time (secs) to complete a request • Parameter: User Load (x-axis of graphs) • number of requests arriving per unit of time (secs)

  22. Example: Throughput User load (req/sec)

  23. Example: Throughput Throughput (req/sec) User load (req/sec)

  24. Example: Throughput Analysis Throughput (req/sec) underload saturated thrashing User load (req/sec)

  25. An Example: Avg. Response Time Response Time (sec) User load (req/sec)

  26. An Example: Avg. Response Time Response Time (sec) underload saturated thrashing User load (req/sec)

  27. How to liewithstatistics Absolute Performance Relative Performance: Baseline B

  28. Ratio games • Using ratios instead of direct measurements allows in some cases to reach arbitrary conclusions (see book, chapter 11) • Changing the weights of different workloads can be used to make a system look better • Inventing ratio measurements can make a system look better than it is • …

  29. Example ratio games with % • System A (total tests passed 20.6%) Test # Total Passed Passed in % 1 300 60 20 % 2 50 2 4 % • System B (total tests passed 9%) Test # Total Passed Passed in % 1 32 825 % 2 500 408 %

  30. Howtorunexperiments • Understandthesubjectarea • E.g., lectures on „systems“ • Learnyourmath (lectures, pencil & paper) • Statistics • Modeling (Queueing Models) • Exampledesigns • Experience, experience, experience • Project as part of thisclass • Lab projects, Master thesis, ... • Common sense

More Related