DOC PREVIEW
CORNELL CS 501 - Lecture Notes

This preview shows page 1-2-14-15-29-30 out of 30 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 30 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 30 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 30 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 30 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 30 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 30 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 30 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

CS 501: Software EngineeringAdministrationPerformance of Computer SystemsMoore's LawMoore's Law and System DesignMoore's Law: Rules of ThumbParkinson's LawFalse AssumptionsMoore's Law and the Long TermPredicting System PerformanceUnderstand the Interactions between Hardware and SoftwareUnderstand Interactions between Hardware and SoftwareLook for BottlenecksLook for Bottlenecks: UtilizationTechniques for Eliminating BottlenecksMathematical Models: QueuesQueuesMathematical ModelsBehavior of Queues: UtilizationSimulationTimescaleMeasurements on Operational SystemsExample: Performance of Disk ArrayDiscussion of Pfleeger, Chapter 7Question 1: Documentation StandardsQuestion 2: Good ProgrammingQuestion 3: MaintenanceQuestion 4: Documentation StandardsQuestion 5: Data StructuresQuestion 6: Risks1CS 501 Spring 2002CS 501: Software EngineeringLecture 19Performance of Computer Systems2CS 501 Spring 2002AdministrationQuiz 3Collect after class.Final presentationsSign up now. Available time slots are on the web site.3CS 501 Spring 2002Performance of Computer SystemsIn most computer systemsThe cost of people is much greater than the cost of hardwareYet performance is importantFuture loads may be much greater than predictedA single bottleneck can slow down an entire system4CS 501 Spring 2002Moore's LawOriginal version: The density of transistors in an integrated circuit will double every year. (Gordon Moore, Intel, 1965) Current version:Cost/performance of silicon chips doubles every 18 months.5CS 501 Spring 2002Moore's Law and System DesignDesign system: 2002Production use: 2005Withdrawn from production: 2015Processor speeds: 1 1.9 28Memory sizes: 1 1.9 28Disk capacity: 1 2.2 51System cost: 1 0.4 0.016CS 501 Spring 2002Moore's Law: Rules of ThumbPlanning assumptions:Every year: cost/performance of silicon chips improves 25% cost/performance of magnetic media improves 30%10 years = 100:120 years = 10,000:17CS 501 Spring 2002Parkinson's LawOriginal: Work expands to fill the time available. (C. Northcote Parkinson)Planning assumptions:(a) Demand will expand to use all the hardware available.(b) Low prices will create new demands.(c) Your software will be used on equipment that you have not envisioned.8CS 501 Spring 2002False AssumptionsUnix file system will never exceed 2 Gbytes (232 bytes).AppleTalk networks will never have more than 256 hosts (28 bits).GPS software will not last 1024 weeks.Nobody at Dartmouth will ever earn more than $10,000 per month.etc., etc., .....9CS 501 Spring 2002Moore's Law and the Long Term1965When?What level?2000?Within your working life?10CS 501 Spring 2002Predicting System Performance• Mathematical models• Simulation• Direct measurement• Rules of thumbAll require detailed understanding of the interaction between software and systems.11CS 501 Spring 2002Understand the Interactions between Hardware and Software:Thread :Toolkit :ComponentPeer target:HelloWorldrunrun callbackLoophandleExposepaint12CS 501 Spring 2002DecompressStream audioStream videoforkjoinstart statestop stateUnderstand Interactions between Hardware and Software13CS 501 Spring 2002Look for BottlenecksPossible areas of congestionNetwork loadDatabase accesshow many joins to build a record?Locks and sequential processingCPU performance is rarely a factor, except in mathematical algorithms. More likely bottlenecks are:Reading data from diskMoving data from memory to CPU.14CS 501 Spring 2002Look for Bottlenecks: Utilizationutilization = mean service timemean inter-arrival timeWhen the utilization of any hardware component exceeds 30%, be prepared for congestion.15CS 501 Spring 2002Techniques for Eliminating BottlenecksSerial and Parallel ProcessingSingle thread v. multi-threade.g., Unix forkGranularity of locks on datae.g., record lockingNetwork congestione.g., back-off algorithms16CS 501 Spring 2002Mathematical Models: Queuesarrive wait in line service departSingle server queue17CS 501 Spring 2002Queuesarrive wait in lineservicedepartMulti-server queue18CS 501 Spring 2002Mathematical ModelsQueueing theoryGood estimates of congestion can be made for single-server queues with: • arrivals that are independent, random events (Poisson process)• service times that follow families of distributions (e.g., negative exponential, gamma)Many of the results can be extended to multi-server queues.19CS 501 Spring 2002Behavior of Queues: Utilizationmeandelayutilization1020CS 501 Spring 2002SimulationModel the system as set of states and eventsadvance simulated time determine which events occurred update state and event listrepeatDiscrete time simulation: Time is advanced in fixed steps (e.g., 1 millisecond)Next event simulation: Time is advanced to next eventEvents can be simulated by random variables (e.g., arrival of next customer, completion of disk latency)21CS 501 Spring 2002TimescaleOperations per secondCPU instruction: 400,000,000Disk latency: 60 read: 25,000,000 bytesNetwork LAN: 10,000,000 bytesdial-up modem: 6,000 bytes22CS 501 Spring 2002Measurements on Operational Systems• Benchmarks: Run system on standard problem sets, sample inputs, or a simulated load on the system.• Instrumentation: Clock specific events.If you have any doubt about the performance of part of a system, experiment with a simulated load.23CS 501 Spring 2002Example: Performance of Disk ArrayEach transaction must:wait for specific disk platterwait for I/O channelsignal to move heads on disk platterwait for I/O channelpause for disk rotationread dataClose agreement between: results from queuing theory, simulation, and direct measurement (within 15%).24CS 501 Spring 2002Discussion of Pfleeger, Chapter 7Format:State a question.Ask a member of the class to answer. (Sorry if I pronounce your name wrongly.)Provide opportunity for others to comment.When answering:Stand up.Give your name or NetID. Make sure the TA hears it.Speak clearly so that all the class can hear.25CS 501 Spring 2002Question 1: Documentation Standards (a) What is the purpose of standard documentation?(b) Who should create the documentation standards?(c) What documentation standards are you following in your project? (Be honest!)26CS 501 Spring 2002Question 2: Good ProgrammingYou are judging a Good Programmer Competition. (a) Give four criteria for what constitutes good programming style.(b) Give four additional


View Full Document

CORNELL CS 501 - Lecture Notes

Documents in this Course
Quiz 2

Quiz 2

2 pages

Usability

Usability

31 pages

Quiz 1

Quiz 1

2 pages

Stulba;''

Stulba;''

33 pages

Load more
Download Lecture Notes
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Lecture Notes and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Lecture Notes 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?