<div dir="ltr"><div dir="auto"><div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, 16 May, 2020, 10:30 PM , <<a href="mailto:discuss-request@mpich.org" target="_blank">discuss-request@mpich.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Send discuss mailing list submissions to<br>
        <a href="mailto:discuss@mpich.org" rel="noreferrer" target="_blank">discuss@mpich.org</a><br>
<br>
To subscribe or unsubscribe via the World Wide Web, visit<br>
        <a href="https://lists.mpich.org/mailman/listinfo/discuss" rel="noreferrer noreferrer" target="_blank">https://lists.mpich.org/mailman/listinfo/discuss</a><br>
or, via email, send a message with subject or body 'help' to<br>
        <a href="mailto:discuss-request@mpich.org" rel="noreferrer" target="_blank">discuss-request@mpich.org</a><br>
<br>
You can reach the person managing the list at<br>
        <a href="mailto:discuss-owner@mpich.org" rel="noreferrer" target="_blank">discuss-owner@mpich.org</a><br>
<br>
When replying, please edit your Subject line so it is more specific<br>
than "Re: Contents of discuss digest..."<br>
<br>
<br>
Today's Topics:<br>
<br>
   1.  Understanding process bindings in MPICH (hritikesh semwal)<br>
   2. Re:  Understanding process bindings in MPICH (Benson Muite)<br>
   3. Re:  Understanding process bindings in MPICH (Benson Muite)<br>
<br>
<br>
----------------------------------------------------------------------<br>
<br>
Message: 1<br>
Date: Fri, 15 May 2020 23:22:35 +0530<br>
From: hritikesh semwal <<a href="mailto:hritikesh.semwal@gmail.com" rel="noreferrer" target="_blank">hritikesh.semwal@gmail.com</a>><br>
To: Benson Muite via discuss <<a href="mailto:discuss@mpich.org" rel="noreferrer" target="_blank">discuss@mpich.org</a>><br>
Subject: [mpich-discuss] Understanding process bindings in MPICH<br>
Message-ID:<br>
        <<a href="mailto:CAA%2B35d2JQ25SYkqST9A5aPN-KuqHSkK7oC6OThsB9KRQvP6d9g@mail.gmail.com" rel="noreferrer" target="_blank">CAA+35d2JQ25SYkqST9A5aPN-KuqHSkK7oC6OThsB9KRQvP6d9g@mail.gmail.com</a>><br>
