Performance Flashcards
what is latency?
times it takes to send and receive a request (amount of time it takes for the customer to order)
what is throughput?
amount of data that can be successfully processed in a certain time (amount of time it takes to server a specific number of customers in a certain amount of time)
given different stages in a server what is the latency of a server?
sum of all stages
given different stages in a server what is the throughput of a server?
min of throughput of stages
what is utilization?
percentage of capacity that is being used
what is overhead w/ examples?
the amount of resources that is “wasted” (usually is the use at lower-layers ex: allocation virtualization, operating systems)
what is useful work?
resources spent on actual work
(usually the use at the current layer in a system ie the application)
what is the formula for overhead as percentage?
overhead = capacity - useful work
percentage = overhead / useful work
bottleneck
the component that restricts throughput
if you’re optimizing for throughput what should you focus on?
bottle neck
if you’re optimizing for latency what should you focus on?
the component with the highest latency
what is the number one rule for optimization and why?
dont prematurely optimize because we are bad at predicting performance
what is amdah’s law?
1/((1-p) + (p/s))
what is the best case speedup?
lim s->inf = 1/(1- p)
what are the three solutions for latency?
fast-path, parallelize, speculation