Bugzilla – Bug 171
discontinuous cpulist unsupported by numa_node
Last modified: 2011-12-29 02:04:54 MST
You need to log in before you can comment on or make changes to this bug.
Now TORQUE uses struct numa_node.cpu_offset and numa_node.num_cpus to describe cpuIDs, which precondition the cpu list is continuous, the same as mems. However, according to cpuset interface, cpu list like cpus=1,5-6,7-9,13 is valid. At lease the layout topology of my server reads cpus=0,4,8,12,16,20 mem=0 cpus=24,28,32,36,40,44 mem=1 cpus=3,7,11,15,19,23 mem=2 cpus=27,31,35,39,43,47 mem=3 cpus=2,6,10,14,18,22 mem=4 cpus=26,30,34,38,42,46 mem=5 cpus=1,5,9,13,17,21 mem=6 cpus=25,29,33,37,41,45 mem=7 So I make a patch which uses numa_node.cpu_list and numa_node.mem_list to describe discontinuous cpulist and memlist. The best struct to describe cpulist is bitmap instead of int array, which can avoid duplicate cpuIDs.
Created an attachment (id=100) [details] patch to fix discontinuous cpulist