- Mastering Concurrency in Python
- Quan Nguyen
- 371字
- 2021-06-10 19:23:59
Implications
The following is a quote from Gene Amdahl, in 1967:
Through the quote, Amdahl indicated that whatever concurrent and parallel techniques are implemented in a program, the sequential nature of the overhead portion required in the program always sets an upper boundary on how much speedup the program will gain. This is one of the implications that Amdahl's Law further suggests. Consider the following example:
denotes the speedup gained from n processors
This shows that, as the number of resources (specifically, the number of available processors) increases, the speedup of the execution of the whole task also increases. However, this does not mean that we should always implement concurrency and parallelism with as many system processors as possible, to achieve the highest performance. In fact, from the formula, we can also gather that the speedup achieved from incrementing the number of processors decreases. In other words, as we add more processors for our concurrent program, we will obtain less and less improvement in execution time.
Furthermore, as mentioned previously, another implication that Amdahl's Law suggests concerns the upper limit of the execution time improvement:
is the cap of how much improvement concurrency and parallelism can offer your program. This is to say that, no matter how many available resources your system has, it is impossible to obtain a speedup larger than
through concurrency, and this limit is dictated by the sequential overhead portion of the program (B is the fraction of the program that is strictly serial).
- Go Web編程
- 計算思維與算法入門
- Learning Java Functional Programming
- Google Apps Script for Beginners
- Learning Selenium Testing Tools with Python
- Python入門很簡單
- MATLAB圖像處理超級學習手冊
- Java應用開發與實踐
- 微服務設計原理與架構
- SQL基礎教程(視頻教學版)
- Asynchronous Android Programming(Second Edition)
- Go語言精進之路:從新手到高手的編程思想、方法和技巧(1)
- Java實戰(第2版)
- Access 2010數據庫應用技術實驗指導與習題選解(第2版)
- 計算機應用基礎項目化教程