970 PRO NVMe alike with REAL Linux support!?

Notice: Page may contain affiliate links for which we may earn a small commission through services like Amazon Affiliates or Skimlinks.

Patriot

Moderator
Apr 18, 2011
1,452
792
113
Just remember that 4k is an iops test and will not see high MB/s and 128kB-1MB is for max sequential throughput.
You can adjust that file there to make a full sweep moving bs=4k out of global. :)
 

MrCalvin

IT consultant, Denmark
Aug 22, 2016
87
15
8
51
Denmark
www.wit.dk
Just needed today to check the wearing/life status of my 970 Pro on Linux and expected to be able to see that in nvme-cli but no. And I couldn't find any Samsung plugin for nvme-cli. Crap!
I can get some basic smart-info, but not what I need.
 

EffrafaxOfWug

Radioactive Member
Feb 12, 2015
1,394
512
113
Just needed today to check the wearing/life status of my 970 Pro on Linux and expected to be able to see that in nvme-cli but no. And I couldn't find any Samsung plugin for nvme-cli. Crap!
I can get some basic smart-info, but not what I need.
Have you tried smartctl? I don't have any Samsung drives present, but I've always been able to extract more info from SMART than I have from nvme-cli, the following from an Intel P4101 under debian:
Code:
root@wug:~# nvme smart-log /dev/nvme0
Smart Log for NVME device:nvme0 namespace-id:ffffffff
critical_warning                    : 0
temperature                         : 31 C
available_spare                     : 100%
available_spare_threshold           : 12%
percentage_used                     : 0%
data_units_read                     : 5,455,299
data_units_written                  : 8,791,205
host_read_commands                  : 42,323,198
host_write_commands                 : 531,667,198
controller_busy_time                : 1,786
power_cycles                        : 28
power_on_hours                      : 5,704
unsafe_shutdowns                    : 23
media_errors                        : 0
num_err_log_entries                 : 0
Warning Temperature Time            : 0
Critical Composite Temperature Time : 0
Thermal Management T1 Trans Count   : 40
Thermal Management T2 Trans Count   : 0
Thermal Management T1 Total Time    : 637
Thermal Management T2 Total Time    : 0

root@wug:~# smartctl -a /dev/nvme0
smartctl 6.6 2017-11-05 r4594 [x86_64-linux-5.6.0-0.bpo.2-amd64] (local build)
Copyright (C) 2002-17, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Number:                       INTEL SSDPEKKA010T8
Serial Number:                      
Firmware Version:                   006D
PCI Vendor/Subsystem ID:            0x8086
IEEE OUI Identifier:                0x5cd2e4
Controller ID:                      1
Number of Namespaces:               1
Namespace 1 Size/Capacity:          1,024,209,543,168 [1.02 TB]
Namespace 1 Formatted LBA Size:     512
Local Time is:                      Fri Aug 21 15:52:34 2020 BST
Firmware Updates (0x14):            2 Slots, no Reset required
Optional Admin Commands (0x0017):   Security Format Frmw_DL Self_Test
Optional NVM Commands (0x005f):     Comp Wr_Unc DS_Mngmt Wr_Zero Sav/Sel_Feat Timestmp
Maximum Data Transfer Size:         64 Pages
Warning  Comp. Temp. Threshold:     75 Celsius
Critical Comp. Temp. Threshold:     80 Celsius

Supported Power States
St Op     Max   Active     Idle   RL RT WL WT  Ent_Lat  Ex_Lat
 0 +     9.00W       -        -    0  0  0  0        0       0
 1 +     4.60W       -        -    1  1  1  1        0       0
 2 +     3.80W       -        -    2  2  2  2        0       0
 3 -   0.0450W       -        -    3  3  3  3     2000    2000
 4 -   0.0040W       -        -    4  4  4  4     6000    8000

Supported LBA Sizes (NSID 0x1)
Id Fmt  Data  Metadt  Rel_Perf
 0 +     512       0         0

