• Become a Premium Member for $25/year with no ads to improve your community experience.

Buyer's Guide: Choosing a Compatible SSD for macOS Boot Drive

Buyer's Guide: Choosing a Compatible SSD for macOS Boot Drive


If you're familiar with macOS, you might be aware that macOS supports a very limited number of hardware components which are natively supported on macOS, i.e. plug n play. You just cannot buy any random hardware and expect it to work out of the box. That will simply not work as the support for various hardware are very limited on macOS. For example, Windows and Linux do support RTX GPUs, but macOS doesn't. Other hardware such as WiFi/BT, only certain Broadcom and Atheros (obsolete now) are supported and have native support. When it comes to storage i.e. SSDs, macOS is very picky. You cannot just buy any SSD (SATA/NVMe) and expect it to work on your machine, whether be it a real Mac or your non-Apple computer. There are certain limitations and due to such, not every brand and model are supported. Although, some brands and models will play nicely, with zero issues, some models can work but could be problematic with the long term use, when using it as a macOS boot drive.



SATA or NVMe?

SATA form factor for SSDs was introduced back in and Apple has also adopted it. As the software and applications are getting heavier day by day and numerous complex functions are being added to them, these need really fast storage to handle the load. Although SATA is widely supported and can be used as a Boot Drive, it's way too slow, at least in 2024. However, if you're building a new machine, we recommend using an NVMe SSD for unmatched performance as compared to the SATA SSDs. In addition, in the recent market (2022, 2023, and early 2024) the prices are quite decent and have come down to an affordable rate and nearly everyone building a PC can afford it. Since Skylake, nearly every systems are equipped with an M.2 slot and the BIOS has support for NVMe drives to act as a bootable disk, giving the highest possible performance with no compromise. When you boot an Operating System from a compatible NVMe, not only the Operating System will load faster, but the entire apps residing on the NVMe will be a lot faster and the applications will load more quickly than before. You'll not have to wait on the process to exit or watch the icons bounce in Dock when opening a few applications.


SSD Types

For the different workloads, the SSDs are built differently. Be it either SATA or NVMe and here comes the trick when choosing the best SSD for your workflow

An important factor in choosing a flash drive is the number of bits per cell. Different vendors offers SSDs that use one of four types of NAND cells as described below

SLC
Single Level Cell

MLC

TLC
TLCs are generally intended for write-intensive workloads.



QLC

Also, keep in mind that the quality of SSDs can vary greatly from manufacturer to manufacturer.


What is macOS Boot Drive?
Typically, the Boot Drive is referred to the particular drive on which the Operating System is installed. Here, as we're talking about macOS, therefore, macOS Boot Drive.

Can I use it as a Scratch/Spare/Data Disk?
Yes, you can use some of the problematic SSDs as a scratch or spare or as a Data disk. Although, not recommend, but still can be used as the wear and tear onn the flash would be way less than the macOS Boot Drive.


TRIM

TRIM is a command for the ATA interface. As the SSD is used, changing and deleting the information on it, the SSD needs to ensure that invalid information is deleted and that space is available for the new information to be written. TRIM tells your SSD which pieces of data can be erased. TRIM works with Active Garbage Collection to clean up and organize your solid-state drive. TRIM is beneficial, but not mandatory. Because some operating systems do not support Trim, SSD manufacturers design, create, and test their drives assuming that Trim will not be used.

What does TRIM do?

The TRIM command tells the SSD that specific areas contain a piece of data that is no longer in use. From the user's perspective, this specific piece of data has been deleted from a particular document or file. But the way solid-state drives read and write information, the data is not deleted from the drive at the user's command. Instead, the area of the SSD that contains the data is marked as no longer used and the TRIM commands tell the drive that this data can be removed. The next time the computer is idle, Active Garbage Collection will delete the data and new information can be written onto the SSD.

If the TRIM command did not exist (as was the case before Windows® 7), then the solid state drive would not know that certain sectors in the drive contained invalid information until the computer told the drive to write new information to that location. The drive would need to erase the existing information, and then write the new information. This takes slightly more time to do than just writing the new information, so using Trim and Active Garbage Collection helps your SSD perform write commands more quickly.

TRIM also affects the longevity of the solid-state drive. If the data is written and erased from the same NAND cells all the time, those cells will lose integrity. For optimum life, each cell should be utilized at roughly the same rate as other cells. This is called wear leveling. The TRIM command tells the SSD which cells can be erased during idle time, which also allows the drive to organize the remaining data-filled cells and the empty cells to write to avoid unnecessary erasing and rewriting.

