1
1
Граф коммитов

2708 Коммитов

Автор SHA1 Сообщение Дата
Jeff Squyres
8b786cac04 The configure test we had for checking whether openib could build
(related to the presence of posix threads and ptmalloc2) is now a
little outdated: since we don't build ptmalloc2 as part of libopal
anymore, the openib BTL's requirements are not directly tied to
ptmalloc2's anymore.  Specifically, I altered the test to:

 1. At compile time, if no threads are found, the ptmalloc2 component
    is going to be built, '''and the ptmalloc2 component is going to be
    inside libopal,''' then refuse to build the openib BTL.
 1. At run time, if no threads were available at compile time and the
    ptmalloc2 component is part of the process, then refuse to use the
    openib BTL.

Fixes trac:1537.

This commit was SVN r19652.

The following Trac tickets were found above:
  Ticket 1537 --> https://svn.open-mpi.org/trac/ompi/ticket/1537
2008-09-27 11:19:21 +00:00
Brian Barrett
76f47aaa1c Fix a bunch of compiler warnings. Refs trac:1458
This commit was SVN r19649.

The following Trac tickets were found above:
  Ticket 1458 --> https://svn.open-mpi.org/trac/ompi/ticket/1458
2008-09-26 16:15:05 +00:00
Jeff Squyres
627f1ecd36 Oops -- fix silly cut-n-paste error...
This commit was SVN r19630.
2008-09-24 20:17:54 +00:00
Jeff Squyres
d85aaf521a Also show the process name; it *is* useful, at least to us developers ;-)
This commit was SVN r19629.
2008-09-24 19:32:34 +00:00
Josh Hursey
778e387618 fix a compiler warning
This commit was SVN r19574.
2008-09-17 14:01:31 +00:00
Josh Hursey
80d05cf957 Cleanup the patch from r19566.
Thanks to George and Jeff for pointing out a better way to do this.

This commit was SVN r19573.

The following SVN revision numbers were found above:
  r19566 --> open-mpi/ompi@351c3a3a86
2008-09-17 13:55:21 +00:00
Jeff Squyres
d2d06008a0 Change the default value of mpi_leave_pinned to -1, meaning that we'll
figure it out at runtime (really meaning: we'll still default to "0"
unless something explicitly overrides to 1, such as the openib BTL).
This way, ompi_info doesn't confusingly report mpi_leave_pinned==0 for
mpi_leave_pinned, but we end up running with mpi_leave_pinned==1.

Fixes trac:1502.

This commit was SVN r19571.

The following Trac tickets were found above:
  Ticket 1502 --> https://svn.open-mpi.org/trac/ompi/ticket/1502
2008-09-16 22:06:14 +00:00
Josh Hursey
351c3a3a86 The ft_event function needs access to the bml_r2_remove_btl_progress() to ensure
that all progress events are flushed as needed across a checkpoint/restart.

This commit was SVN r19566.
2008-09-16 19:06:53 +00:00
Jeff Squyres
270f482fea Addendum to r19561: also remove a comment that is no longer true and
some code that is commented out.

This commit was SVN r19564.

The following SVN revision numbers were found above:
  r19561 --> open-mpi/ompi@17e65369be
2008-09-16 13:02:10 +00:00
George Bosilca
6a9514ee08 Make the code match the comment. I checked with Jelena, and based on the papers we
published this is the expected algorithm for the specified message and communicator
size.

This commit closes ticket #1330.

This commit was SVN r19563.
2008-09-15 23:28:40 +00:00
George Bosilca
acd3406aa7 Never drop messages. No never no more.
This is supposed to fix the ticket #1460.

This commit was SVN r19562.
2008-09-15 23:04:18 +00:00
George Bosilca
17e65369be Fix the deadlock when we run out of resources on the BTLs. Move the progress
function from the BML into the PML. The BTL progress functions are now directly
registered with the event library.

This commit was SVN r19561.
2008-09-15 22:56:23 +00:00
Jeff Squyres
4cf909a932 Fix a typpppo (thanks Rolf!).
This commit was SVN r19549.
2008-09-11 21:43:01 +00:00
Jeff Squyres
f794580bbe Print a [much] better error message when MPI processes are unable to
reach each other (this problem just bit me; I had forgotten how horrid
our previous error message was).