=== START OF SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

SMART/Health Information (NVMe Log 0x02, NSID 0xffffffff)
Critical Warning:                   0x00
Temperature:                        31 Celsius
Available Spare:                    100%
Available Spare Threshold:          12%
Percentage Used:                    0%
Data Units Read:                    5,455,299 [2.79 TB]
Data Units Written:                 8,791,206 [4.50 TB]
Host Read Commands:                 42,323,198
Host Write Commands:                531,667,273
Controller Busy Time:               1,786
Power Cycles:                       28
Power On Hours:                     5,904
Unsafe Shutdowns:                   2
Media and Data Integrity Errors:    0
Error Information Log Entries:      0
Warning  Comp. Temperature Time:    0
Critical Comp. Temperature Time:    0
Thermal Temp. 1 Transition Count:   40
Thermal Temp. 1 Total Time:         637

Error Information (NVMe Log 0x01, max 256 entries)
No Errors Logged
 

MrCalvin

IT consultant, Denmark
Aug 22, 2016
87
15
8
51
Denmark
www.wit.dk
Good point, I forgot about smartctl, though it didn't provide me much more info.
But you can't really be sure if a drive provide the correct SMART information to a common tool which isn't officially supported by the vendor.
Less of a problem for your homebox, but it's a problem for a prod server. You need to know with certainty if the wearing level is 10,50 or 90%.
I just read about a German IT magazine that ran some thorough SSD lifespan tests, and it turned out the SMART information was not even close to the reality i.e. the drive was actually dead long before the SMART information indicated (I admit, these is 2nd hand information from reddit).
That's why it's important we put pressure on manufacturers to priorities Linux tools. Hell, they can just go to GitHub and fork one

Related, I just got a mail from Kingston support that they actually do have a Linux cli version of their Kingston SSD Manager, although only available on request, but it is still better than WD, Seagate, Samsung etc. Micron have a Linux CLI too, but as I have mentioned before, they will not disclose the size of the power-loss-protected cache size on their drives and their support is REALLY incompetent, same can be said about they support website.
But now I got one more reason to buy Kingston drives (very competent support, they disclose the PLP cache size and now also a Linux cli tool :)).
 

EffrafaxOfWug

Radioactive Member
Feb 12, 2015
1,394
512
113
That's why it's important we put pressure on manufacturers to priorities Linux tools.
Lack of linux support was a big factor in me not buying Samsung drives any more (as well as them being overpriced); their firmware support outside of the OEMs is pretty ropey in general though (lots of people on this forum unable to obtain updates for certain drives at all).

It's annoying that Micron makes you sign up for access to their linux tools and firmware updates, but at least they provide one. The tools from Intel are solid enough if a little quirky and the firmware update ISO is always handy, if not always quite as convenient as updating through isdct.

What I'd really prefer was for vendors to start taking to support LVFS/fwupd for SSD firmware management but that's probably five years away at least - a man can dream.

<derail> P.S. Aren't the figures on your PLP cache size from Kingson just the size of the RAM on those drives that's backed by the PLP caps? 1GB of RAM for 1TB of storage has been fairly standard for the mapping tables on high-performance drives since the year dot so I figured that's all the PLP would ever cover, or am I misunderstanding your point?
 

MrCalvin

IT consultant, Denmark
Aug 22, 2016
87
15
8
51
Denmark
www.wit.dk
Yes, I certainly expect "RAM" and "cach" are the same. But the RAM is only used for caching, that's why I call it cache.
And I certainly also expect all the cache is PLP protected, other would make no sense, but who knows. I'm sure you cannot get a good answer if you ask Seagate and Micron. Again they will not even tell you the cache PLP protected cache size in their "low-end" enterprise disks! Why?
By the way Kingston's DC500M 960GB have 2GB PLP protected RAM/cache for a cheap price and 2278TB TBW!