Chapter 7: Data Collection Flashcards
What are the five types of data needed for SPE
- Key Performance scenarios
- Performance objectives
- Execution Environment
- Software Resource Requirements
- Computer Resource Requirements
What are heavy hitters?
Functions that take up the most resources
What do we need to estimate in key performance scenarios?
- Workload intensity
- Arrival rate of requests
- Number of concurrent users
What does the execution environment consist of?
- Hardware and network
- Operating system
- Database usage
- Other software that uses resources
How do we estimate software resource requirements?
Can use work units
What are the types of computer resource requirements?
- CPU time for work units
- Number of I/O
- Message size
How do we map software resource requirements into computer resource requirements?
Processing overhead matrix
What is a walkthrough?
Informal review where member of development team discusses system
What is a performance walkthrough?
Similar to walkthrough except goal is to gather the information needed to construct performance models.
What is a user representative?
Provides data on how the system will be used, how often and typical usage conditions
What is a system architect
Provides overview of system and its components along with use cases
What is a performance specialist?
Someone who is familiar with measurements of target configuration and can either provide data or perform measurements to get data.
When should performance walkthroughs be conducted?
- Early stages, should be part of overall feasibility study to see if the project can continue.
- When system evolves. The frequency of performing walkthroughs depends on performance risk.
Are resource requirements the most difficult specifications to esimate?
True
What are use measurements?
- Start with an estimate
- Use model results to study accuracy of model results to estimates
- Modify it with accurate estimates as soon as possible
Continue to evaluate the system as it evovles
What are study measurements?
Study similar systems to develop a frame of reference to estimate resource requirements
What should you do if you haven’t participated in SPE studies before?
Use a mentor to assist and advise you on resource estimates in initial walkthroughs
When uncertainty is an issue in measurements what should be used?
Use best-worse case estimates
- First use best case as if that doesn’t work then no point in continuing
- Use worst case estimates to find anomalies in system.
What happens if worst-case estimates pass the system?
No point in developing more precise metrics.
What should be estimated?
- Dominant Resource Usage
- I/O Requirements
- Network messages
What are dominant resources?
Resources that account for most of elapsed time in scenario
What do we need to estimate I/O Requirements?
- Number of physical I/O
- I/O Service times
- Random or sequential access
How do we estimate number of physical I/O?
- First method: Indirectly method of estimating I/O. Estimate the logical I/Os and then estimate hit ratio
- Second method: Directly estimate I/O. Estimate which I/O requests might be stored in a cache/buffer, count only ones that would access physical I/O.
How does read random access effect number of I/O?
For read requests that random access an indexed file or table the number of logical I/O is i+1,
where i is the number of files in file index and
1 is the I/O to read the data record
How does write random access effect number of I/O?
For write requests that random access an indexed file or table the number of logical I/O is i+1,
where i is the number of files in file index and
1 is the I/O to read the data record
where 1 is best case as index is not effected and i+1 is worst case where all levels of index are effected
How do we estimate network messages
- Number of messages transferred
- Number of characters transferred
must account for the characters in message headers and the application messages
What is the overhead for transferring a message?
- CPU path length for preparing message
- physical I/O for logging message
- Time to transfer both the message and other extra required messages for protocol
Where can we find overhead resource requirements?
Model libraries
What happens if you cannot find overhead resource requirements?
Perform a performance measurement study
What should you do after estimating computer resource requirements?
Make a library for others to use as well.
How to have a successful performance walkthrough?
- Partition long walkthroughs into smaller ones
- Minimize action items
- Include Solution Alternatives with results