Content-Type: text/plain; charset="utf-8"<br>
<br>
Hello,<br>
<br>
I am working on a parallel CFD solver with MPI and I am using an account on<br>
a cluster to run my executable. The hardware structure of my account is as<br>
follows;<br>
<br>
Architecture:          x86_64<br>
CPU op-mode(s):        32-bit, 64-bit<br>
Byte Order:            Little Endian<br>
CPU(s):                32<br>
On-line CPU(s) list:   0-31<br>
Thread(s) per core:    2<br>
Core(s) per socket:    8<br>
CPU socket(s):         2<br>
NUMA node(s):          2<br>
Vendor ID:             GenuineIntel<br>
CPU family:            6<br>
Model:                 62<br>
Stepping:              4<br>
CPU MHz:               2600.079<br>
BogoMIPS:              5199.25<br>
Virtualization:        VT-x<br>
L1d cache:             32K<br>
L1i cache:             32K<br>
L2 cache:              256K<br>
L3 cache:              20480K<br>
NUMA node0 CPU(s):     0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30<br>
NUMA node1 CPU(s):     1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31<br>
<br>
Initially, I was running my executable with</blockquote></div></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> any binding options and in that<br>
case, whenever I was switching from 2 to 4 processors my computation time<br>
was also increasing along with communication time inside some iterative<br>
loop.<br>
<br>
Today, somewhere I read about binding options in MPI through which I can<br>
manage the allocation of processors. Initially, I used the "-bind-to core"<br>
option and the results were different and I got time reduction up to 16<br>
processors and after that with 24 and 32 processors, it has started<br>
increasing. Results of timing are as follows;<br>
2 procs- 160 seconds, 4 procs- 84 seconds, 8 procs- 45 seconds, 16 procs-<br>
28 seconds, 24 procs- 38 seconds, 32 procs- 34 seconds.<br>
<br>
After that, I used some other combinations of binding option but did not<br>
get better timing results compared to -bind-to core option. So, I back<br>
edited the bind to option to core but now I am getting different timing<br>
results with the same executable which are as follows,<br>
2 procs- 164 seconds, 4 procs- 85 seconds, 8 procs- 45 seconds, 16 procs-<br>
48 seconds, 24 procs- 52 seconds, 32 seconds- 98 seconds.<br>
<br>
I have following two questions for which I am seeking your help,<br>
<br>
1. Can anyone please suggest me is it possible an optimum binding and<br>
mapping options  based on my cluster account hardware topology?? If yes<br>
then please tell me.<br>
2. Why I am getting such an irregular pattern of jump in timing without<br>
binding option and why with a binding option, my timings are varying for<br>
each run? Is it my cluster network problem or my MPI code problem?<br>
<br>
If you need further details about my iterative loop then please tell me. As<br>
this message got too long I can share it later if you think above data is<br>
not sufficient.<br>
<br>
Thank you.<br>
-------------- next part --------------<br>
An HTML attachment was scrubbed...<br>
URL: <<a href="http://lists.mpich.org/pipermail/discuss/attachments/20200515/9316fd02/attachment-0001.html" rel="noreferrer noreferrer" target="_blank">http://lists.mpich.org/pipermail/discuss/attachments/20200515/9316fd02/attachment-0001.html</a>><br>
<br>
------------------------------<br>
<br>
Message: 2<br>
Date: Fri, 15 May 2020 21:02:47 +0300<br>
From: "Benson Muite" <<a href="mailto:benson_muite@emailplus.org" rel="noreferrer" target="_blank">benson_muite@emailplus.org</a>><br>
To: "Benson Muite via discuss" <<a href="mailto:discuss@mpich.org" rel="noreferrer" target="_blank">discuss@mpich.org</a>><br>
Subject: Re: [mpich-discuss] Understanding process bindings in MPICH<br>
Message-ID: <<a href="mailto:52dd313a-dfe5-4e1e-8cb0-c62ffd5cd85c@www.fastmail.com" rel="noreferrer" target="_blank">52dd313a-dfe5-4e1e-8cb0-c62ffd5cd85c@www.fastmail.com</a>><br>
Content-Type: text/plain; charset="us-ascii"<br>
<br>
<br>
<br>
On Fri, May 15, 2020, at 8:52 PM, hritikesh semwal via discuss wrote:<br>
> Hello,<br>
> <br>
> I am working on a parallel CFD solver with MPI and I am using an account on a cluster to run my executable. The hardware structure of my account is as follows;<br>
> <br>
> Architecture: x86_64<br>
> CPU op-mode(s): 32-bit, 64-bit<br>
> Byte Order: Little Endian<br>
> CPU(s): 32<br>
> On-line CPU(s) list: 0-31<br>
> Thread(s) per core: 2<br>
> Core(s) per socket: 8<br>
> CPU socket(s): 2<br>
> NUMA node(s): 2<br>
> Vendor ID: GenuineIntel<br>
> CPU family: 6<br>
> Model: 62<br>
> Stepping: 4<br>
> CPU MHz: 2600.079<br>
> BogoMIPS: 5199.25<br>
> Virtualization: VT-x<br>
> L1d cache: 32K<br>
> L1i cache: 32K<br>
> L2 cache: 256K<br>
> L3 cache: 20480K<br>
> NUMA node0 CPU(s): 0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30<br>
> NUMA node1 CPU(s): 1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31<br>
> <br>
> Initially, I was running my executable with (typo *without)any binding options and in that case, whenever I was switching from 2 to 4 processors my computation time was also increasing along with communication time inside some iterative loop. <br>
> <br>
> Today, somewhere I read about binding options in MPI through which I can manage the allocation of processors. Initially, I used the "-bind-to core" option and the results were different and I got time reduction up to 16 processors and after that with 24 and 32 processors, it has started increasing. Results of timing are as follows;<br>
> 2 procs- 160 seconds, 4 procs- 84 seconds, 8 procs- 45 seconds, 16 procs- 28 seconds, 24 procs- 38 seconds, 32 procs- 34 seconds.<br>
<br>
This seems reasonable. Are you able to turn of hyperthreading? For most numerical codes this is not useful as they are typically bandwidth limited. Thus for more than 16 processors will not see much speed up.<br></blockquote><div> </div><div>Speed up should not be much but the time is also increasing. How can I turn on Hyperthreading?</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
-------------- next part --------------<br>
An HTML attachment was scrubbed...<br>
URL: <<a href="http://lists.mpich.org/pipermail/discuss/attachments/20200515/d0327a90/attachment-0001.html" rel="noreferrer noreferrer" target="_blank">http://lists.mpich.org/pipermail/discuss/attachments/20200515/d0327a90/attachment-0001.html</a>><br>
<br>
------------------------------<br>
<br>
Message: 3<br>
Date: Sat, 16 May 2020 10:31:30 +0300<br>
From: "Benson Muite" <<a href="mailto:benson_muite@emailplus.org" rel="noreferrer" target="_blank">benson_muite@emailplus.org</a>><br>
To: "Benson Muite via discuss" <<a href="mailto:discuss@mpich.org" rel="noreferrer" target="_blank">discuss@mpich.org</a>><br>
Subject: Re: [mpich-discuss] Understanding process bindings in MPICH<br>
Message-ID: <<a href="mailto:e93484c1-3604-49f3-9d9a-2a307270ca9c@www.fastmail.com" rel="noreferrer" target="_blank">e93484c1-3604-49f3-9d9a-2a307270ca9c@www.fastmail.com</a>><br>
Content-Type: text/plain; charset="us-ascii"<br>
<br>
<br>
On Fri, May 15, 2020, at 8:52 PM, hritikesh semwal via discuss wrote:<br>
> Hello,<br>
> <br>
> I am working on a parallel CFD solver with MPI and I am using an account on a cluster to run my executable. The hardware structure of my account is as follows;<br>
> <br>
> Architecture: x86_64<br>
> CPU op-mode(s): 32-bit, 64-bit<br>
> Byte Order: Little Endian<br>
> CPU(s): 32<br>
> On-line CPU(s) list: 0-31<br>
> Thread(s) per core: 2<br>
> Core(s) per socket: 8<br>
> CPU socket(s): 2<br>
> NUMA node(s): 2<br>
> Vendor ID: GenuineIntel<br>
> CPU family: 6<br>
> Model: 62<br>
> Stepping: 4<br>
> CPU MHz: 2600.079<br>
> BogoMIPS: 5199.25<br>
> Virtualization: VT-x<br>
> L1d cache: 32K<br>
> L1i cache: 32K<br>
> L2 cache: 256K<br>
> L3 cache: 20480K<br>
> NUMA node0 CPU(s): 0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30<br>
> NUMA node1 CPU(s): 1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31<br>
> <br>
> Initially, I was running my executable with any binding options and in that case, whenever I was switching from 2 to 4 processors my computation time was also increasing along with communication time inside some iterative loop. <br>
> <br>
> Today, somewhere I read about binding options in MPI through which I can manage the allocation of processors. Initially, I used the "-bind-to core" option and the results were different and I got time reduction up to 16 processors and after that with 24 and 32 processors, it has started increasing. Results of timing are as follows;<br>
> 2 procs- 160 seconds, 4 procs- 84 seconds, 8 procs- 45 seconds, 16 procs- 28 seconds, 24 procs- 38 seconds, 32 procs- 34 seconds.<br>
> <br>
> After that, I used some other combinations of binding option but did not get better timing results compared to -bind-to core option. So, I back edited the bind to option to core but now I am getting different timing results with the same executable which are as follows,<br>
> 2 procs- 164 seconds, 4 procs- 85 seconds, 8 procs- 45 seconds, 16 procs- 48 seconds, 24 procs- 52 seconds, 32 seconds- 98 seconds.<br>
<br>
Hitesh,<br>
<br>
You might find the following online workshop useful:<br>
<a href="http://www.hlrs.de/training/2020-05-25-VI-HPS/" rel="noreferrer noreferrer" target="_blank">http://www.hlrs.de/training/2020-05-25-VI-HPS/</a></blockquote><div><br></div><div>Thanks and I will go through course outline but can you tell me reason in short here. Why time is varying differently with the different run of the same code (sometimes for 16 processors it is decreasing and sometimes it is increasing for 16 processors). I don't know but every time I type the <a href="mailto:discuss@mpich.org">discuss@mpich.org</a>, it automatically types your name first. Does my mail go to all members of the group? The two questions I have asked in my first mail are very important for my project completion so I request all members to please help me with this matter. I can not work further with this uncertainty in my code timings all the time, which can be get slowed any time.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
<br>
Regards,<br>
Benson<br>
-------------- next part --------------<br>
An HTML attachment was scrubbed...<br>
URL: <<a href="http://lists.mpich.org/pipermail/discuss/attachments/20200516/666681af/attachment-0001.html" rel="noreferrer noreferrer" target="_blank">http://lists.mpich.org/pipermail/discuss/attachments/20200516/666681af/attachment-0001.html</a>><br>
<br>
------------------------------<br>
<br>
Subject: Digest Footer<br>
<br>
_______________________________________________<br>
discuss mailing list<br>
<a href="mailto:discuss@mpich.org" rel="noreferrer" target="_blank">discuss@mpich.org</a><br>
<a href="https://lists.mpich.org/mailman/listinfo/discuss" rel="noreferrer noreferrer" target="_blank">https://lists.mpich.org/mailman/listinfo/discuss</a><br>
<br>
<br>
------------------------------<br>
<br>
End of discuss Digest, Vol 91, Issue 21<br>
***************************************<br>
</blockquote></div></div></div>
</div>