sched/topology: Optimize topology_span_sane()
authorKyle Meyer <kyle.meyer@hpe.com>
Wed, 10 Apr 2024 21:33:11 +0000 (16:33 -0500)
committerYury Norov <yury.norov@gmail.com>
Thu, 9 May 2024 16:25:08 +0000 (09:25 -0700)
commit05037e5f0f17935a86861f9610f941ebf346a95e
treee018ce2d77e9abcadef1c7227343f26c03dfed70
parent6802f9347993a534797847f627c27f4334067945
sched/topology: Optimize topology_span_sane()

Optimize topology_span_sane() by removing duplicate comparisons.

Since topology_span_sane() is called inside of for_each_cpu(), each
previous CPU has already been compared against every other CPU. The
current CPU only needs to be compared against higher-numbered CPUs.

The total number of comparisons is reduced from N * (N - 1) to
N * (N - 1) / 2 on each non-NUMA scheduling domain level.

Signed-off-by: Kyle Meyer <kyle.meyer@hpe.com>
Reviewed-by: Yury Norov <yury.norov@gmail.com>
Acked-by: Vincent Guittot <vincent.guittot@linaro.org>
Signed-off-by: Yury Norov <yury.norov@gmail.com>
kernel/sched/topology.c