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

460 Коммитов

Автор SHA1 Сообщение Дата
Brian Barrett
53925dfd88 * Use AC_TRY_LINK instead of AC_TRY_cOMPILE to see if the compiler hints
for prefetch and branch prediction work.  A non-happy compiler could
  just think these were functions and we wouldn't get the error, because
  we didn't try to link.

  Refs trac:287

This commit was SVN r11333.

The following Trac tickets were found above:
  Ticket 287 --> https://svn.open-mpi.org/trac/ompi/ticket/287
2006-08-22 22:20:12 +00:00
George Bosilca
8db4a55a57 Reorder the C++ compiler discovery stages. Check first the compiler vendor
before checking if we are able to compile the test program. This is required
for windows as the C++ conftest.c file generated by configure cannot be
compiled with the Microsoft cl.exe compiler (because of the exit function
prototype). So if we detect a vendor equal to microsoft we will assume
that the compiler is correctly installed (which is true on Windows most
of the time anyway).

This commit was SVN r11268.
2006-08-20 13:53:27 +00:00
George Bosilca
6b01358cc1 Generate static-component.h file C++ friendly.
This commit was SVN r11267.
2006-08-20 13:48:24 +00:00
Brian Barrett
1daa21e1e3 It appears that most versions of the IBM XL compiler (including the latest
releases on Linux and OS X) don't handle const_cast<> of 2-dimensional 
arrays properly.  If we're using one of the compilers that isn't friendly
to such casts, fall back to a standard C-style cast.

refs: #271

This commit was SVN r11263.
2006-08-19 22:55:59 +00:00
Brian Barrett
43116cd13c * Don't define _GNU_SOURCE if we are using the IBM XL compilers, as it seems
to cause them to miscompile TCP-related code.

  refs trac:276

This commit was SVN r11258.

The following Trac tickets were found above:
  Ticket 276 --> https://svn.open-mpi.org/trac/ompi/ticket/276
2006-08-18 04:12:24 +00:00
Brian Barrett
4176e61049 * Add support for building the F90 bindings library as a shared library
on almost all platforms (except OS X... sigh...).  This is the merge 
  of r10846 - 10894 from the tmp/f90-shared branch to the trunk.

This commit was SVN r11103.

The following SVN revisions from the original message are invalid or
inconsistent and therefore were not cross-referenced:
  r10846
2006-08-03 00:17:31 +00:00
Rainer Keller
12166eb0d7 - The intel-based assembler on ia64 (such as NEC's ecc) needs
.proc/.endp-declarations for functions in order to be able to
   link successfully.
   Currently used in configure, only.
   
   There has not been found another arch, where this is necessary.
   So asm-data.txt and base/default.conf has not been changed.

This commit was SVN r11068.
2006-07-31 22:30:07 +00:00
Rainer Keller
bfadfa9eb6 - Get code-coverage to work with gcc-4.x (needs --coverage flag also
when linking)
   This allows ompi-branch optimization. Works now with mpicc wrappers.

This commit was SVN r11067.
2006-07-31 21:55:01 +00:00
Galen Shipman
c9e0eda190 Initialize the completion queue to a reasonable size based on maximum number
of send/receives outstanding.

Use ibv_cq_resize if available after initial creation of completion queue if
cq_size is too small (based on number of peers). 

This commit was SVN r11053.
2006-07-30 00:58:40 +00:00
Brian Barrett
aaf31c6ade * Make the backtrace printing functionality a framework
* Copy Linux and Solaris backtrace support from util/stacktrace.c
* Added backtrace support for Mac OS X.

This commit was SVN r11023.
2006-07-27 02:56:02 +00:00
Brian Barrett
7ea33eac02 Merge in rest of event library update branch, updating the event library to
libevent-1.1a.

svn merge -r10917:11006 https://svn.open-mpi.org/svn/ompi/tmp/libevent-update

This commit was SVN r11022.

The following SVN revisions from the original message are invalid or
inconsistent and therefore were not cross-referenced:
  r10917
  r11006
2006-07-27 01:51:18 +00:00
Brian Barrett
dfa1221c3b * AC_CONFIG_LINKS has a minor problem in that it always uses ln -s, rather
than $(LN_S).  This causes problems with with Windows and probably
  elsewhere (re: #200).  So use a slightly different trick to get the
  right header selected for the MEMCPY and TIMER components.

* Using the same trick used to solve the AC_CONFIG_LINKS problem, 
  stop using a separate header file for direct calling in the
  PML and MTL.  This lets me remove some icky code in ompi_mca.m4
  that was more fragile than I really liked.

This commit was SVN r10841.
2006-07-16 04:23:52 +00:00
Jeff Squyres
4eb3ee7835 Another project that has been brewing for a week or so...
We have repeatedly seen users inadvertantly try to use a C compiler
for $CXX (e.g., using icc instead of icpc in recent versions of the
Intel compiler).  Unfortunately, this would "sorta work", meaning that
configure would complete successfully and the build would fail much
later in the process (when $CXX was used to try to link a C++
compiler).  This was further compounded by the fact that many C
compilers will switch into "C++ mode" when they compile files that end
in .cc -- meaning that they'll *compile* C++ codes properly, but they
won't *link* properly.  Hence, users would get all the way down to
compiling the C++ MPI bindings or ompi_info (i.e., very late in the
build process) before the problem became evident.

We already have a test in configure that tries to compile, link, and
run a sample C++ program.  This helped ensure that $CXX was a valid
compiler, but it did not catch if the user accidentally supplied a C
compiler instead of a C++ compiler because the test program was simply
"return 0".  This commit updates the test program to use some
C++-specific constructs (std::string) so that if the user supplies a C
compiler in $CXX, the program may *compile*, but it will definitely
fail to *link*.

Hence, the process will fail early in configure (with a descriptive
message about how the compiler failed to work properly) rather than
late in the build.

This commit was SVN r10829.
2006-07-15 10:27:09 +00:00
Dan Lacher
94d5c9eed5 Defect 166: configure fails to crops libtool extras
Reviewed by: jsquyres, brbarret

This fix allows for support of LT2.0

This commit was SVN r10752.
2006-07-11 23:39:17 +00:00
Brian Barrett
27d9e26721 Fix for ticket #179. Print a reasonable error message if we fail to parse
the compiler data file.  Also, actually fix the bug by expanding out
datarootdir before letting it get in install_dirs.h.

This commit was SVN r10643.
2006-07-04 03:00:01 +00:00
Brian Barrett
47725c9b02 * Add new PML (CM) and network drivers (MTL) for high speed
interconnects that provide matching logic in the library.
  Currently includes support for MX and some support for
  Portals
* Fix overuse of proc_pml pointer on the ompi_proc structuer, 
  splitting into proc_pml for pml data and proc_bml for
  the BML endpoint data
* bug fixes in bsend init code, which wasn't being used by
  the OB1 or DR PMLs...

This commit was SVN r10642.
2006-07-04 01:20:20 +00:00
Brian Barrett
56a86c89b1 * Fix for bug #152. Make --with-FOO-libdir=DIR only check DIR, and not the
DIR/lib and DIR/lib64, which really never made sense.

This commit was SVN r10535.
2006-06-28 03:33:30 +00:00
Brian Barrett
03cc22842c fix error message typo and correct the flag that should be provided to gcc
to force v8+ ABI

This commit was SVN r10438.
2006-06-20 16:25:31 +00:00
Brian Barrett
d96554a482 * Fix for issue #144. With the opal_atomic_lifo code, we can no longer build
on platforms without a 32-bit compare and swap implementation.  There isn't
  such a thing on Sparc v8 chips, so we can't support those platforms right
  now.  Should be possible to make opal_atomic_lifo less atomic on these
  platforms, but not in the time allotted.

This commit was SVN r10407.
2006-06-17 18:45:29 +00:00
Sushant Sharma
428d81bc78 No need to look for xcpu libraries now. If user specifies --with-xcpu=yes, xcpu component will be compiled. Default is do not compile xcpu component.
This commit was SVN r10344.
2006-06-13 23:28:26 +00:00
George Bosilca
85b60cf2bd Having access to the full power of the prefetch is way more interesting. There
are 3 arguments: the pointer to the memory location to prefetch, the type of
operation that will be done on the memory (read or write) and the expected
locality.

This commit was SVN r10294.
2006-06-11 20:10:36 +00:00
Brian Barrett
0e6cf49341 * fix tests for __builtin_expect to not use NULL
This commit was SVN r10282.
2006-06-10 00:32:39 +00:00
Brian Barrett
4c80624fb3 * As promised to George and per #93, add macros for hinting to the compiler
whether an if statement is likely to be taken and for prefetching memory.
  Current macros:

    OPAL_LIKELY(expression)
    OPAL_UNLIKELY(expression)
    OPAL_PREFETC(address)

This commit was SVN r10278.
2006-06-09 19:50:51 +00:00
Jeff Squyres
d4b5c98247 Add check for <sysfs/libsysfs.h> since it's needed by OpenIB.
This commit was SVN r10213.
2006-06-05 22:02:40 +00:00
Brian Barrett
5163f2b296 Fix for bug #36. The MX, MVAPI, and OpenIB components don't have
support for progress threads, so we shouldn't build them or try to use
them when support for progress threads has been requested.  The TCP, GM,
SELF, and SM BTLs should have progress thread support, so they aren't
disabled.  The Portals BTL isn't compiled on platforms with threads,
so it doens't need to be updated.

This commit was SVN r10156.
2006-06-01 01:30:16 +00:00
Brian Barrett
0125bdb94d * add missing " that somehow slipped into the commit last night.
This commit was SVN r10140.
2006-05-31 13:57:38 +00:00
George Bosilca
2f4f49c7ba Check for the mx_register_unexp_callback availability (starting from MX 1.1.1).
This commit was SVN r10134.
2006-05-31 06:29:16 +00:00
Brian Barrett
7bbdad2821 * The (undocumented!) Autoconf variable $ac_configure_args needs
to be evaluated, to account for the quoting done.


Submitted by: Ralf Wildenhues
Reviewed by: Brian Barrett

This commit was SVN r10132.
2006-05-31 03:41:57 +00:00
Brian Barrett
f4a7e9be78 * Fix shell quoting to be more consistent with what AC does
Submitted by: Ralf Wildenhues
Reviewed by: Brian Barrett

This commit was SVN r10130.
2006-05-31 03:40:26 +00:00
Brian Barrett
7e1befaab8 * Fix M4 quoting so that AC 2.60 won't complain
Submitted by: Ralf Wildenhues
Reviewed by: Brian Barrett

This commit was SVN r10128.
2006-05-31 03:37:31 +00:00
Brian Barrett
0b09ba928c Fix for bug #17. Solaris provides stubs (who knows why, but they do) for
the pthreads library that don't do anything but are there when no special
options are given.  Both the GNU compiler and the Sun compiler could
sometimes ignore the -K* options, causing badness when building with
posix threads.  Don't try those options ;).

We still try -pthread and -pthreads because the compilers *do* error
when they see those options and some versions of the GNU compiler do
understand those flags (and do all the right things in that case).

This commit was SVN r10126.
2006-05-31 00:23:49 +00:00
Jeff Squyres
5f356edb64 Bring over changes from the /tmp/fortran-stuff series:
- Make the F90 bindings compile and link properly with gfortran 4.0,
  4.1, Intel 9.0, PGI 6.1, Sun (don't know version offhand -- the most
  current as of this writing, I think), and NAG 5.2, although some
  have limitations (e.g., NAG can't seem to handle the medium and
  large sizes)
- Building the F90 "small" module size is now the default, even for
  developers
- Split up mpif.h into multiple files because parts of it were toxic
  to the F90 bindings
- Properly specify unsized/unshaped arrays to make the bindings work
  on all known compilers
- Make ompi_info show Fortran 90 bindings size
- XML somewhat lags the generated scripts as of this commit, but
  functionality was my main goal -- the XML can be updated later (if
  at all).

This commit was SVN r10118.
2006-05-30 14:37:41 +00:00
Rainer Keller
772bba620d - Allow --enable-mca-direct for VPATH builds.
This commit was SVN r10007.
2006-05-22 14:24:30 +00:00
George Bosilca
1fbccda986 -g3 is definitively not a standard gcc option, at least not on anything
else than a quite recent version. Using this option prevent gdb from accessing
the contents of some of the structures. The error message is:
Unexpected type (0) encountered for integer constant.

This commit was SVN r9994.
2006-05-19 22:09:29 +00:00
Jeff Squyres
8e26fd653d Torque changed the name of their library from libpbs to libtorque; this
commit updates our configure test to check for both names.

This commit was SVN r9976.
2006-05-18 21:03:38 +00:00
Jeff Squyres
4080646606 Fix some variable names that are generated via m4 macros.
Sorry for committing configure changes during the day, but this is
necessary for some testing via multiple people at different sites.

This commit was SVN r9926.
2006-05-15 19:33:06 +00:00
Jeff Squyres
0d092abb81 Clarify help string, per change to 1.0 branch.
This commit was SVN r9906.
2006-05-12 03:06:54 +00:00
Andrew Friedley
5ba264d854 -ldapl isn't needed on all uDAPL platforms, so don't use it unless it is needed.
This commit was SVN r9866.
2006-05-09 20:02:38 +00:00
Brian Barrett
52369307f8 Add a feature to the build system that Terry from Sun and I talked about
in San Jose.  Allow the configure option --disable-binaries to build OMPI,
but not build or install the support binaries (so basically, just build
the libraries).

This commit was SVN r9777.
2006-04-29 02:16:41 +00:00
Jeff Squyres
2a2b27bf57 Forgot to remove f90_get_alignment.m4 from Makefile.am.
This commit was SVN r9725.
2006-04-26 12:07:26 +00:00
Jeff Squyres
79a3678924 Fix typo
This commit was SVN r9723.
2006-04-26 11:52:25 +00:00
Brian Barrett
5bd1be7ac4 * clean up some configure --help output as reported on OMPI mailing list.
This should probably go to 1.1...

This commit was SVN r9722.
2006-04-26 02:07:19 +00:00
Jeff Squyres
c6a753f41b Finish the rest of r9698:
- Add a lengthy comment explaining why we don't get F90 data type
  alignments
- Remove config/f90_check.m4 and its entry in acinclude.m4

This commit was SVN r9707.

The following SVN revision numbers were found above:
  r9698 --> open-mpi/ompi@e57300da4c
2006-04-25 10:45:06 +00:00
Jeff Squyres
e57300da4c Don't bother to get the alignmnet of an f90 type -- the DDT engine
only uses the F77 alignments anyway.  Plus, it is currently unknown
how to reliably get the F90 alignments because compilers *may* reorder
things and/or give different alignments than the f77 tests.

This commit was SVN r9698.
2006-04-24 14:28:51 +00:00
Brian Barrett
2ad29df0a1 * Add option to disable the adding of -g to CFLAGS/CXXFLAGS when --enable-debug
is given.  Generally not useful, unless you're on a platform without a
  debugger...

This commit was SVN r9684.
2006-04-22 19:23:26 +00:00
Rainer Keller
990496bc80 - Small bugfix to get lib-directory checking correct
(prevented orte/mca/pls/tm from detecting libpbs).

This commit was SVN r9657.
2006-04-19 15:22:55 +00:00
Brian Barrett
6617d48e00 * fix small issue with cross-compiling - we don't need
to run the working test when cross-compiling, so just
  ignore it for now..

This commit was SVN r9653.
2006-04-18 18:22:00 +00:00
Brian Barrett
d5012bf485 Two patches from Ralf Wildenhues to improve configure:
- include stdlib.h for tests that call exit(), as AC no longer
    prototypes exit in 2.60
  - Fix a compile issue in our cross-compiling test for C/C++
    alignment checks, matching what AC did for 2.60.

This commit was SVN r9634.
2006-04-14 15:33:51 +00:00
Jeff Squyres
f8e634d6ca Bring over /tmp/f90-stuff branch to the trunk.
svn merge -r 9453:9609 https://svn.open-mpi.org/svn/ompi/tmp/f90-stuff .

Several improvements over the current F90 MPI bindings:

- The capability to make 4 sizes of the F90 bindings:
  - trivial: only the F90-specific MPI functions (sizeof and a few
    others)
  - small: (this is the default) all MPI functions that do not take
    choice buffers
  - medium: small + all MPI functions that take one choice buffer
    (e.g., MPI_SEND)
  - large: all MPI functions, but those that take 2 choice buffers
    (e.g., MPI_GATHER) only allow both buffers to be of the same type
- Remove all non-standard MPI types (LOGICAL*x, CHARACTER*x)
- Remove use of selected_*_kind() and only use MPI-defined types
  (INTEGER*x, etc.)
- Decrease complexity of the F90 configure and build system

This commit was SVN r9610.
2006-04-11 03:33:38 +00:00
Sushant Sharma
8d5289b2b8 Corrected Makefile.am files for pls and soh xcpu-components as per Brian's suggestion.
This commit was SVN r9519.
2006-04-03 17:14:47 +00:00