On 11/26/2014 11:02 AM, George Bosilca wrote:
We had similar problems in the PML V, and we decided to try to minimize the increase in size of the main library. Thus, instead of moving everything in the base, we added a structure in the base that will contain all the pointer to the functions we would need. This structure is only initialized when our main module is loaded, and all sub-modules will use this structure to get access to the pointers provided.
That is an interesting option, let me think about it. What it would give us is that we do not have artificially 'force' some code into the base of other frameworks, since in my opinion the ompio component is still the best place for these functions.
Thanks Edgar
George. > > 2. I will have to extend the io framework interfaces a bit ( I will try to minimize the number of new function as much as I can), but those function pointers will be NULL for ROMIO. Just want to make sure this is ok with everybody. I’ll have to let others chime in here, but that would seem to fit the OMPI architecture. > > Thanks > Edgar > > On 11/25/2014 11:43 AM, Ralph Castain wrote: >> >>> On Nov 25, 2014, at 9:36 AM, Edgar Gabriel <gabr...@cs.uh.edu <mailto:gabr...@cs.uh.edu>> wrote: >>> >>> On 11/25/2014 11:31 AM, Ralph Castain wrote: >>>> >>>>> On Nov 25, 2014, at 8:24 AM, Edgar Gabriel <gabr...@cs.uh.edu <mailto:gabr...@cs.uh.edu> >>>>> <mailto:gabr...@cs.uh.edu <mailto:gabr...@cs.uh.edu>>> wrote: >>>>> >>>>> On 11/25/2014 10:18 AM, Ralph Castain wrote: >>>>>> Hmmm…no, nothing has changed with regard to declspec that I know >>>>>> about. I’ll ask the obvious things to check: >>>>>> >>>>>> * does that component have the proper include to find this function? >>>>>> Could be that it used to be found thru some chain, but the chain is >>>>>> now broken and it needs to be directly included >>>>> >>>>> header is included, I double checked. >>>>> >>>>>> * is that function in the base code, or down in a component? If the >>>>>> latter, then that’s a problem, but I’m assuming you didn’t make that >>>>>> mistake. >>>>> >>>>> >>>>> I am not sure what you mean. The function is in a component, but I am >>>>> not aware that it is illegal to call a function of a component from >>>>> another component. >>>> >>>> >>>> Of course that is illegal - you can only access a function via the >>>> framework interface, not directly. You have no way of knowing that the >>>> other component has been loaded. Doing it directly violates the >>>> abstraction rules. >>> >>> well, ok. I know that the other componen has been loaded because that component triggered the initialization of these sub-frameworks. >> >> I think we’ve seen that before, and run into problems with that approach (i.e., components calling framework opens). >> >>> >>> I can move that functionality to the base, however, none of the 20+ functions are required for the other components of the io framework (i.e. ROMIO). So I would basically add functionality required for one component only into the base. >> >> Sounds like you’ve got an abstraction problem. If the fcoll component requires certain functions from another framework, then the framework should be exposing those APIs. If ROMIO doesn’t provide them, then it needs to return an error if someone attempts to call it. >> >> You are welcome to bring this up on next week’s call if you like. IIRC, this has come up before when people have tried this hard links between components. Maybe someone else will have a better solution, but is just seems to me like you have to go thru the framework to avoid the problem. >> >>> >>> Nevertheless, I think the original question is still valid. We did not see this problem before, but it is now showing on all of our platforms, and I am still wandering that is the case. I *know* that the ompio component is loaded, and I still get the error message about the missing symbol from the ompio component. I do not understand why that happens. >> >> Probably because the fcoll component didn’t explicitly link against the ompio component. You were likely getting away with it out of pure luck. >> >>> >>> >>> Thanks >>> Edgar >>> >>>> >>>> >>>>> >>>>> Thanks >>>>> Edgar >>>>> >>>>> >>>>> >>>>>> >>>>>> >>>>>>> On Nov 25, 2014, at 8:07 AM, Edgar Gabriel <gabr...@cs.uh.edu <mailto:gabr...@cs.uh.edu> >>>>>>> <mailto:gabr...@cs.uh.edu <mailto:gabr...@cs.uh.edu>>> >>>>>>> wrote: >>>>>>> >>>>>>> Has something changed recently on the trunk/master regarding >>>>>>> OMPI_DECLSPEC? The reason I ask is because we get now errors about >>>>>>> unresolved symbols, e.g. >>>>>>> >>>>>>> symbol lookup error: >>>>>>> /home/gabriel/OpenMPI/lib64/openmpi/mca_fcoll_dynamic.so: undefined >>>>>>> symbol: ompi_io_ompio_decode_datatype >>>>>>> >>>>>>> >>>>>>> and that problem was not there roughly two weeks back the last time >>>>>>> I tested. I did verify that the the function listed there has an >>>>>>> OMPI_DECLSPEC before its definition. >>>>>>> >>>>>>> Thanks Edgar -- Edgar Gabriel Associate Professor Parallel Software >>>>>>> Technologies Lab http://pstl.cs.uh.edu Department of Computer >>>>>>> Science University of Houston Philip G. Hoffman Hall, Room >>>>>>> 524 Houston, TX-77204, USA Tel: +1 (713) 743-3857 <tel:%2B1%20%28713%29%20743-3857> >>>>>>> Fax: +1 (713) 743-3335 <tel:%2B1%20%28713%29%20743-3335> >>>>>>> _______________________________________________ devel mailing list >>>>>>> de...@open-mpi.org <mailto:de...@open-mpi.org> <mailto:de...@open-mpi.org <mailto:de...@open-mpi.org>> Subscription: >>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel Link to this >>>>>>> post: >>>>>>> http://www.open-mpi.org/community/lists/devel/2014/11/16332.php >>>>>> >>>>>> _______________________________________________ devel mailing list >>>>>> de...@open-mpi.org <mailto:de...@open-mpi.org> <mailto:de...@open-mpi.org <mailto:de...@open-mpi.org>>Subscription: >>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/develLink to this post: >>>>>> http://www.open-mpi.org/community/lists/devel/2014/11/16333.php >>>>>> >>>>> >>>>> -- >>>>> Edgar Gabriel >>>>> Associate Professor >>>>> Parallel Software Technologies Lab http://pstl.cs.uh.edu >>>>> <http://pstl.cs.uh.edu/> >>>>> Department of Computer Science University of Houston >>>>> Philip G. Hoffman Hall, Room 524 Houston, TX-77204, USA >>>>> Tel: +1 (713) 743-3857 <tel:%2B1%20%28713%29%20743-3857> Fax: +1 (713) 743-3335 <tel:%2B1%20%28713%29%20743-3335> >>>>> _______________________________________________ >>>>> devel mailing list >>>>> de...@open-mpi.org <mailto:de...@open-mpi.org> <mailto:de...@open-mpi.org <mailto:de...@open-mpi.org>> >>>>> Subscription:http://www.open-mpi.org/mailman/listinfo.cgi/devel >>>>> Link to this >>>>> post:http://www.open-mpi.org/community/lists/devel/2014/11/16334.php >>>> >>>> >>>> >>>> _______________________________________________ >>>> devel mailing list >>>> de...@open-mpi.org <mailto:de...@open-mpi.org> >>>> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel >>>> Link to this post: http://www.open-mpi.org/community/lists/devel/2014/11/16336.php >>>> >>> >>> -- >>> Edgar Gabriel >>> Associate Professor >>> Parallel Software Technologies Lab http://pstl.cs.uh.edu >>> Department of Computer Science University of Houston >>> Philip G. Hoffman Hall, Room 524 Houston, TX-77204, USA >>> Tel: +1 (713) 743-3857 <tel:%2B1%20%28713%29%20743-3857> Fax: +1 (713) 743-3335 <tel:%2B1%20%28713%29%20743-3335> >>> _______________________________________________ >>> devel mailing list >>> de...@open-mpi.org <mailto:de...@open-mpi.org> >>> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel >>> Link to this post: http://www.open-mpi.org/community/lists/devel/2014/11/16338.php >> >> _______________________________________________ >> devel mailing list >> de...@open-mpi.org <mailto:de...@open-mpi.org> >> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel >> Link to this post: http://www.open-mpi.org/community/lists/devel/2014/11/16339.php >> > > -- > Edgar Gabriel > Associate Professor > Parallel Software Technologies Lab http://pstl.cs.uh.edu > Department of Computer Science University of Houston > Philip G. Hoffman Hall, Room 524 Houston, TX-77204, USA > Tel: +1 (713) 743-3857 <tel:%2B1%20%28713%29%20743-3857> Fax: +1 (713) 743-3335 <tel:%2B1%20%28713%29%20743-3335> > _______________________________________________ > devel mailing list > de...@open-mpi.org <mailto:de...@open-mpi.org> > Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel > Link to this post: http://www.open-mpi.org/community/lists/devel/2014/11/16358.php _______________________________________________ devel mailing list de...@open-mpi.org <mailto:de...@open-mpi.org> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel Link to this post: http://www.open-mpi.org/community/lists/devel/2014/11/16359.php _______________________________________________ devel mailing list de...@open-mpi.org Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel Link to this post: http://www.open-mpi.org/community/lists/devel/2014/11/16361.php
-- Edgar Gabriel Associate Professor Parallel Software Technologies Lab http://pstl.cs.uh.edu Department of Computer Science University of Houston Philip G. Hoffman Hall, Room 524 Houston, TX-77204, USA Tel: +1 (713) 743-3857 Fax: +1 (713) 743-3335