On Fri, Aug 09, 2024 at 11:23:58PM GMT, Ming Lei wrote: > From above implementation, "isolcpus=io_queue" is actually just one > optimization on "isolcpus=managed_irq", and there isn't essential > difference between the two. Indeed, the two versions do not differ so much. I understood, that you really want to keep managed_irq as it currently is and that's why I thought we need io_queue. > And I'd suggest to optimize 'isolcpus=managed_irq' directly, such as: > > - reduce nr_queues or numgrps for group_cpus_evenly() according to > house-keeping cpu mask Okay. > - spread house-keeping & isolate cpu mask evenly on each queue, and > you can use the existed two-stage spread for doing that Sure if we can get the spreading sorted out so that not all isolcpus are mapped to the first hctx. Thanks, Daniel