Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Scalability
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Performance tuning versus hardware scalability== It is often advised to focus system design on hardware scalability rather than on capacity. It is typically cheaper to add a new node to a system in order to achieve improved performance than to partake in [[performance tuning]] to improve the capacity that each node can handle. But this approach can have diminishing returns (as discussed in [[performance engineering]]). For example: suppose 70% of a program can be sped up if parallelized and run on multiple CPUs instead of one. If <math>\alpha</math> is the fraction of a calculation that is sequential, and <math>1-\alpha</math> is the fraction that can be parallelized, the maximum [[speedup]] that can be achieved by using P processors is given according to [[Amdahl's Law]]: : <math>\frac 1 {\alpha+\frac{1-\alpha} P}.</math> Substituting the value for this example, using 4 processors gives : <math>\frac 1 {0.3+\frac{1-0.3} 4} = 2.105.</math> Doubling the computing power to 8 processors gives : <math>\frac 1 {0.3+\frac{1-0.3} 8} = 2.581.</math> Doubling the processing power has only sped up the process by roughly one-fifth. If the whole problem was parallelizable, the speed would also double. Therefore, throwing in more hardware is not necessarily the optimal approach.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)