[OMPI users] ETH BTL

2007-10-31 Thread Mattijs Janssens
Sorry if this has already been discussed, am new 
to this list.

I came across the ETH BTL from 
http://archiv.tu-chemnitz.de/pub/2006/0111/data/hoefler-CSR-06-06.pdf 
and was wondering whether this protocol is 
available / integrated into OpenMPI.

Kind regards,

Mattijs

-- 

Mattijs Janssens


Re: [OMPI users] weird problem with passing data between nodes

2008-06-13 Thread Mattijs Janssens
Sounds like a typical deadlock situation. All processors are waiting for one 
another.

Not a specialist but from what I know if the messages are small enough they'll 
be offloaded to kernel/hardware and there is no deadlock. That why it might 
work for small messages and/or certain mpi implementations.

Solutions:
- come up with a global communication schedule such that if one processor 
sends the receiver is receiving.
- use mpi_bsend. Might be slower.
- use mpi_isend, mpi_irecv (but then you'll have to make sure the buffers stay 
valid for the duration of the communication)

On Friday 13 June 2008 01:55, zach wrote:
> I have a weird problem that shows up when i use LAM or OpenMPI but not
> MPICH.
>
> I have a parallelized code working on a really large matrix. It
> partitions the matrix column-wise and ships them off to processors,
> so, any given processor is working on a matrix with the same number of
> rows as the original but reduced number of columns. Each processor
> needs to send a single column vector entry
> from its own matrix to the adjacent processor and visa versa as part
> of the algorithm.
>
> I have found that depending on the number of rows of the matrix -or,
> the size of the vector being sent using MPI_Send, MPI_Recv, the
> simulation will hang.
> It is only until i reduce this dimension to a certain max number will
> the sim run properly. I have also found that this magic number differs
> depending on the system I am using, eg my home quad-core box or remote
> cluster.
>
> As i mentioned i have not had this issue with mpich. I would like to
> understand why it is happening rather than just defect over to mpich
> to get by.
>
> Any help would be appreciated!
> zach
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users



Re: [OMPI users] Parallel Quicksort

2009-08-06 Thread Mattijs Janssens
On Thursday 06 August 2009 10:17:36 Prasadcse Perera wrote:
> Hello All,
> This may not be something relates to the forum, so sorry for asking this
> first of all :). Currently I have been working on an implementation of
> parallel Quicksort using MPI and now I need some standard parallel
> Quicksort implementation(s) for a performance evaluation. So can someone
> recommend me any available implementation that I can use ?

In OpenFOAM there is an implementation of the "Parallel Sorting by Regular 
Sampling" algoritm as a generic container 'ParSortableList'. Should be easy to 
make a test application but you'll need to have OpenFOAM installed.

Mattijs

-- 

Mattijs Janssens

OpenCFD Ltd.
9 Albert Road,
Caversham,
Reading RG4 7AN.
Tel: +44 (0)118 9471030
Email: m.janss...@opencfd.co.uk
URL: http://www.OpenCFD.co.uk



Re: [OMPI users] mpirun only works when -np <4 (Gus Correa)

