Thanks for the suggestions.
On 02/28/2018 12:10 PM, Jeff Squyres (jsquyres) wrote:
Oops; it looks like there's 2 chunks of usNIC code in the 1.10.x code base, and
--without-usnic only disables one of them.
I do believe we fixed that in a later 1.10.x release -- I am guessing you don't
want to upgrade to v3.0.x for compatibility/testing reasons, but do you think
you could move to a later v1.10.x release (which should be just bug fixes
compared to 1.10.2)?
If you can upgrade to v1.10.7, this should work:
./configure --without-usnic --without-verbs-usnic ...
This works. But will be tough because it will require lots of
re-validation work with the codes that depend on OpenMPI even though it
is only a patch level increment.
Sidenote: it's actually also possible that v1.10.7 will either correctly ignore
or correctly compile usNIC on your system (without any extra command line
options) -- we may have fixed that bug by v1.10.7; I honestly don't remember
offhand.
If you can't move to v1.10.7, I think you should be able to use the following
with v1.10.2 too disable the BTL usNIC component and the verbs_usnic common
component:
./configure --without-usnic --enable-mca-no-build=common-verbs_usnic ...
Sadly this does not work. Linker fails with undefined reference to
`ompi_common_verbs_usnic_register_fake_drivers'.
On Feb 28, 2018, at 11:55 AM, William T Jones <w.t.jo...@nasa.gov> wrote:
Unfortunately, that does not work.
% ./configure --enable-static \
--with-tm=/usr/local/pkgs/PBSPro_64 \
--enable-mpi-thread-multiple \
--with-verbs=/usr \
--without-usnic \
--enable-mpi-cxx \
FC=ifort \
F77=ifort \
CC=icc \
CXX=icpc \
CFLAGS="-O3 -ip" \
FCFLAGS="-O3 -ip" \
LIBS="-lcrypto -lpthread"
...
Making all in mca/common/verbs_usnic
make[2]: Entering directory
`/misc/home2/wtjones1/GIT/fun3d/misc/module-builder/k/openmpi/openmpi-1.10.2/ompi/mca/common/verbs_usnic'
CC libmca_common_verbs_usnic_la-common_verbs_usnic_fake.lo
common_verbs_usnic_fake.c(72): error: struct "ibv_device" has no field "ops"
.ops = {
^
common_verbs_usnic_fake.c(89): warning #266: function "ibv_read_sysfs_file"
declared implicitly
if (ibv_read_sysfs_file(uverbs_sys_path, "device/vendor",
^
common_verbs_usnic_fake.c(133): warning #266: function "ibv_register_driver"
declared implicitly
ibv_register_driver("usnic_verbs", fake_driver_init);
^
compilation aborted for common_verbs_usnic_fake.c (code 2)
On 02/28/2018 11:10 AM, r...@open-mpi.org wrote:
Not unless you have a USNIC card in your machine!
On Feb 28, 2018, at 8:08 AM, William T Jones <w.t.jo...@nasa.gov> wrote:
Thank you!
Will that have any adverse side effects?
Performance penalties?
On 02/28/2018 10:57 AM, r...@open-mpi.org wrote:
Add --without-usnic
On Feb 28, 2018, at 7:50 AM, William T Jones <w.t.jo...@nasa.gov> wrote:
I realize that OpenMPI 1.10.2 is quite old, however, for compatibility I
am attempting to compile it after a system upgrade to CentOS 7.
This system does include infiniband and I have configured as follows
using Intel 2017.2.174 compilers:
% ./configure --enable-static \
--with-tm=/usr/local/pkgs/PBSPro_64 \
--enable-mpi-thread-multiple \
--with-verbs=/usr \
--enable-mpi-cxx \
FC=ifort \
F77=ifort \
CC=icc \
CXX=icpc \
CFLAGS="-O3 -ip" \
FCFLAGS="-O3 -ip" \
LIBS=-lcrypto -lpthread
However, when I compile I get the following error:
...
Making all in mca/common/verbs_usnic
make[2]: Entering directory
`/usr/src/openmpi-1.10.2/ompi/mca/common/verbs_usnic'
CC libmca_common_verbs_usnic_la-common_verbs_usnic_fake.lo
common_verbs_usnic_fake.c(72): error: struct "ibv_device" has no field
"ops"
.ops = {
^
common_verbs_usnic_fake.c(89): warning #266: function
"ibv_read_sysfs_file" declared implicitly
if (ibv_read_sysfs_file(uverbs_sys_path, "device/vendor",
^
common_verbs_usnic_fake.c(133): warning #266: function
"ibv_register_driver" declared implicitly
ibv_register_driver("usnic_verbs", fake_driver_init);
^
compilation aborted for common_verbs_usnic_fake.c (code 2)
Unfortunately, my /usr/include/infiniband/verbs.h file defines the
"ibv_device" structure but does not include "ops" member. Instead the
structure is defined as follows:
/* Obsolete, never used, do not touch */
struct _ibv_device_ops {
struct ibv_context * (*_dummy1)(struct ibv_device *device,
int cmd_fd);
void (*_dummy2)(struct ibv_context *context);
};
enum {
IBV_SYSFS_NAME_MAX = 64,
IBV_SYSFS_PATH_MAX = 256
};
struct ibv_device {
struct _ibv_device_ops _ops;
enum ibv_node_type node_type;
enum ibv_transport_type transport_type;
/* Name of underlying kernel IB device, eg "mthca0" */
char name[IBV_SYSFS_NAME_MAX];
/* Name of uverbs device, eg "uverbs0" */
char dev_name[IBV_SYSFS_NAME_MAX];
/* Path to infiniband_verbs class device in sysfs */
char dev_path[IBV_SYSFS_PATH_MAX];
/* Path to infiniband class device in sysfs */
char ibdev_path[IBV_SYSFS_PATH_MAX];
};
OpenMPI was previously compiled successfully under CentOS 6 and every
indication is that the /usr/include/infiniband/verbs.h was defined
similarly (again without the "ops" member).
Is it possible that there is a configure option that prevents this source from
being included in the build?
Any help is appreciated,
--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Bill Jones w.t.jo...@nasa.gov
Mail Stop 128 Computational AeroSciences Branch
15 Langley Boulevard Research Directorate
NASA Langley Research Center Building 1268, Room 1044
Hampton, VA 23681-2199 Phone +1 757 864-5318
Fax +1 757 864-8816
http://fun3d.larc.nasa.gov
_______________________________________________
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users
_______________________________________________
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users
--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Bill Jones w.t.jo...@nasa.gov
Mail Stop 128 Computational AeroSciences Branch
15 Langley Boulevard Research Directorate
NASA Langley Research Center Building 1268, Room 1044
Hampton, VA 23681-2199 Phone +1 757 864-5318
Fax +1 757 864-8816
http://fun3d.larc.nasa.gov
_______________________________________________
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users
_______________________________________________
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users
--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Bill Jones w.t.jo...@nasa.gov
Mail Stop 128 Computational AeroSciences Branch
15 Langley Boulevard Research Directorate
NASA Langley Research Center Building 1268, Room 1044
Hampton, VA 23681-2199 Phone +1 757 864-5318
Fax +1 757 864-8816
http://fun3d.larc.nasa.gov
<config.log.gz>_______________________________________________
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users
--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Bill Jones w.t.jo...@nasa.gov
Mail Stop 128 Computational AeroSciences Branch
15 Langley Boulevard Research Directorate
NASA Langley Research Center Building 1268, Room 1044
Hampton, VA 23681-2199 Phone +1 757 864-5318
Fax +1 757 864-8816
http://fun3d.larc.nasa.gov
_______________________________________________
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users