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

31 Коммитов

Автор SHA1 Сообщение Дата
Nathan Hjelm
7893248c5a opal/asm: add fetch-and-op atomics
This commit adds support for fetch-and-op atomics. This is needed
because and and or are irreversible operations so there needs to be a
way to get the old value atomically. These are also the only semantics
supported by C11 (there is not atomic_op_fetch, just
atomic_fetch_op). The old op-and-fetch atomics have been defined in
terms of fetch-and-op.

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2017-11-30 10:41:23 -07:00
Nathan Hjelm
1282e98a01 opal/asm: rename existing arithmetic atomic functions
This commit renames the arithmetic atomic operations in opal to
indicate that they return the new value not the old value. This naming
differentiates these routines from new functions that return the old
value.

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2017-11-30 10:41:22 -07:00
Nathan Hjelm
84f63d0aca opal/asm: add opal_atomic_compare_exchange_strong functions
This commit adds a new set of compare-and-exchange functions. These
functions have a signature similar to the functions found in C11. The
old cmpset functions are now deprecated and defined in terms of the
new compare-and-exchange functions. All asm backends have been
updated.

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2017-11-29 12:45:44 -07:00
Nathan Hjelm
3ff34af355 opal: rename opal_atomic_cmpset* to opal_atomic_bool_cmpset*
This commit renames the atomic compare-and-swap functions to indicate
the return value. This is in preperation for adding support for a
compare-and-swap that returns the old value. At the same time the
return type has been changed to bool.

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2017-10-31 12:47:23 -06:00
Nathan Hjelm
76320a8ba5 opal: rename opal_atomic_init to opal_atomic_lock_init
This function is used to initalize and opal atomic lock. The old name
was confusing.

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2017-08-07 14:15:11 -06:00
Nathan Hjelm
ebce88b7ad opal: remove generated asm code
Every modern compiler supports either inline assembly or builtin atomic
operations. Because of this it is time to delete all the code associated
with pre-built atomics.

This commit also clean out the DEC and XLC asm checks. Neither check
does anything and the XLC compiler supports GCC ASM.

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2017-08-03 09:18:58 -06:00
Ralph Castain
1e2019ce2a Revert "Update to sync with OMPI master and cleanup to build"
This reverts commit cb55c88a8b.
2016-11-22 15:03:20 -08:00
Ralph Castain
cb55c88a8b Update to sync with OMPI master and cleanup to build
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2016-11-22 14:24:54 -08:00
Ralph Castain
06f0322f7b Enable the ability to make tarballs on the Mac tarball by ensuring that "make distclean" completely cleans up the test directories
Add one more thing to be cleaned
2015-11-24 21:14:38 -08:00
Ralph Castain
869041f770 Purge whitespace from the repo 2015-06-23 20:59:57 -07:00
George Bosilca
98cca1b6b3 Remove all uninitialized common symbols in the test directory. 2015-04-25 13:54:45 -04:00
Gilles Gouaillardet
661c35ca67 cleanup dead code caused by the removal of the --with-threads configure option 2015-01-16 19:13:59 +09:00
George Bosilca
7541c03b4c Mark all instances where atomic operations are used but their return value is unnecessary 2014-10-15 21:47:32 -04:00
Jeff Squyres
f5c3c2c0ac s/ompi/opal/gi in all of these files because they're really OPAL
tests, not OMPI tests.

This allows us to "make distcheck" with "./autogen.sh -no-ompi"
trees (i.e., these tests will now still work even if the OMPI layer is
not present -- because they're OPAL tests and we should treat them
that way).

This commit was SVN r23524.
2010-07-28 14:20:58 +00:00
Greg Koenig
60485ff95f This is a very large change to rename several #define values from
OMPI_* to OPAL_*.  This allows opal layer to be used more independent
from the whole of ompi.

NOTE: 9 "svn mv" operations immediately follow this commit.

This commit was SVN r21180.
2009-05-06 20:11:28 +00:00
Brian Barrett
89a22615ce * the .c files created by symlinking get shipped in the tarball as
actual files, so we should not have a clean rule for them - instead,
  make it maintainer-clean.  Neither clean nor distclean should
  remove files that were in the tarball...

This commit was SVN r9351.
2006-03-21 03:14:49 +00:00
Brian Barrett
566a050c23 Next step in the project split, mainly source code re-arranging
- move files out of toplevel include/ and etc/, moving it into the
    sub-projects
  - rather than including config headers with <project>/include, 
    have them as <project>
  - require all headers to be included with a project prefix, with
    the exception of the config headers ({opal,orte,ompi}_config.h
    mpi.h, and mpif.h)

This commit was SVN r8985.
2006-02-12 01:33:29 +00:00
Jeff Squyres
42ec26e640 Update the copyright notices for IU and UTK.
This commit was SVN r7999.
2005-11-05 19:57:48 +00:00
Brian Barrett
ed56e743b7 * update configure.ac to use the modern version of AC_INIT and
AM_INIT_AUTOMAKE, instead of the deprecated version.
* Work around dumbness in modern AC_INIT that requires the version
  number to be set at autoconf time (instead of at configure time, as
  it was before).  Set the version number, minus the subversion r number,
  at autoconf time.  Override the internal variables to include the r
  number (if needed) at configure time.  Basically, the right thing
  should always happen.  The only place it might not is the version
  reported as part of configure --help will not have an r number.
* Since AM_INIT_AUTOMAKE taks a list of options, no need to specify
  them in all the Makefile.am files.
* Addes support for subdir-objects, meaning that object files are put
  in the directory containing source files, even if the Makefile.am is
  in another directory.  This should start making it feasible to
  reduce the number of Makefile.am files we have in the tree, which
  will greatly reduce the time to run autogen and configure.

This commit was SVN r7211.
2005-09-07 05:54:53 +00:00
Jeff Squyres
9dab81d86b A bunch of updates to the unit tests
- Update svn:ignore's to match new exectuable names
- Consolidate the unit test Makefile.am flags into a testing
  Makefile.options 
- Remove a bunch of SUBDIRS from test/mca/Makefile so that they don't
  run by default, but can be invoked manually (they're still in
  DIST_SUBDIRS) 

This commit was SVN r6598.
2005-07-23 11:11:19 +00:00
Brian Barrett
b04c726ad1 Fix up tests so that they all compile and (mostly) run
This commit was SVN r6338.
2005-07-04 14:53:10 +00:00
Brian Barrett
9da0b4fe1d * rename all the atomic functions from ompi to opal
This commit was SVN r6325.
2005-07-03 21:38:51 +00:00
Jeff Squyres
722ee2103b Fix to the fix -- Brian and I agree that this is a better fix.
This commit was SVN r5693.
2005-05-12 02:44:20 +00:00
Jeff Squyres
2b2f2f3c04 Fix a bunch of compiler warnings, mostly on 64 bit:
- some union { void*; int; } fixes for asm tests
- size_t / %lu fixes for a bunch of others

This commit was SVN r5677.
2005-05-10 23:28:31 +00:00
Rainer Keller
ebfee139e0 Small updates to build_tarball:
- allow bz2 uncompression
 - do not try to detect download-program, if file_arg

Allow VPATH-build in test of asm-check

This commit was SVN r5522.
2005-04-28 15:04:00 +00:00
Brian Barrett
0964152893 clean up the OMPI_BUILDING #define. Rather than being defined to 1 if
we are part of the source tree and not defined otherwise, we are going
with an always defined if ompi_config.h is included policy.  If
ompi_config.h is included before mpi.h or before OMPI_BUILDING is set,
it will set OMPI_BUILDING to 1 and enable all the internal code that
is in ompi_config_bottom.h.  Otherwise, it will only include the
system configuration data (enough for defining the C and C++ interfaces
to MPI, but not perturbing the user environment).

This should fix the problems with bool and the like that the Eclipse
folks were seeing.  It also cleans up some build system hacks that
we had along the way.

Also, don't use int64_t as the default size of MPI_Offset, because it
requires us including stdint.h in mpi.h, which is something we really
shouldn't be doing.

And finally, fix a ROMIO Makefile that didn't set -DOMPI_BUILDING=1,
as ROMIO includes mpi.h, but not ompi_config.h

This commit was SVN r5430.
2005-04-19 03:51:20 +00:00
Brian Barrett
5f4a433086 * remove unused file
This commit was SVN r5428.
2005-04-19 03:43:42 +00:00
Brian Barrett
cd76153a74 * dumb bug fixes
This commit was SVN r5422.
2005-04-18 19:52:39 +00:00
Brian Barrett
63bd314a0b * Update ASM tests to do more thread testing (which should help find bugs)
* Update cmpset test to call memory barrier when needed before checking the
  results
* remove unneeded sync from cmpset_32 on Power PC

This commit was SVN r5420.
2005-04-18 19:33:23 +00:00
Jeff Squyres
3f5541349a Add UC copyright
This commit was SVN r5009.
2005-03-24 12:43:37 +00:00
Brian Barrett
4b6aecf82d * Fix up the test directory so everything uses Automake's "make check" to
build / run.  Only things that actually build / run right now are the
  asm and class tests.  The mca tests probably will with a static build
  but that hasn't been verified

This commit was SVN r4979.
2005-03-22 04:25:01 +00:00