Memory Sharing section states that:
# The operating system doesn’t [monitor](https://en.algorithmica.org/hpc/profiling/events) such activities — what a process does is its own private business — so by default, it assigns threads to cores arbitrarily during execution, without caring about cache affinity and only taking into account the core load.
The CPU topology including caches is taken into account by Linux kernel when assigning cores (see https://www.kernel.org/doc/html/v6.1/scheduler/sched-domains.html). Not sure about other operating systems.
Memory Sharing section states that:
# The operating system doesn’t [monitor](https://en.algorithmica.org/hpc/profiling/events) such activities — what a process does is its own private business — so by default, it assigns threads to cores arbitrarily during execution, without caring about cache affinity and only taking into account the core load.The CPU topology including caches is taken into account by Linux kernel when assigning cores (see https://www.kernel.org/doc/html/v6.1/scheduler/sched-domains.html). Not sure about other operating systems.