Hello,

The doc says "get the last physical CPU where the current process or
thread ran". As usual, there's no well-defined portable way to identify
those things. On AMD, it's a core. On Intel, it's a hyperthread, and
could also be a core if HT is disabled. On other archs/systems, it may
be called "logical processor" or "execution unit" instead. We try to
explain that at the end of the glossary
http://www.open-mpi.org/projects/hwloc/doc/v1.7.2/a00001.php but we
can't repeat that everywhere.

the actually returns a cpuset, so it doesn't actually return any object,
but you can convert the cpuset into what you want. It sets a single bit
in that cpuset (once per thread if you look at an entire processor), so
that corresponds to a single HT thread on Intel, but that's also a
single core on Intel without HT.

Brice




Le 05/10/2013 02:45, Vlad a écrit :
> Greetings,
>
>       I've been a user for a while and have just noticed an area where the 
> API documentation is either unclear or the version I am using (1.7 on Fedora 
> 17) returns a wrong topology object type. Specifically, I took the "physical 
> CPU" wording to mean HWLOC_OBJ_CORE but on a machine that has hyperthreading 
> enabled the above method appears to return HWLOC_OBJ_PU).
>
> Most likely, all is well (returning the smallest processing element of 
> hardware kind of makes more sense) and I'd misunderstood the API all along (I 
> work mostly on machines with HT disabled), but it would be useful to confirm.
>
> Thanks in advance,
> Vlad
>
>
> _______________________________________________
> hwloc-users mailing list
> hwloc-us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/hwloc-users

Reply via email to