Active Garbage Collection

SSDs are made of flash memory, which cannot overwrite existing data the way a hard disk drive (HDD) can. Instead, the solid-state drives (SSDs) need to erase the invalid data which is no longer being used. The problem is that a larger unit of the memory, a block, must be erased before a smaller unit, a page, can be written. For example, if there are four pages with data in an otherwise empty block and three pages of data are deleted, the remaining page of data must be written to a new block, then all four pages in the old block can be deleted, freeing them up to be rewritten in the future.

If the drive were to not go through this process of moving valid information so that invalid information can be deleted, and instead, just keep writing new information to new pages, eventually it would fill up with data, some of it no longer valid. To prevent this, Active Garbage collection goes through the disk and moves each page of valid data to a page in another block so the block with invalid data, which has been identified with TRIM, can be cleaned out.

TRIM saves time by erasing the data while the computer is in an idle state, rather than using extra time during a write process to remove data that is no longer valid. Because of how Active Garbage Collection moves related segments of the data next to each other, the dynamic wear leveling works more efficiently. Garbage Collection and TRIM work with wear leveling, an algorithm that ensures that each cell is written to and deleted from about the same number of times as all the other cells on the disk. This extends the life of the solid-state drives.

Garbage collection is triggered automatically using proprietary Active Garbage Collection functionality created by the SSD manufacturer. Because Garbage Collection is super important to the functioning of the drive, nearly all drives have this function.

TRIM Support

Starting from Microsoft Windows 7, the TRIM function is supported. The TRIM function is performed automatically, in the background, unless you have turned it off.

On the macOS side, systems with Apple SSDs have built-in TRIM and Active Garbage Collection features. The third-party SSDs are supported with additional software (if needed). To check whether your SSD has TRIM support, navigate to About This Mac>System Report and select NVMExpress or SATA. TRIM Support will indicate either Yes or No.

With the introduction of macOS High Sierra, the APFS File System was introduced by Apple and is the current File System from Apple. The APFS File System is designed in a way that the space controlled via the spaceman structure is either used or free. This might be different in other File Systems where the areas can be marked as used, free, and/or unmapped. All free space is trimmed (unmapped/deallocated) at macOS startup. The trimming procedure for NVMe drives happens in LBA ranges due to the nature of the DSM command with up to 256 ranges per command. The more fragmented the memory on the drive is, the more commands are necessary to trim all the free space so that the new data can be written onto the disk.

Depending on the SSD controller and the level of drive fragmentation, the TRIM procedure may take a considerable amount of time, which can cause a noticeable delay during the boot time. The APFS driver built into macOS, explicitly ignores previously unmapped areas and repeatedly trims them during boot. To mitigate against such delays during boot, the macOS driver introduced a timeout (9.999999 seconds) which stops the TRIM operation when not finished within that time frame.

On several NAND Controllers (such as Samsung), where the deallocation process is relatively slow, this timeout can be reached very quickly. This means that the level of fragmentation is high, therefore macOS will attempt to trim the same lower blocks that have previously been deallocated but never have enough time to deallocate the higher blocks. As a reason, the TRIM function on such SSDs will be non-functional soon after you complete the macOS installation, which will result in additional wear on the flash.

The only workaround for this problem is to increase the timeout to an extremely high value, at the cost of slow boot times, which will ensure that all the blocks are trimmed. Setting this option to a high value (such as 4294967295 in OpenCore) ensures that all blocks are trimmed. Alternatively, use over-provisioning, if supported, or create a dedicated unmapped partition where the reserve blocks can be found by the controller. Conversely, the TRIM operation can be mostly disabled by setting a very low timeout value, while 0 entirely disables it. However, on macOS Monterey (12.0) and above, it is no longer possible to specify the TRIM timeout. However, the TRIM can be disabled.

Compatibility

Samsung
As you might be aware of the fact that Samsung Drives is not able to maintain the quality and reliability in the SSD segment. Although, still dominant in the flash market, with the rising issue, people who are aware, are opting for Western Digital and other brands instead and Samsung is no longer a popular choice it used to be once.

