Thanks, Ralph!!! I know the guys have been working hard trying to get this to work with an arbitrary BTL, seems we aren't there yet...
Josh From: devel-boun...@open-mpi.org [mailto:devel-boun...@open-mpi.org] On Behalf Of Ralph Castain Sent: Wednesday, July 24, 2013 8:20 AM To: Open MPI Developers Subject: Re: [OMPI devel] OpenSHMEM up on bitbucket I think this is going to need to be refactored, Josh. Looks to me like whoever wrote this "locked" it to IB. That's a problem for me, at least - I believe that OpenShmem should use the MPI transports, but respect the OMPI abstraction layer. In other words, you should use the transports to move data around, but let the underlying abstractions choose how to do it. This would allow OpenShmem to run on top of any fabric, not just IB, which is the right way of doing things inside the OMPI code base. Just my $0.02 Ralph On Jul 24, 2013, at 5:03 AM, Ralph Castain <r...@open-mpi.org<mailto:r...@open-mpi.org>> wrote: Hmmmm....I'm afraid this doesn't build for us folks that don't have IB on their system. From what I can see, it looks like you broke a fundamental abstraction layer rule by including a header from a component into a completely different component. That is definitely *not* allowed for precisely this reason. In file included from ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:32, from ../../../oshmem/mca/spml/yoda/spml_yoda_rdmafrag.h:21, from ../../../oshmem/mca/spml/yoda/spml_yoda_putreq.h:19, from base/spml_base.c:19: ../../../ompi/mca/btl/openib/btl_openib.h:34:30: error: infiniband/verbs.h: No such file or directory In file included from ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:32, from ../../../oshmem/mca/spml/yoda/spml_yoda_rdmafrag.h:21, from ../../../oshmem/mca/spml/yoda/spml_yoda_putreq.h:19, from base/spml_base.c:19: ../../../ompi/mca/btl/openib/btl_openib.h:374: error: field 'ib_dev_attr' has incomplete type In file included from ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:32, from ../../../oshmem/mca/spml/yoda/spml_yoda_rdmafrag.h:21, from ../../../oshmem/mca/spml/yoda/spml_yoda_putreq.h:19, from base/spml_base.c:19: ../../../ompi/mca/btl/openib/btl_openib.h:470: error: field 'ib_port_attr' has incomplete type In file included from ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:33, from ../../../oshmem/mca/spml/yoda/spml_yoda_rdmafrag.h:21, from ../../../oshmem/mca/spml/yoda/spml_yoda_putreq.h:19, from base/spml_base.c:19: ../../../ompi/mca/btl/openib/btl_openib_frag.h:306: error: field 'sg_entry' has incomplete type ../../../ompi/mca/btl/openib/btl_openib_frag.h:318: error: field 'sr_desc' has incomplete type ../../../ompi/mca/btl/openib/btl_openib_frag.h:345: error: field 'rd_desc' has incomplete type ../../../ompi/mca/btl/openib/btl_openib_frag.h:359: error: field 'sr_desc' has incomplete type In file included from ../../../oshmem/mca/spml/yoda/spml_yoda_rdmafrag.h:21, from ../../../oshmem/mca/spml/yoda/spml_yoda_putreq.h:19, from base/spml_base.c:19: ../../../ompi/mca/btl/openib/btl_openib_endpoint.h: In function 'post_recvs': ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:367: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:368: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:368: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:368: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:368: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:368: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:376: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:378: error: implicit declaration of function 'ibv_post_recv' ../../../ompi/mca/btl/openib/btl_openib_endpoint.h: In function 'ib_send_flags': ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:515: error: 'IBV_SEND_SIGNALED' undeclared (first use in this function) ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:515: error: (Each undeclared identifier is reported only once ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:515: error: for each function it appears in.) ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:516: error: 'IBV_SEND_INLINE' undeclared (first use in this function) ../../../ompi/mca/btl/openib/btl_openib_endpoint.h: In function 'post_send': ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:543: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:546: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:546: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:554: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:556: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:556: error: 'IBV_WR_RDMA_WRITE' undeclared (first use in this function) ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:557: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:569: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:578: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:584: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:584: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:587: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:587: error: 'IBV_WR_SEND' undeclared (first use in this function) ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:589: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:589: error: 'IBV_WR_SEND_WITH_IMM' undeclared (first use in this function) ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:593: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:602: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:604: error: dereferencing pointer to incomplete type ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:604: error: 'IBV_SEND_SIGNALED' undeclared (first use in this function) ../../../ompi/mca/btl/openib/btl_openib_endpoint.h:610: error: implicit declaration of function 'ibv_post_send' make[2]: *** [base/spml_base.lo] Error 1 make[2]: *** Waiting for unfinished jobs.... make[1]: *** [all-recursive] Error 1 make: *** [all-recursive] Error 1 On Jul 24, 2013, at 4:51 AM, Ralph Castain <r...@open-mpi.org<mailto:r...@open-mpi.org>> wrote: I'm afraid Josh got bit by grabbing the wrong URL - here's the correct clone command for anyone not Josh: git clone https://bitbucket.org/jladd_math/mlnx-oshmem.git On Jul 23, 2013, at 6:43 AM, Joshua Ladd <josh...@mellanox.com<mailto:josh...@mellanox.com>> wrote: Dear OMPI Developers, I have put Mellanox OpenSHMEM up for review on my Bitbucket. Please "git" and test at your leisure. Questions, comments, and critiques are most welcome. git clone https://jladd_m...@bitbucket.org/jladd_math/mlnx-oshmem.git<https://bitbucket.org/jladd_math/mlnx-oshmem.git> To build with OSHMEM support, build as you would OMPI but simply include '--with-oshmem' on your configure line. This will get you started. Best regards, Josh Joshua S. Ladd, PhD HPC Algorithms Engineer Mellanox Technologies Email: josh...@mellanox.com<mailto:josh...@mellanox.com> Cell: +1 (865) 258 - 8898 _______________________________________________ devel mailing list de...@open-mpi.org<mailto:de...@open-mpi.org> http://www.open-mpi.org/mailman/listinfo.cgi/devel