Open MPI logo

Hardware Locality Development Mailing List Archives

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

Subject: Re: [hwloc-devel] python bindings
From: Guy Streeter (streeter_at_[hidden])
Date: 2011-01-20 14:57:20


On 01/20/2011 01:22 PM, Samuel Thibault wrote:
> Bernd Kallies, le Thu 20 Jan 2011 20:13:03 +0100, a écrit :
>> The only thing I was wondering about are these OO method names, which I
>> had to invent them myself. If there is some need to synchronize these
>> with the python binding, we may agree about them. Backwards
>> compatibility of the Perl binding is not a real problem, since there may
>> be many aliases for a function in the base XS code.
>
> Could you perhaps list those you have defined already, if any?
>

I added some iterators:
bitmap.all_set_bits
obj.infos
topology.objs_by_depth
topology.objs_by_type

I also made obj.children an iterator.
I think I could do the same with siblings and cousins if that makes sense.

I changed all the snprintf functions or asprintf methods.

I implemented bitmap.bitmap_weight() as a method, but also bitmap.weight as a
property. Also bitmap.bitmap_first() and bitmap.first, etc. I'm thinking I
could do away with the method calls and just provide the properties.

Instead of the bitmap isequal, or, and, xor, and not methods, I supported the
operators ==, != |, |=, &, &=, ^. ^=, and ~.

A new topology instance gets init() automatically, and is destroyed when it
goes away, so those methods are not exposed.