2009-12-10 Thread Mattijs Janssens
t; >>
> >>Im honestly not sure what this means..
> >>
> >>
> >>Some programs mix the two.
> >>OpenMP only works in a shared memory environment (e.g. a
> >> single computer like yours), whereas MPI can use both shared memory and
> >> work across a network (e.g. in a cluster).
> >>There are other differences too.
> >>
> >>Unlikely that you have this hybrid type of parallel program,
> >>otherwise there would be some reference to OpenMP
> >>on the very program configuration files, program
> >>documentation, etc.
> >>Also, in general the configuration scripts of these hybrid
> >>programs can turn on MPI only, or OpenMP only, or both,
> >>depending on how you configure.
> >>
> >>Even to compile with OpenMP you would need a proper compiler
> >>flag, but that one might be hidden in a Makefile too, making
> >>a bit hard to find. "grep -n mp Makefile" may give a clue.
> >>Anything on the documentation that mentions threads or
> >> OpenMP?
> >>
> >>FYI, here is OpenMP:
> >>http://openmp.org/wp/
> >>
> >>Thanks for all your help!
> >>
> >> > Matt
> >>
> >>Well, so far it didn't really help. :(
> >>
> >>But let's hope to find a clue,
> >>maybe with a little help of
> >>our list subscriber friends.
> >>
> >>Gus Correa
> >>
> >>  -
> >>Gustavo Correa
> >>Lamont-Doherty Earth Observatory - Columbia University
> >>Palisades, NY, 10964-8000 - USA
> >>
> >>  -
> >>
> >>Hi Matthew
> >>
> >>More guesses/questions than anything else:
> >>
> >>1) Is there any additional load on this machine?
> >>We had problems like that (on different machines)
> >> when users start listening to streaming video, doing Matlab
> >> calculations,
> >>etc, while the MPI programs are running.
> >>This tends to oversubscribe the cores, and may lead
> >>to crashes.
> >>
> >>2) RAM:
> >>Can you monitor the RAM usage through "top"?
> >>(I presume you are on Linux.)
> >>It may show unexpected memory leaks, if they exist.
> >>
> >>On "top", type "1" (one) see all cores, type "f"
> >>then "j"
> >>to see the core number associated to each process.
> >>
> >>3) Do the programs work right with other MPI flavors
> >>(e.g. MPICH2)?
> >>If not, then it is not OpenMPI's fault.
> >>
> >>4) Any possibility that the MPI versions/flavors of
> >>mpicc and
> >>mpirun that you are using to compile and launch the
> >>program are not the
> >>same?
> >>
> >>5) Are you setting processor affinity on mpiexec?
> >>
> >>mpiexec -mca mpi_paffinity_alone 1 -np ... bla, bla
> >> ...
> >>
> >>Context switching across the cores may also cause
> >>trouble, I suppose.
> >>
> >>6) Which Linux are you using (uname -a)?
> >>
> >>On other mailing lists I read reports that only
> >>quite recent kernels
> >>support all the Intel Nehalem processor features
> >> well. I don't have Nehalem, I can't help here,
> >>but the information may be useful
> >>for other list subscribers to help you.
> >>
> >>***
> >>
> >>As for the programs, some programs require specific
> >>setup,
> >>(and even specific compilation) when the number of
> >>MPI processes
> >>vary.
> >>It may help if you tell us a link to the program
> >> sites.
> >>
> >>Baysian statistics is not totally out of our
> >> business, but phylogenetic genetic trees is not really my league, hence
> >> forgive me any bad guesses, please,
> >>but would it need specific compilation or a different
> >>set of input parameters to run correctly on a
> >> different number of processors?
> >>Do the programs mix MPI (message passing) with
> >>OpenMP (threads)?
> >>
> >>I found this MrBayes, which seems to do the above:
> >>
> >>http://mrbayes.csit.fsu.edu/
> >>http://mrbayes.csit.fsu.edu/wiki/index.php/Main_Page
> >>
> >>As for the ABySS, what is it, where can it be found?
> >>Doesn't look like a deep ocean circulation model, as
> >>the name suggest.
> >>
> >>My $0.02
> >>Gus Correa
> >>
> >>
> >> 
> >> 
> >> ___
> >>users mailing list
> >>us...@open-mpi.org <mailto:us...@open-mpi.org>
> >>
> >>http://www.open-mpi.org/mailman/listinfo.cgi/users
> >>
> >>
> >>___
> >>users mailing list
> >>us...@open-mpi.org <mailto:us...@open-mpi.org>
> >>
> >>http://www.open-mpi.org/mailman/listinfo.cgi/users
> >>
> >>
> >>_
> >>Matthew MacManes
> >>PhD Candidate
> >>University of California- Berkeley
> >>Museum of Vertebrate Zoology
> >>Phone: 510-495-5833
> >>Lab Website: http://ib.berkeley.edu/labs/lacey
> >>Personal Website: http://macmanes.com/
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >> 
> >> 
> >>
> >>___
> >>users mailing list
> >>us...@open-mpi.org <mailto:us...@open-mpi.org>
> >>
> >>http://www.open-mpi.org/mailman/listinfo.cgi/users
> >>
> >>
> >>___
> >>users mailing list
> >>us...@open-mpi.org <mailto:us...@open-mpi.org>
> >>
> >>http://www.open-mpi.org/mailman/listinfo.cgi/users
> >>
> >>
> >>
> >> 
> >>
> >> ___
> >> users mailing list
> >> us...@open-mpi.org
> >> http://www.open-mpi.org/mailman/listinfo.cgi/users
> >
> > ___
> > users mailing list
> > us...@open-mpi.org
> > http://www.open-mpi.org/mailman/listinfo.cgi/users