This commit was SVN r19548.
2008-09-11 20:52:58 +00:00
Jeff Squyres
eeabae49b9 Per http://www.open-mpi.org/community/lists/devel/2008/09/4648.php,
remove the unconditional opal_output's when mmap() fails, and instead,
conditionally output the failure message via btl_base_verbose settings.

This commit was SVN r19547.
2008-09-11 19:02:33 +00:00
Ralph Castain
e44ac3f36d Remove some historical, but now unused, cruft
This commit was SVN r19545.
2008-09-11 12:49:11 +00:00
Josh Hursey
36185ad964 Replace the old coordinated component ('coord') and replace it with a much more refined version ('bkmrk').
The new component fixes a number of problems with the old component. The core algorithm is the same, but by changing the data strucutres a bit we have improved performance and memory utilization.

There are still a couple corner cases that still need some work. However, I did not want to delay bringing this into the trunk (and v1.3 branch) for too much longer.

This commit was SVN r19537.
2008-09-10 18:29:17 +00:00
Shiqing Fan
04ee20a880 - Mainly type casts. Microsoft VC++ compiler is too strict.
This commit was SVN r19517.
2008-09-08 15:39:30 +00:00
Jeff Squyres
ec6cffcd71 Patch originally from George to improve ROMIO's performance when
checking for contiguous datatypes by using our native DDT engine
(rather than several MPI_* calls).  The majority of the work is in the
IO ROMIO module.c file, but there's a small part in
adio/common/iscontig.c that we're also submitting upstream.

This commit was SVN r19509.
2008-09-06 09:50:12 +00:00
George Bosilca
579d70edad We should use #ifdef and not #if
This commit was SVN r19504.
2008-09-05 12:44:19 +00:00
Nysal Jan
3b51258b13 Remove redundant code
Refs trac:1463

This commit was SVN r19501.

The following Trac tickets were found above:
  Ticket 1463 --> https://svn.open-mpi.org/trac/ompi/ticket/1463
2008-09-05 04:29:21 +00:00
Jeff Squyres
35c5863739 Remove a bit of redundant code -- this is error condition is now
checked in the top-level API.

This commit was SVN r19497.
2008-09-04 22:24:59 +00:00
George Bosilca
10b4664e9c Fix the problem with the unexpected MX handler. The Solution so far is to
mostly don't use this mechanism, as we have to be thread safe in order to
really take full advantage of it. The unexpected handler is called by one
of th MX threads, and we do not have control on the moment. In a non threaded
case, this will completely destroy our recv requests queues, so the safest
approach is to don't the unexpected handler.

This commit was SVN r19496.
2008-09-04 15:46:29 +00:00
George Bosilca
9e0d64b9e5 Add a send immediate for MX.
This commit was SVN r19495.
2008-09-04 15:43:56 +00:00
Jeff Squyres
7b05a14d9a Back up r19489, which was the result of a "svn ci -m ..." instead of
an "hg ci -m ...".  Oops.

This commit was SVN r19490.

The following SVN revision numbers were found above:
  r19489 --> open-mpi/ompi@ea866f9e26
2008-09-03 08:45:33 +00:00
Jeff Squyres
ea866f9e26 Up to SVN r19488
This commit was SVN r19489.

The following SVN revision numbers were found above:
  r19488 --> open-mpi/ompi@c0b8a4a9b5
2008-09-03 08:35:59 +00:00
Jeff Squyres
9a98423bbc [Re-]Fix #1463 with a little thing that I like to call "the right
way".

Don't modify coords in the top-level API function because coords is an
IN variable.  Instead, as Nysal noted, the real cause of the problem
was a missing ! down in topo_base_cart_rank.c.  Put a comment down in
topo_base_cart_rank.c explaining what's going on so that the code is
not so cryptic.

Refs trac:1363.

This commit was SVN r19487.

The following Trac tickets were found above:
  Ticket 1363 --> https://svn.open-mpi.org/trac/ompi/ticket/1363
