Add testcase for freeCPUs with three Sockets

This commit is contained in:
Rancho Chen 2021-05-14 19:52:50 +08:00 committed by Kevin Klues
parent 67c92a5cd4
commit 9469ee7025
2 changed files with 33 additions and 0 deletions

View File

@ -175,6 +175,12 @@ func TestCPUAccumulatorFreeCPUs(t *testing.T) {
cpuset.NewCPUSet(1, 2, 3, 4, 5, 7, 8, 9, 10, 11),
[]int{2, 8, 4, 10, 1, 7, 3, 9, 5, 11},
},
{
"triple socket HT, 12 cpus free",
topoTripleSocketHT,
cpuset.NewCPUSet(0, 1, 2, 3, 6, 7, 8, 9, 10, 11, 12, 13),
[]int{12, 13, 0, 1, 2, 3, 6, 7, 8, 9, 10, 11},
},
}
for _, tc := range testCases {

View File

@ -73,6 +73,33 @@ var (
},
}
// fake topology for testing purposes only
topoTripleSocketHT = &topology.CPUTopology{
NumCPUs: 18,
NumSockets: 3,
NumCores: 9,
CPUDetails: map[int]topology.CPUInfo{
0: {CoreID: 0, SocketID: 1, NUMANodeID: 1},
1: {CoreID: 0, SocketID: 1, NUMANodeID: 1},
2: {CoreID: 1, SocketID: 1, NUMANodeID: 1},
3: {CoreID: 1, SocketID: 1, NUMANodeID: 1},
4: {CoreID: 2, SocketID: 1, NUMANodeID: 1},
5: {CoreID: 2, SocketID: 1, NUMANodeID: 1},
6: {CoreID: 3, SocketID: 0, NUMANodeID: 0},
7: {CoreID: 3, SocketID: 0, NUMANodeID: 0},
8: {CoreID: 4, SocketID: 0, NUMANodeID: 0},
9: {CoreID: 4, SocketID: 0, NUMANodeID: 0},
10: {CoreID: 5, SocketID: 0, NUMANodeID: 0},
11: {CoreID: 5, SocketID: 0, NUMANodeID: 0},
12: {CoreID: 6, SocketID: 2, NUMANodeID: 2},
13: {CoreID: 6, SocketID: 2, NUMANodeID: 2},
14: {CoreID: 7, SocketID: 2, NUMANodeID: 2},
15: {CoreID: 7, SocketID: 2, NUMANodeID: 2},
16: {CoreID: 8, SocketID: 2, NUMANodeID: 2},
17: {CoreID: 8, SocketID: 2, NUMANodeID: 2},
},
}
/*
Topology from https://www.open-mpi.org/projects/hwloc/lstopo/images/KNL.SNC4.H50.v1.11.png.
Socket0: