[parsec-users] Fwd: Swaptions communication

Siddharth Nilakantan sid.nil at gmail.com
Tue Nov 12 23:07:52 EST 2013


That sounds like it will be harder to trace. I am intercepting pthread API
calls, but I did not see any synchronization calls to the pthread API, so
I'm guessing the standard library has some other locking mechanism that I
would need to intercept in order to see this. Any ideas would be
appreciated. Either ways, thanks for the info.
Sid


On 8 November 2013 16:28, abhisekpan at gmail.com <abhisekpan at gmail.com> wrote:

> Hi SIddharth,
>
> I do not think the code was executed in kernel mode, we saw some sharing
> in GEMS-ruby even when we were filtering the kernel-mode accesses. That
> would mean these were happening inside the standard library implementation,
> but probably not inside system calls. Also we were using the old
> simics-GEMS framework, and kernel mode accesses are visible to ruby.
> Unfortunately, I am not very familiar with the GEM5 set-up.
>
> Best,
> Abhisek
>
>
> On Fri, Nov 8, 2013 at 12:18 PM, Siddharth Nilakantan <sid.nil at gmail.com>wrote:
>
>> Hi all,
>>
>>  Very sorry for the late response. I didn't get an explicit reply in my
>> mail inbox, but rather a digest version of daily mails and I missed your
>> responses.
>>
>> Kishore,
>>
>> I think Abhisek answered your question. I saw communication between all
>> threads. The paper I linked to, has a thread communication pattern in
>> Figure 5. Take a look at that.
>>
>> Abhisek,
>>
>> Thanks for the info. How did you narrow in on the function names that the
>> addresses were accessed under? Am I correct in assuming that these library
>> calls are executed in kernel mode? The simulation framework I am using does
>> not have visibility into what happens in the kernel. I wonder how Gem5's SE
>> mode would handle such calls. Would it do the appropriate locking.
>>
>> Sid
>>
>>
>> On 31 October 2013 12:00, <parsec-users-request at lists.cs.princeton.edu>wrote:
>>
>>> Send parsec-users mailing list submissions to
>>>         parsec-users at lists.cs.princeton.edu
>>>
>>> To subscribe or unsubscribe via the World Wide Web, visit
>>>         https://lists.cs.princeton.edu/mailman/listinfo/parsec-users
>>> or, via email, send a message with subject or body 'help' to
>>>         parsec-users-request at lists.cs.princeton.edu
>>>
>>> You can reach the person managing the list at
>>>         parsec-users-owner at lists.cs.princeton.edu
>>>
>>> When replying, please edit your Subject line so it is more specific
>>> than "Re: Contents of parsec-users digest..."
>>>
>>> Today's Topics:
>>>
>>>    1. Fwd: Swaptions communication (Siddharth Nilakantan)
>>>    2. Re: Fwd: Swaptions communication (kishore kumar)
>>>    3. Re: Fwd: Swaptions communication (abhisekpan at gmail.com)
>>>
>>>
>>> ---------- Forwarded message ----------
>>> From: Siddharth Nilakantan <sid.nil at gmail.com>
>>> To: parsec-users at lists.cs.princeton.edu
>>> Cc:
>>> Date: Wed, 30 Oct 2013 19:56:32 -0400
>>> Subject: [parsec-users] Fwd: Swaptions communication
>>> Hi All,
>>>
>>> I've been running some multi-core simulations with Swaptions and I've
>>> noticed that there is thread communication. From looking at the source code
>>> for swaptions, there should be no communication, as all threads work on
>>> independent data. Hence, the lack of synchronization primitives as well.
>>>
>>> I ran simmedium (32 swaptions), 16 threads and 8 cores. It should divide
>>> up evenly and there should be no communication at all. These guys also find
>>> that swaptions has communication:
>>> http://parsec.cs.princeton.edu/publications/barrow-williams09comm.pdf
>>>
>>> Can anyone explain to me why Swaptions exhibits communication?
>>>
>>> Regards,
>>> Siddharth Nilakantan
>>>
>>>
>>>
>>> ---------- Forwarded message ----------
>>> From: kishore kumar <kishoreguptaos at gmail.com>
>>> To: PARSEC Users <parsec-users at lists.cs.princeton.edu>
>>> Cc:
>>> Date: Wed, 30 Oct 2013 17:09:28 -0700
>>> Subject: Re: [parsec-users] Fwd: Swaptions communication
>>> Hi Siddharth,
>>>
>>> How do you find that there is a communication between threads? Which
>>> data?
>>>
>>> Best,
>>> Kishore Kumar Pusukuri
>>> http://www.cs.ucr.edu/~kishore
>>>
>>>
>>> On Wed, Oct 30, 2013 at 4:56 PM, Siddharth Nilakantan <sid.nil at gmail.com
>>> > wrote:
>>>
>>>> Hi All,
>>>>
>>>> I've been running some multi-core simulations with Swaptions and I've
>>>> noticed that there is thread communication. From looking at the source code
>>>> for swaptions, there should be no communication, as all threads work on
>>>> independent data. Hence, the lack of synchronization primitives as well.
>>>>
>>>> I ran simmedium (32 swaptions), 16 threads and 8 cores. It should
>>>> divide up evenly and there should be no communication at all. These guys
>>>> also find that swaptions has communication:
>>>> http://parsec.cs.princeton.edu/publications/barrow-williams09comm.pdf
>>>>
>>>> Can anyone explain to me why Swaptions exhibits communication?
>>>>
>>>> Regards,
>>>> Siddharth Nilakantan
>>>>
>>>>
>>>> _______________________________________________
>>>> parsec-users mailing list
>>>> parsec-users at lists.cs.princeton.edu
>>>> https://lists.cs.princeton.edu/mailman/listinfo/parsec-users
>>>>
>>>>
>>>
>>>
>>> ---------- Forwarded message ----------
>>> From: "abhisekpan at gmail.com" <abhisekpan at gmail.com>
>>> To: PARSEC Users <parsec-users at lists.cs.princeton.edu>
>>> Cc:
>>> Date: Wed, 30 Oct 2013 20:30:08 -0400
>>> Subject: Re: [parsec-users] Fwd: Swaptions communication
>>> Hi Siddharth,
>>>
>>> As far as I remember, we saw that the swaption threads use some floating
>>> point libraries (sqrt calls maybe) which do not always declare per-thread
>>> data structures, and hence some data is shared by all threads. I am sorry I
>>> can not be more precise at this point, but you are right in that the code
>>> does not explicitly communicate, and the communication happens through some
>>> library calls. Hope this helps you in some little way!
>>>
>>> The way I found this was through the following: dis-assemble the code
>>> (static build), run it in simics, and then compare the logical addresses
>>> which are accessed by more than one cores.
>>>
>>>  Thanks,
>>> Abhisek
>>>
>>>
>>> On Wed, Oct 30, 2013 at 7:56 PM, Siddharth Nilakantan <sid.nil at gmail.com
>>> > wrote:
>>>
>>>> Hi All,
>>>>
>>>> I've been running some multi-core simulations with Swaptions and I've
>>>> noticed that there is thread communication. From looking at the source code
>>>> for swaptions, there should be no communication, as all threads work on
>>>> independent data. Hence, the lack of synchronization primitives as well.
>>>>
>>>> I ran simmedium (32 swaptions), 16 threads and 8 cores. It should
>>>> divide up evenly and there should be no communication at all. These guys
>>>> also find that swaptions has communication:
>>>> http://parsec.cs.princeton.edu/publications/barrow-williams09comm.pdf
>>>>
>>>> Can anyone explain to me why Swaptions exhibits communication?
>>>>
>>>> Regards,
>>>> Siddharth Nilakantan
>>>>
>>>>
>>>> _______________________________________________
>>>> parsec-users mailing list
>>>> parsec-users at lists.cs.princeton.edu
>>>> https://lists.cs.princeton.edu/mailman/listinfo/parsec-users
>>>>
>>>>
>>>
>>>
>>> _______________________________________________
>>> parsec-users mailing list
>>> parsec-users at lists.cs.princeton.edu
>>> https://lists.cs.princeton.edu/mailman/listinfo/parsec-users
>>>
>>>
>>
>
>
> --
> Abhisek
> Live Long and Prosper
>
> _______________________________________________
> parsec-users mailing list
> parsec-users at lists.cs.princeton.edu
> https://lists.cs.princeton.edu/mailman/listinfo/parsec-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cs.princeton.edu/pipermail/parsec-users/attachments/20131112/e0b4e04f/attachment.htm>


More information about the parsec-users mailing list