Prior to macOS Monterey, Samsung drives worked quite well, without any issue, although the slow boot times always existed. However, since the release of macOS Monterey, the compatibility has drastically changed as Apple made some changes in the IONVMeFamily and the TRIM and APFS functions on macOS. Samsung's proprietary SSD controllers do not work well with macOS Monterey and higher. Unlike at the time of 970 EVO drives, it doesn't look like a firmware fix is ever going to be released from Samsung to address the issue.

Normally, the TRIM function is supported for Apple and Non-Apple SSDs. However, few SSDs have TRIM broken under macOS, and as a result, the SSD dies under heavy load. These SSDs can be used with TRIM disabled, at the cost of slower boot times, or as Data Storage Drive(s). See Recommendations and SSDs to avoid section for more information.

By default, the timeout is 9.999999 seconds on Mac and it stops the TRIM operation when not finished within that time. Let's take the example of the Samsung 990 Pro 1TB. As reported by @kaoz, here's the output of the TRIM log on a Samsung 990 Pro 1TB running macOS Ventura.

2023-11-08 16:32:41.517563+0100 0x25b Default 0x0 0 0 kernel: (apfs) spaceman_scan_free_blocks:3356: disk2 scan took 46.088031 s, trims took 45.914240 s

From the above log, we can see that it took about 46 seconds which means timeout already happened and as a reason, the TRIM operation was not performed. When you use an SSD without TRIM, the SSD will result in additional wear on the flash and it will eventually die/fail in no time. Of course, this depends on how much the workload is on the SSD on a daily basis, and depending on that, the lifespan of the disk would be really low over a period of time, to a point where the SSD will no longer function or will cause too much corruption in terms of data. In some cases, when you try to perform a clean install on such SSDs, the system will enter a boot loop state, followed by system crashes. However, an interesting thing is that nearly every SSD testing tool will detect zero problems and everything will show normal.

You might think that your new Samsung SSD has blazing fast speeds and is performing normally and there won't be any issues in the start. But as soon as the SSD starts getting used, it will result in additional wear and tear on the flash due to the broken TRIM functionality, and therefore the boot time will start increasing. This problem existed before too, however, the only problem is the drives have been dying at a crazy speed since macOS Monterey.

nvme-samsung-990-1-png.6771


If you have an existing Samsung drive that is intended to be used as a macOS Boot Drive, backup your data immediately and replace it with the recommended drive (such as SN750/850/850X), capacity according to your choice. For users who are planning to buy a Samsung drive, just drop your plan, it's just not safe and buy the recommended drive. A couple of months and the SSD will die eventually. For users who have already bought and the return window is over, you have made a wrong decision!

on the cost of disabling TRIM and to ensure the health of the SSDs, disabling TRIM is not recommended.

Western Digital
With the majority of success from several WD SATA and NVMe users in this community over the past few years, it can be concluded that Western Digital (WD) drives are fast and reliable enough to use as a macOS Boot Drive. Our recommendations are the following when choosing a WD Drive:

WD SN730 (OEM)
WD SN750 (Retail)
WD SN810 (OEM)
WD SN850/850X (Retail)

What are the different colors?

Unlike its Hard Disk Drives (HDD), WD has been maintaining the color for its Solid State Drives as well. The different colors indicate different product/market segment to differentiate between the quality, performance and the price, and use case. For example, the Green drives are a very basic drives, and it is not a good idea to use it as a boot drive, including but not limited to macOS. It does cost a few bucks less than the blue and black, but has the lowest TBW ratings and the performance is simply worse. It also has less warranty than the normal 5yrs warranty offered by WD such as SN750. The green is simply a marketing tactic here. Just because it's labeled green, it doesn't mean it's energy efficient.

In a hierarchical order, here's the summary:
  • Green drives are the basic drives - Low TBW, Low Performance, Less Warranty
  • Blue drives are the standard drives - Standard TBW, Standard Performance, Standard Warranty
  • Black drives are the high-performance drives - High TBW, High Performance, Good Warranty
Intel
Intel drives are usually supported except for a few models. These are generally OEM models and come pre-equipped with the system you purchase. For example, Intel 600p SSDs are prone to Kernel Panic, and issues such as decreased R/W speed, and freezing can be seen under macOS.