-- 

Mattijs Janssens

OpenCFD Ltd.
9 Albert Road,
Caversham,
Reading RG4 7AN.
Tel: +44 (0)118 9471030
Email: m.janss...@opencfd.co.uk
URL: http://www.OpenCFD.co.uk


Re: [OMPI users] OpenMPI runtime-specific environment variable?

2008-10-21 Thread Mattijs Janssens
Most message passing libraries that I've worked with use command line 
arguments (that get filtered out in MPI_Init) to pass in information to the 
started jobs. You could have a check for 'strange' command line arguments.

Mattijs

On Monday 20 October 2008 23:40, Adams, Brian M wrote:
> I work on an application (DAKOTA) that has opted for single binaries with
> source code to detect serial vs. MPI execution at run-time.  While I
> realize there are many other ways to handle this (wrapper scripts,
> command-line switches, different binaries for serial vs. MPI, etc.), I'm
> looking for a reliable way to detect (in source) whether a binary has been
> launched in serial or with orterun.
>
> We typically do this via detecting environment variables, so the easiest
> path for me would be to know an environment variable present when an
> application is invoked with orterun that is not typically present outside
> that MPI runtime environment.  Some candidates that came up in my
> particular environment include the following, but I don't know if any is a
> safe bet:
>
> OMPI_MCA_gpr_replica_uri
> OMPI_MCA_mpi_paffinity_processor
> OMPI_MCA_mpi_yield_when_idle
> OMPI_MCA_ns_nds
> OMPI_MCA_ns_nds_cellid
> OMPI_MCA_ns_nds_jobid
> OMPI_MCA_ns_nds_num_procs
> OMPI_MCA_ns_nds_vpid
> OMPI_MCA_ns_nds_vpid_start
> OMPI_MCA_ns_replica_uri
> OMPI_MCA_orte_app_num
> OMPI_MCA_orte_base_nodename
> OMPI_MCA_orte_precondition_transports
> OMPI_MCA_pls
> OMPI_MCA_ras
> OMPI_MCA_rds
> OMPI_MCA_rmaps
> OMPI_MCA_rmgr
> OMPI_MCA_universe
>
> I'd also welcome suggestions for other in-source tests that might reliably
> detect run via orterun.  Thanks!
>
> Brian
> --
> Brian M. Adams, PhD (bria...@sandia.gov)
> Optimization and Uncertainty Estimation
> Sandia National Laboratories, Albuquerque, NM
> http://www.sandia.gov/~briadam

-- 

Mattijs Janssens

OpenCFD Ltd.
9 Albert Road,
Caversham,
Reading RG4 7AN.
Tel: +44 (0)118 9471030
Email: m.janss...@opencfd.co.uk
URL: http://www.OpenCFD.co.uk


Re: [OMPI users] MPI flavor-agnostic libraries

2009-01-14 Thread Mattijs Janssens
We did something similar in OpenFOAM by encapsulating our communications 
routines into a separate shared library which gets loaded through 
LD_LIBRARY_PATH.

The api of this library does not expose any mpi specifics so for a new MPI 
version we only have to recompile our small communications library against 
the new MPI and the rest of the code works as normal.

Then we can just use LD_LIBRARY_PATH to pick which communications library to 
load and hence which mpi to use.

On Wednesday 14 January 2009 14:49, Gregory D Abram wrote:
> I'd like to release binary libraries that use MPI but are agnostic as to
> which flavor or MPI (eg. OpenMPI, MVAPICH, LAM...) that is used by the
> application linking the libraries.  I've seen that there are some
> significant differences that stand in the way, for example that MPI_Comm is
> a pointer on OpenMPI and an integer on MVAPICH.  I can see some ways that
> might work, but they are pretty complex - for example, I could create an
> intercept library that loads a real MPI library explicitly and do whatever
> needs be done (for example, translating MPI_Comm parameters).  Does anyone
> know of anything that might help?

-- 

Mattijs Janssens

