The new "bgq" branch now contains proper topology for BG/Q nodes (including cores and caches, except the prefetching cache) as well as support for set/get binding of the current thread or of another thread. No process-wide binding since I don't know how to iterate over all threads of a process.

A tarball is available at:
    https://ci.inria.fr/hwloc/job/hwloc-zcustom-tarball/lastSuccessfulBuild/artifact/hwloc-1.7a1r5312.tar.gz
(this is our new regression testing tool, I hope the tarball won't disappear too soon)

I don't expect a lot more features so this branch will likely go into trunk very soon. But if you can look at it, that'll be great.

Brice



Le 08/01/2013 18:06, Erik Schnetter a écrit :
I am trying to use hwloc on a Blue Gene/Q. Building and installing worked fine, and it reports the system configuration fine as well (i.e. it shows all PUs). However, when I try to inquire the thread/core bindings, hwloc crashes with an error in libc's free(). This is both with 1.6 and 1.6.1rc1.

The error occurs apparently in CPU_FREE called from hwloc_linux_find_kernel_nr_cpus.

Does this ring a bell with anyone? I know this is not enough information to debug things, but do you have any pointers for things to look at?

I remember reading somewhere that the last bit in a cpu_set_t cannot be used. A Blue Gene/Q has 64 PUs, and may be using 64-bit integers to hold cpu_set_t data. Could this be an issue?

My goal is to examine and experiment with thread/core bindings with OpenMP to improve performance.

-erik

--
Erik Schnetter <schnetter@gmail.com> http://www.perimeterinstitute.ca/personal/eschnetter/


_______________________________________________
hwloc-users mailing list
hwloc-users@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/hwloc-users