Intel Optane and Micron 3D XPoint
  • Intel Optane Technology uses Intel Rapid Storage Technology instead of AHCI and therefore it is not possible to use Intel Optane under macOS/OS X, regardless of the platform, either Desktop or Mobile.
  • Laptops with Intel Optane and Micron 3D XPoint are completely unsupported in all macOS versions. There are few successes with it, but it is highly recommended to remove such drives to prevent any boot and stability issues.
  • In Windows, do not install Intel Optane drivers (part of Intel Rapid Storage Technology). Installing these drivers can change the BIOS SATA Mode from AHCI to Intel Optane and therefore you may not be able to boot into macOS further.
Micron
Micron is and

SSSTC
SSSTC is also an OEM manufacturer and specializes in client and industrial drive manufacturing, besides its other business areas.

What Capacity Drive should I get?

The answer is, it depends on your use case. The capacity will vary on two basis: (i) your use case and; (ii) how better you are with keeping your data organized. With the growing use of multiple Apps, a balanced capacity is 1TB. As always, when purchasing hardware for your computer, the golden rule is to count in for future expansion. For example, you may not have use of 1TB as of now, but in a couple of months, if you start photography, 1TB even might feel less for your use case.

Getting 250/256GB might do the job, but they are very basic storage, comes for cheap and does not have the fastest possible specification out there. Opting for a 250/256GB drive is a poor choice (unless your use case is very basic), as it will reduce the speed as compared to the larger capacity drives and so the endurance. The TBW rating goes way up as the drive capacity increases. If you have a tight budget/If you have a strict budget, we recommend at least purchasing 500/512GB to begin with.

Can I use OEM Drives?

Unlike retail drives, OEM drives are no different in terms of compatibility with macOS. OEM drives are manufactured in bulk quantity and is shipped directly to the vendors from the semiconductor companies. As these are generally equipped with the system, the target is to keep the manufacturing cost as low as possible while maintaining the quality and that's where the catch is. (i) TBW ratings, (ii) performance, and; (iii) warranty. It's the TBW rating on the OEM drives, which is almost half of the retail units. For example, WD SN850 500GB has an estimated TBW of 300, and the 1TB model has 600TBW, and the 2TB model has 1200TBW. However, the OEM model SN810 roughly reaches that threshold and has a lower TBW rating than its retail model. The TBW of SN810 for 256GB is 200TBW, 300TB for 512GB, 400TBW for 1TB, and 500TBW for the 2TB variant. The difference is huge in terms of TBW.

If we see the performance comparison between WD SN850 and WD SN810, here are some performance metrics:

  • WD SN850:
    • 512GB:
      • Read: 6000MB/s
      • Write: 4000MB/s
    • 1TB:
      • Read: 6600MB/s
      • Write: 5000MB/s
    • 2TB:
      • Read: 6600MB/s
      • Write: 5000MB/s
  • WD SN810:
    • 256GB:
      • Read: 5700MB/s
      • Write: 1900MB/s
    • 512GB:
      • Read: 6000MB/s
      • Write: 4000MB/s
    • 1TB:
      • Read: 6600MB/s
      • Write: 5000MB/s
    • 2TB:
      • Read: 6600MB/s
      • Write: 5000MB/s

Although, the OEM drives also come with the warranty, but is only valid on the machine with which the SSD was shipped and the warranty can be only sourced by the particular OEM partner who manufactured the machine. In addition, the warranty can be claimed by on the machine itself, not as an spare. In short, you cannot buy an OEM and then expect the OEM partner to provide you a replacement if the drive fails (unless going for a seller warranty). That simply won't happen as OEM does not allow such malpractices.

Although, not all OEM drives are compatible, but we have tested a few that passed the compatibility tests at our end. OEM Drives can be chosen if you have a strict budget and still want to have the quality along with the capacity. Some of the best choices are:

  • Gen3, PCIe 3.0
    • WD SN730
    • Intel 660p
    • Intel 670p
    • Micron 2210
    • SSSTC CA5
  • Gen4, PCIe 4.0
    • WD SN810
    • SK Hynix PC801/BC801/BC901
    • Micron 2400
    • Micron 2450
    • Micron 3400
A few OEM drives such as PC711, and CA6 are simply not compatible with the IONVMeFamily.kext and immediately kernel panics when installed.

Although, the majority of the WD drives are compatible with macOS, including OEM (such as SN730 and SN810), a few models such as SN770, can lead to Kernel Panics on macOS. However, a fix is to

How to Fix NVMe Kernel Panic on macOS
 
Last edited:

Forum statistics

Threads
1,637
Messages
15,376
Members
23,452
Latest member
timothee