NVME-SNDK-VS-DEVI(1)
π nvme-sndk-vs-device-waf(1) π
okay so bestie, you found the nvme-sndk-vs-device-waf page in the NVMe manual β welcome, sit down, let's get you fluent π
β¨ NAME β¨
nvme-sndk-vs-device-waf β calculates the device write amplification factor and prints both the TLC and SLC results π«Ά
πΈ SYNOPSIS πΈ
nvme [<global-options>] sndk vs-device-waf <device>
[--namespace-id=<nsid> | -n <nsid>]
π DESCRIPTION π
So for the NVMe device you hand it, this bad boy calculates the device TLC and SLC write amplification factor. That's literally the whole vibe. β¨
The <device> parameter is mandatory β no skipping it, queen β and it can be either the NVMe character device (ex: /dev/nvme0) or the block device (ex: /dev/nvme0n1).
Heads up π«’ this will only work on Sandisk devices that support this feature. Results for any other device are undefined β like, not "maybe kinda works", actually undefined. Don't come for me if it's weird on something else π
On success it returns 0, and an error code otherwise. Simple as that.
π¦ OPTIONS π¦
-n <nsid>,--namespace-id=<nsid>β sets the command'snsidvalue to thensidyou give it. If you don't give one, it defaults to0xffffffff. lowkey this option may not affect anything depending on the log page, which may or may not be specific to a namespace β iykyk π The broadcast value0xffffffffcan also be given asallor-1.
π GLOBAL OPTIONS π
These ones live at the top-level nvme command, and they're available to this subcommand too. main character options, fr fr:
--dry-runβ prints the command that would be executed, but doesn't actually execute it. All the plot, none of the consequences π--no-ioctl-probingβ disables probing for 64-bit IOCTL support.--no-retriesβ disables retry logic on transient errors.-o <fmt>,--output-format=<fmt>β sets the reporting format tonormal,tabular,'json, orbinary. Only one output format at a time, bestie β pick a lane β¨--output-format-version=<version>β selects the output format version. Version1uses the original field naming, while version2(the default) gives you more consistent and script-friendly field names. Any other version gets rejected π«--quietβ suppresses informational messages. Errors are still reported, and--quietcancels any--verbosefor the library log level. shhh π€«--set-options=<key=value>[,<key=value>...]β sets libnvme library options for this invocation. The supported keys areforce-4k,mi-probe-enabled,test-base-dirandtest-sysfs-dir.--timeout=<ms>β sets the timeout for the command in milliseconds.infiniteor-1waits without a time limit (0xffffffff). no clock-watching allowed β³-v,--verboseβ increases the level of detail in the output. You can specify it multiple times to get even more verbose. go off, be nosy π₯
These options can also be set as machine-wide defaults in nvme-cli.conf(5). And the rule is: a command-line flag always overrides the file. periodt.
π EXAMPLES π
- Has the program issue
sndk vs-device-wafplugin Command :
# nvme sndk vs-device-waf /dev/nvme0
β NVME β
Part of the nvme-user suite. π§
okay that's the whole page, you ate that π«Ά source/version: NVMe, dated 10/30/2026, page NVME-SNDK-VS-DEVI(1) β mwah, go forth and amplify some writes πβ¨
π¦ where this page comes from
- arch rolling: nvme-cli 3.2-1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms