Re: Inconsistent timing results of multithreaded program on an SMP machine.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



                                                                                                                                   
                      Con Kolivas                                                                                                  
                      <[email protected]        To:       Muli Ben-Yehuda <[email protected]>                                         
                      rg>                      cc:       Marcel Zalmanovici/Haifa/IBM@IBMIL, [email protected]          
                                               Subject:  Re: Inconsistent timing results of multithreaded program on an SMP        
                      20/11/2005 12:39          machine.                                                                           
                                                                                                                                   
                                                                                                                                   
                                                                                                                                   










On Sun, 20 Nov 2005 21:35, Muli Ben-Yehuda wrote:
> On Sun, Nov 20, 2005 at 09:28:13PM +1100, Con Kolivas wrote:
> > Ok I've had a look at the actual program now ;) Are you timing the time
> > it takes to completion of everything?
> >
> > This part of your program:
> >          for (i= 0; i<8; i++)
> >                      pthread_join(tid[i], NULL);
> >
> > Cares about the order the threads finish. Do you think this might be
> > affecting your results?
>
> I don't see why it should matter. Depending on the order the threads
> finish, we will always wait in pthread_join until the last one
> finishes, and then do between 0 and 7 more pthread_joins that should
> return immediately (since the last one has already finished).

If it was instant it shouldn't matter. I'm aware of that in theory, but
there
have certainly been reports of pthread_join taking quite a while happening
in
a sort of lazy/sloppy way. I don't know why this is the case but I wondered

if it was showing up here.

I've looked through the detailed run results and found this:

Thread DS 0, TID = 7646
Thread DS 0, TID = 7645
Thread DS 1, TID = 7648
Thread DS 1, TID = 7650
Thread DS 2, TID = 7651
Thread DS 2, TID = 7652
Thread DS 3, TID = 7653
Thread DS 3, TID = 7654
Main exit ...
real 23.25

As you can see except the first 2 threads all finished in order they were
created. With the average being at about 16.5 this is a high result and
thread order was almost ideal.

Cheers,
Con


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux