pcp
[Top] [All Lists]

Re: [pcp] building PCP with IB build deps

To: Mark Goodwin <goodwinos@xxxxxxxxx>, Martin Hicks <mort@xxxxxxx>
Subject: Re: [pcp] building PCP with IB build deps
From: Nathan Scott <nscott@xxxxxxxxxx>
Date: Thu, 15 Oct 2009 09:54:56 +1100 (EST)
Cc: pcp@xxxxxxxxxxx
In-reply-to: <338767496.1021255560293865.JavaMail.root@xxxxxxxxxxxxxxxxxx>
----- "Mark Goodwin" <goodwinos@xxxxxxxxx> wrote:

> Martin Hicks wrote:
> > We still have a bit of a build problem with PCP and the bits that
> > require infiniband in order to build correctly.  This currently
> means
> > the ib PMDA and the cluster PMDA.  Upstream debian is still being
> built
> > without a build-dep on infiniband.  It looks like I have a special
> > repository added in order to get these dependencies:
> > 
> > deb http://pkg-ofed.alioth.debian.org/apt/ofed ./
> > 
> > However, both Redhat and SuSE now ship ofed with their products.  I
> 
> but are they shipping the version with Max's change included?
> (was that v1.4?). Without that, the IB PMDA wont work, or did we
> figure out a workaround for that? In any case, it's complicated
> because some of the already released Red Hat and SuSE products will
> not have the right version of the library, or wont have it at all.
> 
> > would like to see a Build-dep added to the specfile to get these
> PMDAs
> > to build, but I don't like adding another dependency to the core
> pcp
> > RPM.
> > 
> > How should this be handled?  Should we just stick the ib PMDA into
> a
> > separate sub-package, like pcp-infiniband?
> 
> yeah that'll work. I can pull together the RPM spec changes to make
> this happen fairly easily (and I assume Nathan can ditto for deb).

I'm not 100% sure about this approach - another alternative which I
think would be cleaner would be  to have a separate source tree for
Infiniband (obviously, with its own packaging, etc).

I think for the complex PMDAs with complex dependencies, this lets
us keep the core PCP sources cleaner and lets us release this piece
independently.  This is something that it would be good to have an
oss example of, cos its what companies that embrace PCP need to do
for their own custom PMDAs (we do this here for our custom apps,
for example), so a maintained example of doing a PMDA & its configs
and any custom tools like this would be generally beneficial IMO.
IIRC, theres other examples @sgi like this as well - XVM springs to
mind, I think theres others too.

It would be a bit along the lines of pcp-gui, in some respects,
although less C++ish and more Cish, obviously.  The builddefs and
other build changes made pre-3.0.0 mean the infiniband build system
can just use the installed builddefs, and not have to worry about
most of the complexity in the PCP build.

> > 
> > The dependencies for the cluster PMDA are only really build-time. 

Did you mean run-time?  I just tweaked the makefile and built the
cluster PMDA code here, it seems to have no build deps on Infiniband.

> > you run the cluster PMDA you'll currently end up with a log message
> > about failing to open the local context to the ib pmda (or
> something
> > else like that...I'll have to check this out).  If I'm wrong, then
> this
> > is what *should* happen. :)

> can we some how manage the dependency between the cluster PMDA and
> the
> IB PMDA, or should the cluster PMDA go into it's own sub-package too?

Seems to me we could build & install the cluster PMDA now, as long
as it handles missing infiniband data correctly?  Theres long been
talk of making this more generic too, so it seems this is something
that should stay in core PCP.

cheers.

-- 
Nathan

<Prev in Thread] Current Thread [Next in Thread>