Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.programming.threads > #1888

Re: Here is again my Proof

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.

Show all headers | View raw


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 | NextPrevious in thread | Next in thread | Find similar


Thread

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