Willy Tarreau
af648c7b58
MINOR: cpu-topo: assign clusters to cores without and renumber them
...
Due to the previous commit we can end up with cores not assigned
any cluster ID. For this, at the end we sort the CPUs by topology
and assign cluster IDs to remaining CPUs based on pkg/node/llc.
For example an 14900 now shows 5 clusters, one for the 8 p-cores,
and 4 of 4 e-cores each.
The local cluster numbers are per (node,pkg) ID so that any rule could
easily be applied on them, but we also keep the global numbers that
will help with thread group assignment.
We still need to force to assign distinct cluster IDs to cores
running on a different L3. For example the EPYC 74F3 is reported
as having 8 different L3s (which is true) and only one cluster.
Here we introduce a new function "cpu_compose_clusters()" that is called
from the main init code just after cpu_detect_topology() so that it's
not OS-dependent. It deals with this renumbering of all clusters in
topology order, taking care of considering any distinct LLC as being
on a distinct cluster.
2025-03-14 18:30:31 +01:00
..
2023-08-01 10:49:06 +02:00
2025-01-27 11:11:43 +01:00
2024-07-25 15:39:39 +02:00
2024-09-30 16:55:53 +02:00
2024-11-21 19:58:06 +01:00
2024-11-21 19:58:06 +01:00
2024-12-10 16:19:33 +01:00
2024-12-12 11:26:33 +01:00
2024-10-18 14:30:24 +02:00
2024-04-11 16:41:08 +02:00
2025-02-11 17:16:14 +01:00
2024-05-02 10:55:25 +02:00
2024-10-12 16:29:15 +02:00
2024-10-18 18:42:47 +02:00
2024-12-17 17:39:12 +01:00
2024-03-05 11:50:34 +01:00
2022-03-04 08:58:32 +01:00
2023-02-21 11:44:55 +01:00
2025-03-06 10:49:48 +01:00
2023-10-17 18:51:13 +02:00
2024-09-03 17:49:21 +02:00
2023-09-01 14:00:04 +02:00
2024-07-12 15:27:04 +02:00
2022-08-17 10:45:22 +02:00
2024-04-17 11:14:44 +02:00
2024-10-24 11:32:20 +02:00
2023-05-17 09:33:54 +02:00
2024-12-25 11:53:11 +01:00
2025-03-12 18:08:12 +01:00
2025-02-22 11:32:40 +01:00
2023-04-07 00:46:59 +02:00
2025-01-31 10:41:50 +01:00
2025-01-31 10:41:50 +01:00
2024-05-02 10:55:25 +02:00
2025-03-14 18:30:30 +01:00
2025-03-14 18:30:31 +01:00
2023-07-20 11:01:09 +02:00
2025-03-14 18:30:30 +01:00
2025-03-03 12:43:32 +01:00
2025-02-03 17:09:48 +01:00
2024-03-05 11:50:34 +01:00
2022-03-04 08:58:32 +01:00
2022-03-04 08:58:32 +01:00
2024-03-25 17:34:19 +00:00
2024-03-25 17:34:19 +00:00
2024-03-25 17:34:19 +00:00
2024-05-10 17:18:13 +02:00
2024-05-15 19:37:12 +02:00
2023-05-11 12:02:21 +02:00
2024-11-29 07:22:18 +01:00
2024-11-07 11:35:55 +01:00
2024-09-03 17:49:21 +02:00
2025-02-26 13:00:18 +01:00
2025-02-26 13:00:18 +01:00
2024-10-22 20:13:00 +02:00
2025-02-21 18:26:29 +01:00
2023-10-26 15:18:48 +02:00
2025-03-14 18:30:30 +01:00
2025-01-20 17:53:55 +01:00
2024-04-05 15:40:42 +02:00
2024-11-07 18:17:03 +01:00
2024-11-19 15:29:40 +01:00
2023-08-08 19:10:54 +02:00
2022-05-30 09:59:26 +02:00
2022-05-30 09:59:26 +02:00
2024-05-16 10:31:17 +02:00
2024-11-29 07:22:32 +01:00
2024-12-11 10:52:11 +01:00
2024-03-13 09:24:46 +01:00
2025-02-03 17:09:48 +01:00
2023-01-13 11:22:13 +01:00
2024-04-29 17:10:47 +02:00
2024-03-05 11:50:34 +01:00
2023-01-27 15:18:59 +01:00
2023-01-27 15:18:59 +01:00
2024-04-04 19:10:01 +02:00
2023-01-27 15:18:59 +01:00
2023-05-11 15:37:04 +02:00
2024-11-19 15:29:40 +01:00
2024-06-28 14:36:30 +02:00
2024-10-17 13:54:54 +02:00
2024-10-17 13:54:54 +02:00
2025-03-03 12:43:32 +01:00
2025-03-04 18:18:10 +01:00
2022-04-14 16:57:12 +02:00
2024-04-24 15:54:55 +02:00
2025-03-03 12:43:32 +01:00
2024-03-05 11:50:34 +01:00
2024-03-29 17:08:37 +01:00
2024-03-29 17:08:37 +01:00
2024-12-25 12:33:06 +01:00
2024-11-21 19:55:21 +01:00
2024-12-10 16:04:11 +01:00
2024-12-10 16:04:11 +01:00
2025-01-23 17:40:48 +01:00
2024-09-25 17:12:11 +02:00
2024-11-06 10:21:15 +01:00
2024-10-04 21:38:08 +02:00
2024-06-17 19:37:29 +02:00
2024-06-17 19:37:29 +02:00
2024-08-30 14:58:59 +02:00
2025-02-03 07:49:50 +01:00
2025-01-31 10:41:49 +01:00
2024-10-16 18:32:52 +02:00
2025-03-07 12:06:26 +01:00
2025-03-07 12:06:27 +01:00
2025-02-06 11:19:32 +01:00
2024-10-16 22:02:39 +02:00
2024-11-25 15:20:24 +01:00
2022-08-06 17:12:51 +02:00
2022-11-29 15:14:39 +01:00
2024-04-16 07:37:28 +02:00
2024-07-25 15:39:39 +02:00
2024-07-25 15:39:39 +02:00
2025-03-03 12:43:32 +01:00
2024-11-29 07:22:25 +01:00
2024-11-29 07:23:01 +01:00
2024-05-03 09:01:36 +02:00
2023-12-21 14:22:27 +01:00
2022-12-08 17:32:57 +01:00
2023-08-12 19:04:34 +02:00
2024-10-24 16:12:46 +02:00
2024-07-03 15:02:40 +02:00
2023-11-23 17:38:58 +01:00
2024-07-11 15:14:06 +02:00
2024-03-05 11:50:34 +01:00
2023-04-23 09:46:15 +02:00
2024-03-05 11:50:34 +01:00
2024-04-16 07:37:28 +02:00
2024-10-29 12:14:50 +01:00
2024-08-30 18:53:49 +02:00
2025-03-12 10:51:35 +01:00
2025-03-12 10:49:36 +01:00
2025-03-07 12:06:26 +01:00
2024-08-07 15:40:52 +02:00
2024-05-16 10:31:17 +02:00
2024-05-16 10:31:17 +02:00
2024-03-05 11:50:34 +01:00
2022-03-04 08:58:32 +01:00
2024-03-05 11:50:34 +01:00
2025-01-28 12:49:41 +01:00
2024-03-05 11:50:34 +01:00
2024-03-05 11:50:34 +01:00
2024-12-13 14:42:43 +01:00
2024-04-02 18:47:19 +02:00
2025-01-30 17:19:38 +01:00
2025-01-23 17:40:48 +01:00
2024-07-03 15:02:40 +02:00
2024-07-03 15:02:40 +02:00
2023-07-27 10:51:03 +02:00
2024-10-17 15:04:06 +02:00
2024-11-19 16:16:48 +01:00
2025-02-12 11:51:09 +01:00
2024-01-31 16:28:54 +01:00
2024-01-31 16:28:54 +01:00
2025-02-14 09:00:05 +01:00
2025-02-14 09:00:05 +01:00
2024-02-14 11:32:29 +01:00
2024-11-20 17:34:22 +01:00
2023-11-23 16:23:14 +01:00
2023-12-21 16:33:06 +01:00
2025-01-23 17:40:20 +01:00
2025-01-23 17:40:48 +01:00
2024-08-07 10:57:10 +02:00
2023-11-28 15:47:18 +01:00
2024-07-25 15:39:39 +02:00
2024-11-06 14:29:14 +01:00
2024-03-11 14:27:51 +01:00
2024-07-25 15:39:39 +02:00
2024-07-11 11:02:44 +02:00
2023-07-27 10:51:03 +02:00
2024-08-30 17:04:09 +02:00
2023-11-09 16:23:52 +01:00
2022-05-30 09:59:26 +02:00
2024-10-04 18:09:51 +02:00
2024-10-04 17:56:45 +02:00
2024-08-30 17:04:09 +02:00
2024-08-30 17:04:09 +02:00
2024-08-30 17:04:09 +02:00
2024-01-12 16:08:36 +01:00
2023-11-30 15:59:45 +01:00
2024-07-11 15:14:06 +02:00
2024-08-07 15:40:52 +02:00
2025-01-30 18:12:53 +01:00
2025-01-30 18:12:40 +01:00
2024-11-28 21:39:05 +01:00
2025-01-21 22:01:34 +01:00
2024-01-02 11:44:42 +01:00
2024-01-02 10:29:41 +01:00
2023-12-21 14:22:27 +01:00
2024-03-25 17:34:19 +00:00
2024-07-24 17:59:03 +02:00
2023-07-03 16:32:01 +02:00
2024-02-20 15:18:39 +01:00
2024-09-16 22:55:40 +02:00
2025-03-03 04:05:47 +01:00
2024-10-24 11:35:57 +02:00
2024-05-22 10:01:57 +02:00
2024-06-26 15:05:06 +02:00
2023-11-23 16:23:14 +01:00
2024-04-24 10:25:38 +02:00
2022-11-24 08:32:27 +01:00
2025-02-21 11:22:35 +01:00
2024-10-10 16:55:15 +02:00
2024-08-30 18:53:49 +02:00
2024-10-29 12:15:09 +01:00
2022-01-28 19:04:02 +01:00
2024-05-21 20:14:05 +02:00
2025-02-20 11:56:27 +01:00
2024-07-24 14:19:10 +02:00
2024-07-17 16:52:06 +02:00
2025-02-13 17:44:00 +01:00
2025-02-17 18:26:37 +01:00
2025-01-24 12:31:07 +01:00
2024-12-19 10:53:05 +01:00
2024-05-17 17:35:51 +02:00
2024-12-23 11:23:00 +01:00
2025-01-24 12:31:07 +01:00
2024-12-16 14:54:53 +01:00
2024-04-26 11:34:02 +02:00
2024-05-03 09:01:36 +02:00
2024-04-18 17:04:08 +02:00
2024-04-19 01:54:00 +02:00
2024-04-18 17:04:08 +02:00
2024-05-02 16:43:26 +02:00
2024-12-10 16:19:33 +01:00
2024-05-02 16:42:36 +02:00
2025-01-31 10:41:50 +01:00
2025-01-31 10:41:50 +01:00
2024-12-05 13:14:21 +01:00
2024-09-03 17:49:21 +02:00
2025-02-03 17:09:48 +01:00
2025-01-31 10:41:50 +01:00
2024-12-12 11:19:10 +01:00
2024-04-03 15:53:18 +02:00
2025-01-28 14:53:37 +01:00
2024-12-03 19:45:08 +01:00
2024-04-04 19:10:01 +02:00
2024-07-12 15:27:04 +02:00
2025-02-10 18:34:43 +01:00
2025-03-14 18:30:30 +01:00
2024-08-07 15:40:52 +02:00
2024-08-07 15:40:52 +02:00
2023-08-01 10:48:28 +02:00
2025-02-24 13:37:52 +01:00
2023-04-13 16:57:51 +02:00
2024-12-03 19:45:08 +01:00
2025-03-12 10:51:20 +01:00
2025-01-10 14:50:59 +01:00
2024-12-18 09:52:06 +01:00
2024-11-14 15:03:38 +01:00
2024-11-14 15:03:38 +01:00
2024-09-15 23:51:51 +02:00
2024-09-15 23:51:51 +02:00
2024-04-17 11:14:44 +02:00
2025-01-20 17:53:55 +01:00
2024-12-13 14:42:43 +01:00
2024-03-05 11:50:34 +01:00