2008-09-03 08:24:27 +00:00
Jeff Squyres
008fa8c5cc Fixes trac:1236, #1237.
* Various changes to enable 0-dimensional cartesian communicators:
   * Set various mtc_* members to NULL when there are 0 dimensions (and
     don't bother trying to memcpy these arrays when duplicating the
     communicator -- because they're NULL)
   * adjust topo_base_cart_sub to correctly handle 0 dimensions
     (simplified it a bit)
   * adjust a few error codes to return ERR_OUT_OF_RESOURCE
   * adjust error checking of CART_CREATE, CART_RANK
 * Allow MPI_GRAPH_CREATE to accept 0 == nnodes.
 * Bump reported MPI version in mpi.h to 2.1

This commit was SVN r19461.

The following Trac tickets were found above:
  Ticket 1236 --> https://svn.open-mpi.org/trac/ompi/ticket/1236
2008-08-31 19:31:10 +00:00
Brian Barrett
a68e0cff38 * Handle buffered and "complete" sends properly. Since we can always
guarantee local progress, my opinion is we don't need to do anything
    special for complete sends.  Perhaps I'm wrong on that one, in which
    case this implementation of send_complete is not quite right.
  * Give a slightly better error message when a catchall is hit, so that
    we can at least know *which* catchall is hit.

This commit was SVN r19456.
2008-08-31 18:05:00 +00:00
Shiqing Fan
08f54758bc - The MS VC compiler complains "error C2512: 'ompi_convertor_master_t' : no appropriate default constructor available", initialize it, it's not the fast path anyway.
This commit was SVN r19433.
2008-08-27 15:57:59 +00:00
Ralph Castain
f722f134f7 Check the return code from opal_paffinity before continuing to set maffinity as it can only be done if the map_to_socket_core function succeeds.
This commit was SVN r19396.
2008-08-23 03:13:29 +00:00
Ralph Castain
4ef9d15d97 Revamp the opal mca paffinity interface. We ran into a problem when we encountered machines that had "holes" in their physical processor layout - e.g., machines that supported "hotplugging", or that had unpopulated sockets. To solve that problem, we had to clarify at the API level where we were describing physical vs logical processor info, and then translate accordingly in the underlying implementation.
See opal/mca/paffinity/paffinity.h for explanation as to the physical vs logical nature of the params used in the API.

Fixes trac:1435

This commit was SVN r19391.

The following Trac tickets were found above:
  Ticket 1435 --> https://svn.open-mpi.org/trac/ompi/ticket/1435
2008-08-21 19:21:28 +00:00
Edgar Gabriel
ef2bb46e45 no need to create and free the groups. We just want to translate the ranks and we can use the internal group structures right away for that operation. Fixes an issue with groups that have not been freed previously, due to the fact that ompi_group_free was not visible here (I know, this could have been solved also by setting OMPI_DECLSPEC on ompi_group_free, but this solution should be faster.)
This commit was SVN r19362.
2008-08-19 13:59:58 +00:00
Edgar Gabriel
149ecb8d7d 1. debug the four new algorithms
2. fix a bug in the initial communicator creation of llcomm
3. fix a bug which showed up as the result of fixing issue number 2: we have
   to check now whether llcomm has really be created before freeing the 
   according llcomm in hierarch_destruct.

This commit was SVN r19361.
2008-08-18 21:54:35 +00:00
Edgar Gabriel
7cbc4a4077 adding four different algorithms for a hierarchical bcast which try to
generate an overlap between the different layers. Why four versions? Because
there is right now always the trade-off between using non-blocking operations
on a layer with a trivial, linear algorithm and using the more sophisticaed
algorithms in a blocking manner. 

- bcast_intra_seg used the bcast of lcomm and llcomm, similarly
  to original algorithm in hierarch. However, it can segment
  the message, such that we might get an overlap between the two
  layers. This overlap is based on the assumption, that a process
  might be done early with a bcast and can start the next one.
- bcast_intra_seg1: replaces the llcomm->bcast by isend/irecvs
  to increase the overlap, keeps the lcomm->bcast however
- bcast_intra_seg2: replaced lcomm->bcast by isend/irecvs
  to increase the overlap, keeps however llcomm->bcast
- bcast_intra_seg3: replaced both lcomm->bcast and llcomm->bcast
  by isend/irecvs

The code is lightly tested, more testing to follow right now.

This commit was SVN r19358.
2008-08-18 16:05:44 +00:00
George Bosilca
2499112d1c Fix indentation.
This commit was SVN r19313.
2008-08-17 20:10:54 +00:00
George Bosilca
a6e3a47102 Fix typo.
This commit was SVN r19312.
2008-08-17 20:08:38 +00:00
George Bosilca
a41dcbbc44 Play nicely with the PML. If the data is in the pending send queue, then
tell the PML we're still in charge of sending it.

This commit was SVN r19311.
2008-08-17 20:07:53 +00:00
George Bosilca
f3568a271a Replace tabs with spaces.
This commit was SVN r19310.
2008-08-17 20:06:48 +00:00
George Bosilca
10612bef8a Bring back the SM pending queue, to avoid deadlocks.
This commit fixes trac:1378.

This commit was SVN r19309.

The following Trac tickets were found above:
  Ticket 1378 --> https://svn.open-mpi.org/trac/ompi/ticket/1378
2008-08-17 19:00:50 +00:00
Jeff Squyres
c9f3f2c682 From Ralph Campbell at QLogic:
Roland noticed that the QLogic HCA driver was using the PCIe vendor ID
for the ibv_query_device so the IEEE OUI value is now used. This means
the config file should recognize the vendor ID value 0x1175 too.

This commit was SVN r19277.
2008-08-13 18:35:37 +00:00
George Bosilca
f030497072 Don't forget to set the node to some negative value or ... the memory will
be pinned to some random core.

This commit was SVN r19257.
2008-08-12 16:58:32 +00:00
Rich Graham
e64f028d62 add missing header file for errno.
This commit was SVN r19246.
2008-08-12 01:34:13 +00:00
Jeff Squyres
54ab811426 Fix CID 1036: minor resource leak on error
This commit was SVN r19236.
2008-08-11 20:37:36 +00:00
Rainer Keller
ee1fe9015a - Make sure, that the *param_index are > 0 (here, we don't pass
errors up...).
   Coverity CID 1080 - 1090
 - Really make sure, the user does not specify stupid negative values.

This commit was SVN r19233.
2008-08-11 11:21:04 +00:00
Jeff Squyres
da765cf68a Gah; bml_base_endpoint.h was listed ''twice'' in this Makefile.am; I
missed that in r19226.

This commit was SVN r19231.

The following SVN revision numbers were found above:
  r19226 --> open-mpi/ompi@d8860502df
2008-08-09 01:18:13 +00:00
Jeff Squyres
7af5f70cf3 Fix CID 529: potential static buffer overflow
This commit was SVN r19227.
2008-08-08 12:52:54 +00:00
Jeff Squyres
d8860502df Fix CID 1092: remove a useless header file (bml_base_endpoint.h -- it
didn't contain anything!) and therefore remove some include file
recursion.

This commit was SVN r19226.
2008-08-08 12:39:30 +00:00
Jeff Squyres
735c1d8bee Add a missing OMPI_DECLSPEC
This commit was SVN r19221.
2008-08-07 20:36:11 +00:00
Jeff Squyres
797ec531aa Some more work on the man pages:
* Make the creation of the build dir for the man pages a bit more
   robust (thanks to suggestions from Ralf W.).
 * Only distribute the .Xin files, not the .X man pages themselves.
 * Make the .X files depend on opal_config.h so that if you re-run
   configure and change opal_config.h (e.g., a new version), the man
   pages should get rebuilt.
 * Man pages are now cleaned with "distclean", not "maintainer-clean".
 * Fix a typo in opal_crs.7in.
 * Udpate make_dist_tarball to update "date" in the VERSION file.
 * Make make_dist_tarball a bit friendlier to hg checkouts.

This commit was SVN r19219.
2008-08-07 19:20:40 +00:00