[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] Add CPU topology info (thread/core/socket) in xenpm
2009/3/13 Akio Takebe <takebe_akio@xxxxxxxxxxxxxx>: > Hi, > > Akio Takebe wrote: >> Hi, Yu >> >> Good patch! We wanted this feature. >> >>> Add CPU topology info (thread/core/socket) in xenpm >> Can this patch show thread? >> >>> +#define MAX_NR_CPU 512 >>> + >>> +void cpu_topology_func(int argc, char *argv[]) >>> +{ >>> + uint32_t cpu_to_core[MAX_NR_CPU]; >>> + uint32_t cpu_to_socket[MAX_NR_CPU]; >>> + struct xc_get_cputopo info; >>> + int i, ret; >>> + >>> + info.cpu_to_core = cpu_to_core; >>> + info.cpu_to_socket = cpu_to_socket; >>> + info.max_cpus = MAX_NR_CPU; >>> + ret = xc_get_cputopo(xc_fd, &info); >>> + if (!ret) >>> + { >>> + printf("CPU\tcore\tsocket\n"); >>> + for (i=0; i<info.nr_cpus; i++) >>> + { >>> + if ( info.cpu_to_core[i] != INVALID_TOPOLOGY_ID && >>> + info.cpu_to_socket[i] != INVALID_TOPOLOGY_ID ) >>> + { >>> + printf("CPU%d\t %d\t %d\n", i, info.cpu_to_core[i], >>> + info.cpu_to_socket[i]); >>> + } >>> + } >>> + } >>> + else >>> + { >>> + printf("Can not get Xen CPU topology!\n"); >>> + } >>> + >>> + return ; >>> +} >> The function looks like only show core/socket. >> > Is the CPU%d means thread? > > Best Regards, > > Akio Takebe Yes, you are right :) thread is the smallest unit, so here just use CPU for thread. A thread related example is, in a 2 sockets system, where 4 cores per socket and 2 threads per core, here is a possible output # xenpm get-cpu-topology CPU core socket CPU0 0 0 CPU1 0 1 CPU2 1 0 CPU3 1 1 CPU4 2 0 CPU5 2 1 CPU6 3 0 CPU7 3 1 CPU8 0 0 CPU9 0 1 CPU10 1 0 CPU11 1 1 CPU12 2 0 CPU13 2 1 CPU14 3 0 CPU15 3 1 Indicating the following topology socket 0: core 0: CPU0 CPU8 core 1: CPU2 CPU10 core 2: CPU4 CPU12 core 3: CPU6 CPU14 socket 1: core 0: CPU1 CPU9 core 1: CPU3 CPU11 core 2: CPU5 CPU13 core 3: CPU7 CPU15 Probably later I can add one option to make xenpm output the above more human-readable format. Best Regards Ke Intel Open Source Technology Center _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |