Performance Orientated-Design Flashcards
What are the three categories of performance principles?
- Performance control principles
- Independent principles
- Synergistic principles
What are performance control principles?
Control performance by stating the required performance objectives to quantitively determine if software meets goals.
What are independent principles?
Can be applied independently do not conflict with eachother
What are synergistic principles?
Improve overall performance by allowing cooperation of processes fighting for computer resources
What is performance objective principle?
Type: Performance Control Principle
Define specific, quantitative, measurable performance objectives for performance scenarios
What is instrumenting principle?
Type: Instrumenting Principle
Inserting code probes at key points to enable measurement of important execution characteristics
What is centering principle?
Type: Independent Principle
Identify the dominant workload functions and minimize their processing
What is the fixing point principle?
Type: Independent Principle
For responsiveness, fixing should establish data connections as early as possible such that retaining the connection is cost-effective.
What is the locality principle?
Type: Independent Principle
Closeness of desired actions, functions, and results to the physical resources used to produce them.
What is the processing vs frequency principle?
Type: Independent Principle
Minimize the product of processing times frequency. Making a trade-off between how much times a service is called and how much work that service does on each call.
What is the shared resource principle?
Type: Synergistic Principle
Share resources when possible. When excluding access is required, minimize the sum of the holding time and scheduling time.
What is the parallel processing principle?
Type: Synergistic Principle
Processing time can be reduced by partitioning computation into multiple concurrent processes.
What is real concurrency?
Processes execute simultaneously on different processers.
What is apparent concurrency?
Processes are multiplexed on the same processors. Still need to fight for shared resources.
What is spread-the-load principle?
Type: Synergistic Principle
When possible process conflicting loads at different times or different places.
What is fixing
- Fixing in the sense of anchoring
Fixing connects
- the desired actions to the instructions used to complete action
- The desired result to the data to produce it
Examples of fixing point?
Banker needs summary data of multiple accounts
- Early fixing - Update the summary data as the account data arrives
- Late fixing - Update the summary data as the banker requests
Examples of locality principle?
- Multiple queries to remote database
- Regional offices vs central offices
Examples of shared resource principle?
To minimize scheduling time, lock the database when being accessed (this maximizes holding time)
To minimize holding time, lock the individual records when accessing database (this maximizes scheduling time)
Example of parallel processing principle?
Printing statements for large number of customers, can do this concurrently instead of sequentially.
Example of performance objective principle?
ATM end-to-end interaction should take at most 1 second for the user.
Should you be using the principles all the time?
False, only for critical components
What are the performance control principles?
- Performance Objective principle
2. Instrumentation Principle
What are the independent principles
- Centering Principle
- Locality principle
- Processing vs frequency principle
- Fixing point principle
What are synergistic principles
- Shared resources principle
- Spread the load principle
- Parallel processing