Messages in this thread | | | Date | Mon, 13 May 2024 09:33:27 +0200 | Subject | Re: [PATCH 2/2] nvme-pci: allow unmanaged interrupts | From | Benjamin Meier <> |
| |
> From: Christoph Hellwig <hch@lst.de> > > So let them argue why. I'd rather have a really, really, really > good argument for this crap, and I'd like to hear it from the horses > mouth.
I reached out to Keith to explore the possibility of manually defining which cores handle NVMe interrupts.
The application which we develop and maintain (in the company I work) has very high requirements regarding latency. We have some isolated cores and we run our application on those.
Our system is using kernel 5.4 which unfortunately does not support "isolcpus=managed_irq". Actually, we did not even know about that option, because we are focussed on kernel 5.4. It solves part of our problem, but being able to specify where exactly interrupts are running is still superior in our opinion.
E.g. assume the number of house-keeping cores is small, because we want to have full control over the system. In our case we have threads of different priorities where some get an exclusive core. Some other threads share a core (or a group of cores) with other threads. Now we are still happy to assign some interrupts to some of the cores which we consider as "medium-priority". Due to the small number of non-isolated cores, it can be tricky to assign all interrupts to those without a performance-penalty.
Given these requirements, manually specifying interrupt/core assignments would offer greater flexibility and control over system performance. Moreover, the proposed code changes appear minimal and have no impact on existing functionalities.
| |