sched-ext/scx

scx_lavd: create per-domain DSQs NUMA-aware

multics69 opened this issue · 0 comments

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;
}