scx_lavd: create per-domain DSQs NUMA-aware
multics69 opened this issue · 0 comments
multics69 commented
In the init_cpdoms()
, we create per-compute domain DSQs. However, the DSQs are placed in in an arbitrary NUMA domain by passing -1
as NUMA id. Such non-optimal DSQ creation will create unnecessary cross-NUMA traffic on multi-socket machine. So it should be fixed.
static s32 init_cpdoms(u64 now)
{
struct cpdom_ctx *cpdomc;
int err;
for (int i = 0; i < LAVD_CPDOM_MAX_NR; i++) {
/* ... */
err = scx_bpf_create_dsq(cpdomc->id, **-1**);
/* ... */
}
return 0;
}