Re: [OMPI users] Cannot compile 1.10.2 under CentOS 7 rdma-core-devel-13-7.el7.x86_64

2018-02-28 Thread r...@open-mpi.org
Not unless you have a USNIC card in your machine!


> On Feb 28, 2018, at 8:08 AM, William T Jones  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  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" */
>>>  charname[IBV_SYSFS_NAME_MAX];
>>>  /* Name of uverbs device, eg "uverbs0" */
>>>  chardev_name[IBV_SYSFS_NAME_MAX];
>>>  /* Path to infiniband_verbs class device in sysfs */
>>>  chardev_path[IBV_SYSFS_PATH_MAX];
>>>  /* Path to infiniband class device in sysfs */
>>>  charibdev_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
>

Re: [OMPI users] Cannot compile 1.10.2 under CentOS 7 rdma-core-devel-13-7.el7.x86_64

2018-02-28 Thread William T Jones

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  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" */
  charname[IBV_SYSFS_NAME_MAX];
  /* Name of uverbs device, eg "uverbs0" */
  chardev_name[IBV_SYSFS_NAME_MAX];
  /* Path to infiniband_verbs class device in sysfs */
  chardev_path[IBV_SYSFS_PATH_MAX];
  /* Path to infiniband class device in sysfs */
  charibdev_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


Re: [OMPI users] Cannot compile 1.10.2 under CentOS 7 rdma-core-devel-13-7.el7.x86_64

2018-02-28 Thread r...@open-mpi.org
Add --without-usnic


> On Feb 28, 2018, at 7:50 AM, William T Jones  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" */
>  charname[IBV_SYSFS_NAME_MAX];
>  /* Name of uverbs device, eg "uverbs0" */
>  chardev_name[IBV_SYSFS_NAME_MAX];
>  /* Path to infiniband_verbs class device in sysfs */
>  chardev_path[IBV_SYSFS_PATH_MAX];
>  /* Path to infiniband class device in sysfs */
>  charibdev_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