Hi!

In testing the 1.3b2, I have encountered a rather strange behaviour.
First the setup:
        dual-CPU dual-core x86_64 with Myrinet 10G card
        self compiled Linux kernel 2.6.22.18, MX 1.2.7(*)
        GCC-4.1.2 (from Debian etch), Torque 2.1.10
        OpenMPI 1.3b2 (tar.gz from download page)
        IMB 3.1

(*) I'm actually tracking a problem together with Myricom people, so it's not a vanilla 1.2.7, but 1.2.7 with a tiny patch; I believe that this has no influence

When starting an IMB run with the default settings, in all collective communication functions I see huge jumps around 32-1024 bytes and flat results around 1K-16K like:

#----------------------------------------------------------------
# Benchmarking Allgatherv
# #processes = 64
#----------------------------------------------------------------
       #bytes #repetitions  t_min[usec]  t_max[usec]  t_avg[usec]
            0         1000         0.19         0.21         0.19
            1         1000        35.29        35.30        35.29
            2         1000        36.01        36.03        36.02
            4         1000        38.97        38.98        38.98
            8         1000        42.12        42.13        42.13
           16         1000        45.76        45.77        45.77
           32         1000     19991.83     20011.84     20005.29
           64         1000     38561.52     38599.66     38587.74
          128         1000     58263.81     58305.74     58293.48
          256         1000     77382.83     77425.93     77412.49
          512         1000     95981.97     96022.70     96010.73
         1024         1000    480838.00    481214.78    481027.05
         2048         1000    480522.97    480917.02    480727.98
         4096         1000    480762.69    481134.49    480955.03
         8192         1000    481136.70    481505.36    481334.86
        16384         1000    483629.46    483889.28    483759.38
        32768         1000     23809.47     23810.27     23809.62
        65536          640      7085.58      7085.91      7085.69
       131072          320     11928.29     11929.29     11928.72
       262144          160     22174.66     22177.67     22175.94
       524288           80     42270.91     42283.90     42277.55
      1048576           40     82389.85     82461.10     82428.26
      2097152           20    161347.04    161624.54    161485.84
      4194304           10    321467.52    322562.79    322019.24

This happens on various numbers of nodes and is reproducable - I have repeated the run 5 times on 8 nodes.

I have not seen such results with 1.2.x series with either OB1+BTL or CM+MTL, timing increases rather smoothly. Trying various options with 1.3b2:

--mca pml cm --mca mtl mx               works well
--mca pml cm --mca btl mx,sm,self       works well
--mca pml ob1 --mca btl mx,sm,self      jumps like above

From what I know, the 1.2.x series defaulted to OB1+BTL; CM was only
possible with a MTL which internally implemented sm and self, so second test above would have failed (please correct me if I'm wrong).

The README for 1.3b2 specifies that CM is now chosen if possible; in my trials, when I specify CM+BTL, it doesn't complain and works well. However either the default (no options) or OB1+BTL leads to the jumps mentioned above, which makes me believe that OB1+BTL is still chosen as default, contrary to what the README specifies.

So there are 2 issues:
- which is right, the README or the runtime behaviour that I see ?
- is it normal for the OB1+BTL to behave so poorly with MX ?

Thanks for any insight into this issues.

--
Bogdan Costescu

IWR, University of Heidelberg, INF 368, D-69120 Heidelberg, Germany
Phone: +49 6221 54 8240, Fax: +49 6221 54 8850
E-mail: bogdan.coste...@iwr.uni-heidelberg.de

Reply via email to