Open MPI logo

Hardware Locality Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Hardware Locality Development mailing list

Subject: Re: [hwloc-devel] -lhwloc in components.
From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2012-09-05 11:05:39


On Sep 5, 2012, at 10:21 AM, Samuel Thibault wrote:

> So ltdl does not help for that matter?

No. It's not really an ltdl issue. ltdl is just a portable wrapper around OS-specific dlopen-like mechanisms.

Back-end linker semantics (like these) are a whole different issue.

> One way would be to pass to the component a structure with all the
> useful function pointers (using #define to keep the same source code).

We thought about this in OMPI and decided it would be a nightmare in the source code. That being said, we didn't *actually try it*, so I can't say for sure. But it certainly does make me nervous.

> Another way would be to gather the allowed functions into a separate
> libhwloc-components library without internal state, thus allowing
> several copies, but that would bring a possibility of differing versions
> between e.g. a statically-linked libhwloc.a and the dynamically-loaded
> libhwloc-components.so.

Yuck. If a software design *requires* multiple copies of the code, that just seems pretty ugly to me. :-\

-- 
Jeff Squyres
jsquyres_at_[hidden]
For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/