[su_table]
2 ^ 10 = 1024 |
2 ^ 10 = 1 KB of memory |
2 ^ 20 = 1 MB of memory |
2 ^ 30 = 1 GB of memory |
[/su_table]
Never stop learning
[su_table]
2 ^ 10 = 1024 |
2 ^ 10 = 1 KB of memory |
2 ^ 20 = 1 MB of memory |
2 ^ 30 = 1 GB of memory |
[/su_table]
$$10^{-12}$$ | pico |
$$10^{-9}$$ | nano |
$$10^{-6}$$ | micro |
$$10^{-3}$$ | milli |
$$10^{3}$$ | Kilo |
$$10^{6}$$ | Mega |
$$10^{9}$$ | Giga |
$$10^{12}$$ | Tera |
Performance
Response Time: Time taken to do a particular task
Throughput: Total workdone per unit time
$$!Performance = \frac{1}{\text{Execution Time or Response Time}}$$
$$!\frac{Performance_{x}}{Performance_{y}} = \frac{Execution_{y}}{Execution_{x}}$$
Clock Period: Duration of a clock cycle. e.g., 250 ps (picosecond)
Clock frequency: Number of clock cycles per second. e.g., 40 GHz or $$40\times{10}^{9}\frac{cycles}{second}$$
$$!\text{Program CPU Time} = \text{# of CPU Clock Cycles}\times\text{Clock Cycle Time or Clock Period} = \frac{\text{CPU Clock Cycles}}{\text{Clock Rate}}$$
However,
$$!\text{CPU Clock Cycles}=\text{Instruction count of a program(IC)}\times\text{# of cycles per instruction(CPI)}$$
Therefore,
$$!\text{Program CPU Time}=\frac{IC\times{CPI}}{\text{Clock Rate}}$$
Weighted Average CPI:
$$!CPI_(\text{weighted avg})=\frac{\sum_{i}^{}IC_i\times{CPI_i}}{\text{Total Instruction Count}}$$
MIPS(Million Instructions Per Second):
$$!MIPS=\frac{\text{Instruction Count}}{\text{CPU Time}\times{10}^6}$$
Substituting CPU Time in the above equation,
$$!MIPS=\frac{\text{Clock Rate}}{\text{CPI}\times{10}^6}$$