Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.programming.threads > #1888
| From | aminer <aminer@toto.net> |
|---|---|
| Newsgroups | comp.programming.threads, comp.programming |
| Subject | Re: Here is again my Proof |
| Date | 2013-10-10 12:32 -0700 |
| Organization | albasani.net |
| Message-ID | <l36kri$3t3$1@news.albasani.net> (permalink) |
| References | <l356ou$lo5$1@news.albasani.net> <smcc59l0i3ksglsso0n5idmcqk84gkub77@4ax.com> <5256F730.1010009@toto.net> |
Cross-posted to 2 groups.
I wrote: > Hello, > > I think i know what is my mistake: the serial part in > the Amdahl's law is not the critical section, you must not > confuse the two. But, Amine, how can you say that the serial part of the Amdahl's law is not the critical section ? In my example if you don't have context switches , and you have the same number of threads than the number of cores, and the time inside the critical section is constant and the time inside the parallel part is constant, so the Amdahl's law can predict the worst case contention scenario , that means when all the threads are contending for the same critical section, hence you can predict the worst case contention scenario by just calculating the time inside the critical section and the time inside the parallel part and doing the Amdahl calculation, this will give you the exact result for the worst case contention scenario, so as you have noticed the serial part of the Amdahl equation is not only the critical section, it's the critical section with a context, so you have to take into consideration also the context, that means the context of the worst case contention scenario. Thank you, Amine Moulay Ramdane. On 10/10/2013 11:51 AM, aminer wrote: > > Hello, > > I think i know what is my mistake: the serial part in > the Amdahl's law is not the critical section, you must not > confuse the two. > > > > Amine Moulay Ramdane. > > > On 10/9/2013 10:03 PM, Robert Wessel wrote: >> On Wed, 09 Oct 2013 20:26:18 -0700, aminer <aminer@toto.net> wrote: >> >>> >>> Hello, >>> >>> I have noticed that Robert Wessel didn't understood my ideas.. >>> >>> So i will prove it to you right now , so follow with me carefully >>> please... >>> >>> Let say we have 4 threads, and 4 cores, and let say that each >>> thread is running the same parallel code, and let say we have also a >>> serial code inside some critical section, and let say that the parallel >>> part is >>> 0.1% and the serial part is 0.9%, so let say that the serial part >>> takes 1 second(it means 0.1%) and the parallel part takes 9 seconds(it >>> means 0.9%), what i have tried to explain to you is that the Amadhl's >>> law or equation is not a correct law and it doesn't give a correct >>> results, >>> here is why: so if the 4 threads are all looping and looping again >>> for a number of times running the same parallel code and the same serial >>> code and let say that they are contending at the same time >>> for the critical section, this is why i have called an ideal contention >>> scenario, so if they are contending AT THE SAME TIME for the critical >>> section(the serial part) they will run 4 serial parts in 4 seconds in >>> one loop and they will run 4 parallel parts in 9 seconds in one loop, >>> hence it will take 13 seconds in one loop , but if you run the parallel >>> part and the serial part serially they will take 40 seconds, so the >>> scalability will equal 40 seconds divide by 13 seconds = 3.07X, this is >>> the result that gives us the Amdahl's law, it's 1 /(0.1 + 0.9/4) = >>> 3.07X, but this is not the end of the story , so follow now carefully >>> with me, so let divide the parallel part into 9 small parts each >>> equal to >>> 1 seconds, and the serial part is equal to 1 second, so if the threads >>> are looping and not contending at the same time for the critical section >>> and let say that when the threads are looping the first thread will be >>> on the first small part equal to 1 seconds of the 9 small parts of the 9 >>> seconds of the parallel part , the second thread will be on the second >>> small part equal to 1 seconds of the 9 parts of the 9 seconds of the >>> parallel part, and the third threads will be on the third small part >>> equal to 1 second of the 9 parts of the 9 seconds of the parallel part , >>> and the fourth thread will be on the third small part equal to 1 second >>> of the 9 parts of the 9 seconds of the parallel part , so imagine the 4 >>> threads >>> looping again and again and not changing there places like that , so >>> there will be no serial part at all, cause when each thread will be on >>> the 1 second of the serial part the other threads will not be on the the >>> same serial part, so this is a none contention scenario , so since >>> there is no serial part so the scalability will be perfect and >>> equal to 4X , so as you have noticed the Amdahl equation gives >>> the scalability of the ideal contention scenario all the threads >>> are contending at the same time so the scalability will equal 3.07X, but >>> if they are not contending at all the scalability will be perfect >>> and equal to 4X, and if you have less contention this will scale >>> better than 3.07X, so now i have proved to you that the Amdahl's law >>> doesn't give you a correct result. >>> >>> >>> >>> Hope you have understood my arguments and my ideas against the >>> Amdahl's law. >> >> >> You've redefined the serial work as parallel work, leading to an >> absurd result. >> >> If you have a bit of work, with serial (Sn) and parallel (Pn) parts, >> but you run multiple instances of that, so the S1, S2, S3... are >> serial with respect to themselves and their respective parallel parts, >> but parallel with each other (IOW, S1, S2, S3... can run at the same >> time), S1, S2, S3... as a group are not serial. >> >> Assuming for the sake of brevity that each Sn is the same size, the >> actual unit of serial work in the system is *one* of the Sn units, not >> all of them. Thus if you had 100 iterations (each with .1 S and .9 P >> work), Amdahl's law would imply that the maximum theoretical speedup >> is about *1000*, since all 100 Sn's can run in parallel. >> >> Amdahl's law is just fine. >> >> And please stop misusing the percent sign. Your writing is convoluted >> enough when half your numbers are not off two orders of magnitude. >> >
Back to comp.programming.threads | Previous | Next — Previous in thread | Next in thread | Find similar
Here is again my Proof aminer <aminer@toto.net> - 2013-10-09 20:26 -0700
Re: Here is again my Proof aminer <aminer@toto.net> - 2013-10-09 20:40 -0700
Re: Here is again my Proof aminer <aminer@toto.net> - 2013-10-09 20:45 -0700
Re: Here is again my Proof aminer <aminer@toto.net> - 2013-10-09 20:56 -0700
Re: Here is again my Proof Robert Wessel <robertwessel2@yahoo.com> - 2013-10-10 00:03 -0500
Re: Here is again my Proof aminer <aminer@toto.net> - 2013-10-10 11:51 -0700
Re: Here is again my Proof aminer <aminer@toto.net> - 2013-10-10 12:32 -0700
Re: Here is again my Proof blmblm@myrealbox.com <blmblm.myrealbox@gmail.com> - 2013-10-18 18:58 +0000
csiph-web