M1 MacBooks and Drive Wear
Typically, to find the overall wear of a MacBook drive, one installs smartctl
from smartmontools via brew install smartmontools
or sudo port install smartmontools
Then by looking at the Percentage Used
from the output of smartctl -a /dev/disk0
=== START OF SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
SMART/Health Information (NVMe Log 0x02)
Critical Warning: 0x00
Temperature: 39 Celsius
Available Spare: 100%
Available Spare Threshold: 99%
Percentage Used: 0%
Data Units Read: 48,035,261 [24.5 TB]
Data Units Written: 31,532,520 [16.1 TB]
Host Read Commands: 809,807,603
Host Write Commands: 409,470,021
Controller Busy Time: 0
Power Cycles: 123
Power On Hours: 564
Unsafe Shutdowns: 12
Media and Data Integrity Errors: 0
Error Information Log Entries: 0
Or as a one-liner
smartctl -a /dev/disk0 | awk -F ':' '/Percentage Used:/{gsub(/ /, "", $2); print $2}'
In my case it’s 0%
, but what exactly does Percentage Used
mean? These Kingston and nvmexpress.com’s documents shed some light
Percentage Used: Contains a vendor specific estimate of the percentage of NVM subsystem life used based on the actual usage and the manufacturer’s prediction of NVM life. A value of 100 indicates that the estimated endurance of the NVM in the NVM subsystem has been consumed, but may not indicate an NVM subsystem failure. The value is allowed to exceed 100. Percentages greater than 254 shall be represented as 255. This value shall be updated once per power-on hour (when the controller is not in a sleep state). Refer to the JEDEC JESD218A standard for SSD device life and endurance measurement techniques.
My hunch is that it’s probably related to Data Units Read
and Data Units Written
given how often MacOS swaps, but since the attribute is vendor specific it may be misinterpreted, I suppose time will tell whether these new soldered-on SSD MacBooks will become bricks.