OpenCFD Ltd.
9 Albert Road,
Caversham,
Reading RG4 7AN.
Tel: +44 (0)118 9471030
Email: m.janss...@opencfd.co.uk
URL: http://www.OpenCFD.co.uk


Re: [OMPI users] Low performance of Open MPI-1.3 over Gigabit

2009-03-04 Thread Mattijs Janssens
Your Intel processors are I assume not the new Nehalem/I7 ones? The older 
quad-core ones are seriously memory bandwidth limited when running a memory 
intensive application. That might explain why using all 8 cores per node 
slows down your calculation.

Why do you get such a difference between cpu time and elapsed time? Is your 
code doing any file IO or maybe waiting for one of the processors? Do you use 
non-blocking communication wherever possible?

Regards,

Mattijs

On Wednesday 04 March 2009 05:46, Sangamesh B wrote:
> Hi all,
>
> Now LAM-MPI is also installed and tested the fortran application by
> running with LAM-MPI.
>
> But LAM-MPI is performing still worse than Open MPI
>
> No of nodes:3 cores per node:8  total core: 3*8=24
>
>CPU TIME :1 HOURS 51 MINUTES 23.49 SECONDS
>ELAPSED TIME :7 HOURS 28 MINUTES  2.23 SECONDS
>
> No of nodes:6  cores used per node:4  total core: 6*4=24
>
>CPU TIME :0 HOURS 51 MINUTES 50.41 SECONDS
>ELAPSED TIME :6 HOURS  6 MINUTES 38.67 SECONDS
>
> Any help/suggetsions to diagnose this problem.
>
> Thanks,
> Sangamesh
>
> On Wed, Feb 25, 2009 at 12:51 PM, Sangamesh B  wrote:
> > Dear All,
> >
> >    A fortran application is installed with Open MPI-1.3 + Intel
> > compilers on a Rocks-4.3 cluster with Intel Xeon Dual socket Quad core
> > processor @ 3GHz (8cores/node).
> >
> >    The time consumed for different tests over a Gigabit connected
> > nodes are as follows: (Each node has 8 GB memory).
> >
> > No of Nodes used:6  No of cores used/node:4 total mpi processes:24
> >       CPU TIME :    1 HOURS 19 MINUTES 14.39 SECONDS
> >   ELAPSED TIME :    2 HOURS 41 MINUTES  8.55 SECONDS
> >
> > No of Nodes used:6  No of cores used/node:8 total mpi processes:48
> >       CPU TIME :    4 HOURS 19 MINUTES 19.29 SECONDS
> >   ELAPSED TIME :    9 HOURS 15 MINUTES 46.39 SECONDS
> >
> > No of Nodes used:3  No of cores used/node:8 total mpi processes:24
> >       CPU TIME :    2 HOURS 41 MINUTES 27.98 SECONDS
> >   ELAPSED TIME :    4 HOURS 21 MINUTES  0.24 SECONDS
> >
> > But the same application performs well on another Linux cluster with
> > LAM-MPI-7.1.3
> >
> > No of Nodes used:6  No of cores used/node:4 total mpi processes:24
> > CPU TIME :    1hours:30min:37.25s
> > ELAPSED TIME  1hours:51min:10.00S
> >
> > No of Nodes used:12  No of cores used/node:4 total mpi processes:48
> > CPU TIME :    0hours:46min:13.98s
> > ELAPSED TIME  1hours:02min:26.11s
> >
> > No of Nodes used:6  No of cores used/node:8 total mpi processes:48
> > CPU TIME :     1hours:13min:09.17s
> > ELAPSED TIME  1hours:47min:14.04s
> >
> > So there is a huge difference between CPU TIME & ELAPSED TIME for Open
> > MPI jobs.
> >
> > Note: On the same cluster Open MPI gives better performance for
> > inifiniband nodes.
> >
> > What could be the problem for Open MPI over Gigabit?
> > Any flags need to be used?
> > Or is it not that good to use Open MPI on Gigabit?
> >
> > Thanks,
> > Sangamesh
>
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users

-- 

Mattijs Janssens

OpenCFD Ltd.
9 Albert Road,
Caversham,
Reading RG4 7AN.
Tel: +44 (0)118 9471030
Email: m.janss...@opencfd.co.uk
URL: http://www.OpenCFD.co.uk