Re: [OMPI devel] MCA Component Development: Function Pointers

2017-01-18 Thread Kawashima, Takahiro
Hi, I created a pull request to add the persistent collective communication request feature to Open MPI. Though it's incomplete and will not be merged into Open MPI soon, you can play your collective algorithms based on my work. https://github.com/open-mpi/ompi/pull/2758 Takahiro Kawashima, MP

Re: [OMPI devel] MCA Component Development: Function Pointers

2016-07-31 Thread Gilles Gouaillardet
Bradley, good to hear that ! What Jeff meant in his previous email, is that since persistent collectives are not (yet) part of the standard, user visible functions (Pbcast_init, Pcoll_start, ...) should be part of an extension (e.g. ompi/mpiext/pcoll) and should be named with the MPIX_ pre

Re: [OMPI devel] MCA Component Development: Function Pointers

2016-07-31 Thread Bradley Morgan
Gilles, Nathan, Jeff, George, and the OMPI Developer Community, Thank you all for your kind and helpful responses. I have been gathering your advice and trying to put the various pieces together. Currently, I have managed to graft a new function MPI_LIBPNBC_Start at the MPI level with a corres

Re: [OMPI devel] MCA Component Development: Function Pointers

2016-07-31 Thread George Bosilca
Bradley, We had similar needs in one of our projects and as a quick hack we extended the GRequest interface to support persistent requests. There are cleaner ways, but we decided that highjacking the OMPI_REQUEST_GEN was good enough for a proof-of-concept. Then add a start member to the ompi_grequ

Re: [OMPI devel] MCA Component Development: Function Pointers

2016-07-30 Thread Jeff Squyres (jsquyres)
Also be aware of the Open MPI Extensions framework, explicitly intended for adding new/experimental APIs to mpi.h and the Fortran equivalents. See ompi/mpiext. > On Jul 29, 2016, at 11:16 PM, Gilles Gouaillardet > wrote: > > For a proof-of-concept, I'd rather suggest you add MPI_Pcoll_start

Re: [OMPI devel] MCA Component Development: Function Pointers

2016-07-29 Thread Gilles Gouaillardet
For a proof-of-concept, I'd rather suggest you add MPI_Pcoll_start(), and add a pointer in mca_coll_base_comm_coll_t. If you add MCA_PML_REQUEST_COLL, then you have to update all pml components (fastidious), if you update start.c (quite simple), then you also need to update start_all.c (less trivia

Re: [OMPI devel] MCA Component Development: Function Pointers

2016-07-29 Thread Nathan Hjelm
Look at ompi/mpi/c/start.c. Just add a check there thst redirects to the coll component for coll requests. You will probably need to expand the coll interface in ompi/mca/coll/coll.h to include a start function. > On Jul 29, 2016, at 10:20 AM, Bradley Morgan wrote: > > > Hello Gilles, > > Th

Re: [OMPI devel] MCA Component Development: Function Pointers

2016-07-29 Thread Bradley Morgan
Hello Gilles, Thank you very much for your response. My understanding is yes, this might be part of the future standard—but probably not from my work alone. I’m currently just trying get a proof-of-concept and some performance metrics. I have item one of your list completed, but not the othe

Re: [OMPI devel] MCA Component Development: Function Pointers

2016-07-29 Thread Gilles Gouaillardet
Out of curiosity, is MPI_Ibcast_init (and friends) something that will/might be part of the future standard ? if you want to implement this as a MCA, then you have (at least) to - add an Ibcast_init field (function pointer) to mca_coll_base_comm_coll_t struct - add a 'case MCA_PML_REQUEST_COLL:' i