Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1641544

Re: [RFC] NVMe Configuraiton using sysctl

From Oza Oza <oza.oza@broadcom.com>
Newsgroups linux.kernel
Subject Re: [RFC] NVMe Configuraiton using sysctl
Date 2017-05-15 13:10 +0200
Message-ID <tHm2Z-7kX-13@gated-at.bofh.it> (permalink)
References <tHjHQ-5H0-13@gated-at.bofh.it> <tHjRv-5Kw-3@gated-at.bofh.it> <tHkky-6aZ-13@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Mon, May 15, 2017 at 2:45 PM, Sagi Grimberg <sagi@grimberg.me> wrote:
>
>>> Hi,
>
>
> Hi Oza,
>
>>> we are configuring interrupt coalesce for NVMe, but right now, it uses
>>> module param.
>>> so the same interrupt coalesce settings get applied for all the NVMEs
>>> connected to different RCs.
>>>
>>> ideally it should be with sysctl.
>
>
> If at all, I would place this in nvme-cli (via ioctl) instead of
> sysctl.
>
>>> for e.g.
>>> sysctl should provide interface to change
>>> Per-CPU IO queue pairs, interrupt coalesce settings etc..
>
>
> My personal feeling is that percpu granularity is a lot to take in for
> the user, and also can yield some unexpected performance
> characteristics. But I might be wrong here..
>

I thought of nvme_ioctl, but was not sure whether sysctl or ioctl.
although we are interested only introducing interrupt coalesce,
because that brings improvements.

>>> please suggest if we could have/implement sysctl module for NVMe ?
>
>
> I have asked this before, but interrupt coalescing has very little
> merit without being able to be adaptive. net drivers maintain online
> stats and schedule interrupt coalescing modifications.
>
> Should work in theory, but having said that, interrupt coalescing as a
> whole is essentially unusable in nvme since the coalescing time limit
> is in units of 100us increments...

surprisingly, it brings 20% improvement in CPU utilization for us.
so it saves lot of our CPU cycles there freeing up to do something else.
the value has to be tuned but that's all there it is.
so we are keen on having this to tune in.

so your suggestion is to use IOCTL instead of sysctl right ?.
and as of now we are only interested in interrupt coalesce alone.

Regards,
Oza.

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[RFC] NVMe Configuraiton using sysctl Oza Oza <oza.oza@broadcom.com> - 2017-05-15 10:40 +0200
  Re: [RFC] NVMe Configuraiton using sysctl Oza Oza <oza.oza@broadcom.com> - 2017-05-15 10:50 +0200
    Re: [RFC] NVMe Configuraiton using sysctl Sagi Grimberg <sagi@grimberg.me> - 2017-05-15 11:20 +0200
      Re: [RFC] NVMe Configuraiton using sysctl Oza Oza <oza.oza@broadcom.com> - 2017-05-15 13:10 +0200
      Re: [RFC] NVMe Configuraiton using sysctl Keith Busch <keith.busch@intel.com> - 2017-05-15 16:40 +0200

csiph-web