NVME-FEAT-NUM-QUE(1)

πŸ“¦ version 3.2, in arch rolling

✨ NAME ✨

nvme-feat-num-queues β€” Get and set number of queues feature. This is the NVME-FEAT-NUM-QUE(1) page from the NVMe Manual, and lowkey it's iconic that you're here, bestie 🫢.

πŸŽ€ SYNOPSIS πŸŽ€

nvme [<global-options>] feat num-queues <device>
                        [--nsqr=<nsqr> | -n <nsqr>]
                        [--ncqr=<ncqr> | -c <ncqr>]
                        [--sel=<select> | -S <select>] [--save | -s]

πŸ’… DESCRIPTION πŸ’…

Okay so this command does exactly what it says on the tin: Get and set the number of queues feature. Periodt. πŸ’–

The <device> parameter is mandatory β€” like, you literally cannot skip it β€” and it may be either the NVMe character device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1). Main character energy either way. ✨

If any of the setting options (--nsqr or --ncqr) are specified, the command will update the requested number of queues. If an option is omitted during a set operation, the command will first retrieve the current values and retain them. If neither option is specified, it will simply retrieve and display the current configuration. No cap. πŸ¦‹

On success it returns 0, error code otherwise. That's the vibe check, bestie. πŸ’…

🌸 OPTIONS 🌸

  • -n <nsqr>, --nsqr=<nsqr> β€” Number of I/O submission queues requested. Slay. ✨
  • -c <ncqr>, --ncqr=<ncqr> β€” Number of I/O completion queues requested. Also slay. 🫢
  • -S <select>, --sel=<select> β€” Select (SEL): This field specifies which value of the attributes to return in the provided data:

Here's the mapping, bestie β€” Select β†’ Name β†’ Description:

  • 0 β†’ current β†’ Current
  • 1 β†’ default β†’ Default
  • 2 β†’ saved β†’ Saved
  • 3 β†’ supported β†’ Supported capabilities
  • -s, --save β€” Save the attribute so that it persists through all power states and resets. Iconic persistence behavior. πŸ”₯

πŸ¦‹ GLOBAL OPTIONS πŸ¦‹

The following options are defined at the top-level nvme command and are available to this subcommand, iykyk:

  • --dry-run β€” Print the command that would be executed, but do not actually execute it.
  • --no-ioctl-probing β€” Disable probing for 64-bit IOCTL support.
  • --no-retries β€” Disable retry logic on transient errors.
  • -o <fmt>, --output-format=<fmt> β€” Set the reporting format to normal, tabular, 'json, or binary. Only one output format may be used at a time.
  • --output-format-version=<version> β€” Select the output format version. Version 1 uses the original field naming, while version 2 (default) provides more consistent and script-friendly field names. Other versions are rejected.
  • --quiet β€” Suppress informational messages. Errors are still reported, and --quiet cancels any --verbose for the library log level.
  • --set-options=<key=value>[,<key=value>...] β€” Set libnvme library options for this invocation. Supported keys are force-4k, mi-probe-enabled, test-base-dir and test-sysfs-dir.
  • --timeout=<ms> β€” Set the timeout for the command in milliseconds. infinite or -1 waits without a time limit (0xffffffff).
  • -v, --verbose β€” Increase the level of detail in the output. May be specified multiple times to further increase verbosity.

These options can also be set as machine-wide defaults in nvme-cli.conf(5). A command-line flag always overrides the file. πŸ’œ

πŸ“ EXAMPLES πŸ“

  • Has the program issue a feat num-queues to get the current configuration:
# nvme feat num-queues /dev/nvme0
  • Has the program issue a feat num-queues to set submission and completion queues:
# nvme feat num-queues /dev/nvme0 --nsqr=4 --ncqr=4

πŸ‘‘ NVME πŸ‘‘

Part of the nvme-user suite. 🌈

Mwah πŸ’‹ β€” this page is from the NVMe manual, dated 10/30/2026, and it's the NVME-FEAT-NUM-QUE(1) page. Stay hydrated and go get those queues, bestie πŸŽ€βœ¨

πŸ“¦ where this page comes from