This post says
The speedup of a program, coming from using multiple processors in parallel computing, was derived to be ( maybe to a surprise of audience ) principally limited by the very fraction of time, that was consumed for the non-improved part of the processing, typically the sequential fraction of the program processing, executed still in a pure [SERIAL] process-schedulling manner ( be it due to not being parallelised per-se, or non-parallelisable by nature ).
For example, if a program needs 20 hours using a single processor core, and a particular portion of the program which takes one hour to execute cannot be parallelized ( having been processed in a pure-[SERIAL] process-scheduling manner ) , while the remaining 19 hours (95%) of execution time can be parallelized ( using a true-[PARALLEL] ( not a "just"-[CONCURRENT] ) process-scheduling ), then out of the question the minimum achievable execution time cannot be less than that ( first ) critical one hour, regardless of how many processors are devoted to a parallelized process execution of the rest of this program.
This sentence is so complicated that I have to break it down into multiple parts to make the understanding more easy and clear.
Assume speedup is (actually not, but for simplicity) the decreased amount of time that the program finish a job, for example, the program takes 20 hours before parallel computing, and 2 hours after parallel computing, and then, the 18 hours is the speedup.
Can someone help to understand this part of the sentence? "... was derived to be principally limited by the very fraction of time".
It seems to have following meanings
- The speedup is principally limited by something (fraction of time)
- The speedup was derived by something (is this understanding right? derived by something? such as derived by pure-[SERIAL])
PS: This more-clear-and-easy-to-understand-version comes from @djna
I discovered that the speedup of a program limited by the fraction of time that was consumed for the non-improved part of the processing.
Based on which, I break the OP into following parts:
- multiple processors could speedup the computation of a program;
- the speedup of a program limited by a quantity s, for instance, the time that the program would take to finish the job would never be less than 2 hours;
- the quantity s could be viewed as the time interval that the program has to take for some reason;
- A likely reason is part of the program is serial that cannot be parallelized;
- following formula gives the more formal definition of the quantity s.
1 1 S = lim ------------ = --- P->oo 1-s s s + --- P S = speedup which can be achieved with P processors 1-s = parallelizable portion
Is my understanding right? Is my expression idiomatic and clear?