dortania / bugtracker

Dortania Bugtracker
108 stars 7 forks source link

SSD hall of fame needs new entries #192

Open vit9696 opened 3 years ago

vit9696 commented 3 years ago

Guide Anti-Hackintosh Buyers Guide (link)

After our discovery of a severe bug in the TRIM implementation of practically all Samsung SSDs we spent time investigating which SSDs are affected by all kinds of issues, and so far came with several names worth mentioning.

Working with TRIM broken (can be used with TRIM disabled, at slower boot times, or as a data storage):

Working fine with TRIM:

Working fine with TRIM (SATA):

Working fine with TRIM (Unbranded SSDs):

Incompatible with IONVMeFamily (die under heavy load):


There are several very good comparison charts containing various SSDs and their controllers: one, two. Since SSD compatibility usually is controller-based, picking up an SSD with a known to be compatible controller has a high compatibility chance as well.


In addition to that, I would like more people to run tests on their platforms to determine whether their SSD TRIM implementation is broken or not.

Preconditions:

The idea is to measure the boot time either between motherboard logo and macOS login screen or between Apple logo and macOS login screen. The former is strongly recommended due to possible GOP issues. All the measurements needs to be done with different SetApfsTrimTimeout values set in OpenCore. Each measurement must be made at least 2 or 3 three times to ensure no sporadic results. The values to test are as follows:

  1. 0 (means TRIM is disabled)
  2. -1 (standard timeout, equals roughly 10 seconds, means TRIM is enabled and runs up 10 seconds during boot)
  3. 4294967295 (maximum timeout, TRIM is enabled and runs as long as needed)

Please write include the following information in the report:

Note: If you use FileVault 2, you can use sudo fdesetup authrestart command to skip UEFI login. AuthRestart must of course be enabled. I would also advise to disable the OpenCore Picker (ShowPicker = NO).

a17uk commented 2 years ago

After upgrading to Monterey, my 970EVO+ 1T old version was having this slow boot issue and I found this thread. I have a 980 Pro 500G and I saw someone OK with it so I replaced my 970 with it. It was good. I did not measure the boot time but is way faster than it was. But things seemed to change after I upgrade the firmware of my 980 Pro to the newest version 4B2QGXA7 using Magician software. Then it is 5 mins boot time after I entered the password for FileVault lock screen..(By the way, I am using 6600XT, it seems also to boot slower than RX580) I suspected it is the trim issue so I tested the trim timeout configs in this post. All the same, 5 mins. Might not be the trim issue? I thought. I gave a try by having a fresh Monterey install on my 660P 2T. It boots so fast with and without FileVault. Then I clone the Monterey system from my 980 Pro to the 660p. And 660P can still do a fast boot. So maybe 980Pro is also having some issues. Not sure if it is the trim issue because the trim timeout tests have no effect on its boot time. I will do a fresh install on 980Pro later. Currently better avoid SAMSUNG SSDs for Monterey.

rafale77 commented 2 years ago

Adding commentary to this list so that maybe @vit9696 can update it.

The Hynix P31 actually works fine with TRIM. The 2TB works out of the box as it is newer and comes with newer firwmare, The 500GB and 1TB versions need a firmware upgrade.

I discovered also the all my SMI SM2262ENG drives of various brands work but cause a 40s delay at boot. My one SMI SM2262G (Adata SX8200 pro) also works fine but causes a ~15s additional delay during boot. None are as bad as the Samsungs with Monterey.

Test results:

HP Elitedesk 800 G5 i9-9900 Monterey 12.2 Hynix P31 2TB FW 31060C20 From BIOS logo to login screen. 999: 20.5s -1: 19.8s 4294967295: 20.6s

Likely variance are due to my finger reactions speed..

GilDev commented 2 years ago

Was fine after a clean install of Monterey with my 970 Evo, but now takes 66s. I guess it gets longer over time… Hopefully there will be a fix one day. 🙂

aniuks33 commented 2 years ago

Was fine after a clean install of Monterey with my 970 Evo, but now takes 66s. I guess it gets longer over time… Hopefully there will be a fix one day. 🙂

Try this: Latest OC (0.7.9 build) , Kernel/Quirks/ SetApfsTrimTimeout set it to 0. Also Kernel/Block/Strategy set to Disable. See if it solves the issue.

panosru commented 2 years ago

@aniuks33 won't this actually skip the trim process completely? If so, that could seriously damage the drive, no?

I'm thinking of buying Patriot Viper VPN100 2TB (or VPN110 but I think the VPN100 is better) and leave my Evo as a secondary drive. Does anyone have any experience with Patriot Viper VPN*?

aluveitie commented 2 years ago

@panosru Yes, it will skip the TRIM process. That itself should not have an impact on wear leveling if that’s what you were asking. With TRIM, the os does instruct the SSD to clean up free blocks for later reuse. If TRIM is not performed, the SSD has to do that before writing new data. That will slow down write performance once the SSD is running out of empty blocks.

One workaround you can do is leaving TRIM off, and occasionally boot with TRIM enabled to clean the SSD up to prevent write performance degradation. Long term, a different SSD would probably be the preferable option.

panosru commented 2 years ago

@aluveitie thank you for the clarification, I'm asking because I saw many posts related to SSD's being completely damaged, resulting in data loss... I think I will "play it safe" and I will get a new NVMe to boot from. I haven't decided yet which to buy, VPN100 or 110, I'm leaning on the 100 because even though the 110 is newer, the 100 has better specs.

Darkstar72 commented 2 years ago

Tested Samsung X5 1TB External Thunderbolt on a XPS 15 9570 Coffee Lake: No matter what I've configured the Boot-Time was always around 64 Seconds (boot log shows more than 40 seconds for trim). After I've opened the X5 and replaced the NVMe with a Western Digital Black SN750 2TB the Boot-Time is around 25 Seconds. The speed test shows on MacOS the WD has the same speed during reading (2300), but is a little bit slower during writing (750). But this is hard to compare since the Samsung Speed on writing is not constant and slows down on longer writing processes.

DaNilePharoah commented 2 years ago

Hey guys, I have a Samsung 970 EVO Plus 500g that used to be my boot drive, after updating my system to Monterey it was booting in more than 110 seconds from bios beep to Login Screen, so I replaced it with an old ADATA XPG SX6000NP 120g now booting in 52 seconds in all three trim settings 999, -1 and 4294967295 from bios beep to login screen so I guess its working well, with trimforce enable and trim support: yes in system report...

but it is too small for my needs and causing the PC to freeze on bios splash when I try to multi-boot Linux when paired with the 970 EVO Plus (windows 11 working fine), so the question is

can someone please state which controllers should be avoided and which is working properly and can be future proof? I'll be grateful if anyone can confirm the following drives are supported, as most of the recommended working drives in the above list are not available or very expensive where I live:

Crucial P2 HP EX900 or EX900 PRO Kingston NV1 Kingston A2000 PNY CS1030 Silicon Power P34A60 OR P34A80

Thank you in advance

alexander-neumann-webdesign commented 2 years ago

After updating OpenCore from v0.7.6 to v0.7.9 and setting SetApfsTrimTimeout to 0, my Samsung 970 EVO Plus 500GB (older Version) now boots in ~9 seconds (from Apple logo to macOS login screen). It was more than ~140 seconds before the OpenCore update, no matter what SetApfsTrimTimeout was set to. Using macOS Monterey v12.1. Very happy!

aluveitie commented 2 years ago

Just remember to occasionally boot with it set to -1 to TRIM the disk.

stiffyfoto commented 2 years ago

Just remember to occasionally boot with it set to -1 to TRIM the disk.

no need. SetApfsTrimTimeout set to 0 just effect boot time, the system trim is still on. trim

aluveitie commented 2 years ago

@stiffyfoto The disk still supports trim, but by setting the timeout to 0 you prevent macOS from actually running it.

Icono7 commented 2 years ago

Working fine with TRIM:

  • Western Digital Blue SN550
  • Western Digital Black SN700
  • Western Digital Black SN720
  • Western Digital Black SN750 (aka SanDisk Extreme PRO)
  • Western Digital Black SN850 (need more tests)
  • Intel 760p (including OEM models, e.g. SSDPEMKF512G8)
  • Crucial P1 1TB NVME (SM2263EN) (need more tests)

Hi, I would like to know if there is any news? I have problems with the Samsung SSD 970 EVO and I would like to solve them definitively by switching to Western Digital Black better SN750, SN750 SE or SN850? They are the same price, which one would be the most compatible? My samsung now boots in 3 minutes and gives me some problems. I also have a sabrent that boots up fast but I think it has some problems with waking up. Thanks

Edhawk64 commented 2 years ago

OK tests completed. Timed from Gigabyte splash screen to macOS Login screen, using iPhone stopwatch.

System as follows:

Screenshot 2022-03-21 at 20 31 04

999 - 41.44, 41.41, 42.11 -1 - 45.75, 45.70, 46.02 4294967295 - 45.41, 45.72, 46.25

Assume Trim is working fine on this old NVME drive as difference between the three tests only 4-5 seconds. With test 2 (-1) equal to time for boot for test 3 (4294967295).

28/04/2022 Just to clarify, I have owned this NVMe and another identical drive since 2015, so losing just 5% of the life is more than acceptable.

iamyounix commented 2 years ago

I don't know if you'll ever consider the following, but apparently many models of Phison E12 (like Sabrent Rocket NVMe 3.0 TLC 64 layers NAND) have a broken trim support and are going to failure of the disk. In less than 1 year, I wrote just 5.2 TB of data for my 512GB model and the drive estimated life was 94%. According to Sabrent TBW warranty, the 500GB 3.0 TLC model should have 800TBW of life which is a joke.

Please avoid buying NVMes with Phison E12 controller. I opted for a WD Black SN750 and it works flawlessly both with and without TRIM ^^

I have Phison E13 controller. And must be avoided also. Experimenting same brand of NVMe (Phison E13 and Maxio Chipset). Maxio work better than Phison E13. After that, i swap those NVMe to Kingston A2000. Work near native and flawless.

Gobias64 commented 2 years ago

Samsung 860 EVO 500GB SATA Z490-A Prime + i7-10700K macOS 11.6.5 Big Sur

Skipped UEFI login and disabled OC Picker. Timed from motherboard logo to macOS login screen.

TRIM appears to be working correctly: -1 takes about 5 seconds longer than 999, and -1 and 4294967295 take roughly the same amount of time.

  1. 999: 22.89, 22.73, 22.43
  2. -1: 27.79, 28.25, 27.56
  3. 4294967295: 27.46, 26.86, 27.71
danieldeicide commented 2 years ago

Hey @vit9696 , can we get an update on the supported NVMe drives? Does SN850 still needs more tests? What would be your model recommendation in terms of macOS support?

Thank you immensely for your + others work! I deeply appreciate it.

vit9696 commented 2 years ago

I would appreciate if somebody compiles a list of suggested changes. SN850 works great in macOS indeed, but I must admit it is fairly hot.

osxfr33k commented 2 years ago

Samsung 970 pro 1Tb Nvme Asus Z390-E, i9-9900K Sapphire Radeon Pulse RX 580 8GB MacOS Monterey 12.4 Running for about 30 days in OC v0.7.2 Running for about 30 days in OC v0.8.0

  1. 38.95, 38.13, 37.51
  2. 38.95, 37.53, 37.93
  3. 37.66, 38.31, 37.28

Edited:

OK I just now read that this test may no longer be working in Monterey.

My question is because I don’t know so much about trim is if I have an SSD and the NmMe M.2 drive and I wipe one and clone it back to the other every few weeks would that help any as far as the drive not degrading overtime?

I think I might be relating this to the old spindle drives fragmentation defragmentation method and it has nothing to do with this at all or will it help stop degradation of the drive?

Artoria2e5 commented 2 years ago

@hanselsin:

say 21000000 does it mean pretty much the same thing as 4294967295?

4294967295 does not have some magical meaning here IMO; it's just the biggest value possible for the option and something programmers etch into their minds. But 21000000 is, well, actually not that long since it's "just" 21 seconds whereas Samsung TRIM can take an extra minute or so if you look at the numbers others have posted. Add a zero to the end for something "reasonable".

@aluveitie

Just remember to occasionally boot with it set to -1 to TRIM the disk.

Doesn't that revert to the 9.999999 sec timeout, which won't be enough for the slow TRIM drives? I think disabling the timeout with a value of 0 would be better here.

While we are at it, the testing directions should be updated for macOS 12 by replacing the 4294967295 with 0.

aluveitie commented 2 years ago

@Artoria2e5 0 disables TRIM.

Either specifying timeout, or completely disabling trim with 0

On MacOS 12 you have to set -1 for TRIM to run completely, on Big Sur 4294967295

yanisalbert commented 2 years ago

Gigabyte Z490 VISION D i9 10850K Sapphire Radeon Pulse RX 580 4GB MacOS Monterey 12.4 OC 0.8.3

Samsung 970 pro 2Tb Nvme 999=58-58-58 -1=58-58-58 4294967295=58-58-58

Samsung SSD 850 PRO 512GB 999=24-24-24 -1=25-24-24 4294967295=23-24-24

ameenjuz commented 1 year ago

@vit9696 i want to buy wd blue sn570 nvme pcie ssd which is avalaible for my country Is it working or not? please reply me i m waiting for your answer

Edhawk64 commented 1 year ago

Yes, the WD SN570 works just fine in macOS.

i0ntempest commented 1 year ago

Can confirm SN570, SN750 SE, and SN850 works just fine. I’ve used them in my hacks as boot drive.

1alessandro1 commented 1 year ago

Guys @i0ntempest @Edhawk64 please report your results as mentioned in the OP, measuring boot time as described with the values SetApfsTrimTimeout set on -1 999 and 2^32 - 1

i0ntempest commented 1 year ago

I think I have reported the time some time ago in this thread, can’t remember which exact disk though. Will do when I have the time.

ameenjuz commented 1 year ago

@1alessandro1 @i0ntempest thanks guyz for confirming I bought wd sn570 and tested work fine but read&write speed is not actual Bitween windows&macos but boot speed very fast about 15 second and less This screen of read&write speed under windows
nvme-pcie MacOS Monterey shows
Write 1204 read 2845 M i missing something for my configration or due to power managment I m using nvmefix.kext and without kext no increase read&write Please reply me

lf111 commented 1 year ago

Samsung SSD 860 EVO 500GB SATA

motherboard: GA - Z390 M Gaming CPU: i7–8700K macOS: Monterey 12.5 Opencore 0.82

From Apple logo to macOS system :

1 : 15 15 15 2 : 15 15 15 3: 15 15 15

No difference at all with the three values (Why ? Maybe because I have a few other hard drives plugged in the computer and it's the minimum time to detect them during the boot ?)

I also did the test with the Samsung SSD 850 EVO 500GB SATA, It was the same values but after a few boot, it increases a lot (about 47 seconds).

And also the Western Digital - WD Blue SSD - SSD interne 2To M.2 SATA is not compatible with Trim (About 47 seconds for booting)

Thanks a lot for discovering the problem !!

oldman20 commented 1 year ago

Samsung SSD 860 EVO MZ-76E250BW 250GB (GPT) SATA Dell Inspiron 3558 (UEFI) - Intel Core i5 (5th Gen) 5200U /2.20GHz - 8GB RAM DDR3L - Intel(R) HD Graphics 5500/ nVIDIA GeForce 920M - 1366x768

macOS: Monterey 12.6 Opencore 0.85

From Apple logo to macOS system :

1 : 35 35 2 : 35 36 3: 35 36

No difference much at all with the three values. But it take long time 35s to boot completely. Any suggestions? Thank

lf111 commented 1 year ago

Hello, finally, after two months, with the ssd saamsung 860, it came back to a very long boot, 45 seconds, and I don't know why... I tried everything (trimfore disable and enable again, clean Nvram in opencore.... The short boot last 1 month and half and now the problem came back. So, maybe the 860 is not compatible with trim finally ???

oldman20 commented 1 year ago

Hello, finally, after two months, with the ssd saamsung 860, it came back to a very long boot, 45 seconds, and I don't know why... I tried everything (trimfore disable and enable again, clean Nvram in opencore.... The short boot last 1 month and half and now the problem came back. So, maybe the 860 is not compatible with trim finally ???

mine is 35s boot Monterey even postinstall

shrisha108 commented 1 year ago

How is Kingston KC3000? It has Phison E18. I can get it pretty cheap but want to be sure that it will not be effected. Thank you.

qin9125 commented 1 year ago

thank you wd sn550 works fine

lengwangye commented 1 year ago

威刚S70避坑,不能用

osy commented 1 year ago

I went on kind of a shopping spree for new NVMe this holiday and have some data points. (Sorry I didn't follow the template)

My machine is a Intel NUC i7-8809G running macOS 12.6.1 with FileVault enabled.

  1. Samsung 860 EVO M.2 SATA 1TB This was the drive I originally had and it worked fine for years. TRIM was enabled.
  2. HP EX920 M.2 NVME 1TB Two year ago, I bought this with the intention of replacing the SATA drive but I had random panics. Probably due to high loads. Didn't do too much testing so I didn't know what the issue was or what the TRIM status was.
  3. Mushkin Enhanced Helix-L M.2 NVME 1TB I bought this a year ago again with the intension of replacing the SATA drive. Also had random panics and actually managed to kill the drive probably do to extreme IO loads. Returned it a week later. Do not ever buy this brand.
  4. Samsung 980 PRO w/ Heatsink M.2 NVME 2TB I bought this before reading the first post. Had slow boot times that were NOT solved by SetApfsTrimTimeout. In fact, I was not able to boot my primary partition (FileVault enabled) at all. It just got stuck at the loading screen for maybe half an hour before rebooting with a panic. I can boot into my second install (unencrypted) but it would quickly panic when under load.
  5. Kingston NV2 M.2 NVME 2TB I bought this last week because there was a TechPowerUp review that gave a really good score and said the NV2 had a Phison controller. Turns out, after reading some Amazon reviews, either Kingston sent reviewers a different sample or the 1TB model uses a different controller. The 2TB version has a Silicon Motion controller and panics on high loads.
  6. Western Digital Black SN850X M.2 NVME 2TB This worked perfectly (two weeks so far without any panics). This was expected from the first post, but I can confirm the X model didn't change anything drastically.

Some other thoughts:

I think having FileVault enabled really exacerbates the issue. With any NVME that panics with a heavy IO load, it will also instantly panic when booting into my FileVault enabled installation.

I don't see enough people talk about HMB and DRAMless SSDs which are the majority of "cheap" NVMEs. macOS does not support HMB and so will get worse random I/O throughput. The performance on sequential reads shouldn't be affected and that's what everyone seems to run on benchmarks. I found that "low throughput" seems to be one of the factors that cause macOS to panic. For example, here is a benchmark run on the Kingston NV2 on macOS:

Screen Shot 2022-12-24 at 1 24 30 AM

As you can see the write speeds are terrible and way under the rated speed of 2500MB/s. I'm not sure why the numbers are this bad, but I tried to also run a benchmark on my Windows install with the same drive put into a TB3 enclosure in order to simulate the lack of HMB and you see similar numbers for random writes.

Screenshot 2022-12-24 121620

Compare that with the same drive installed internally (note that TB3 overhead probably contributes to the difference in peak read speeds)

Screenshot 2022-12-23 213543

Moral of the story: go with WD if you are building a hackintosh.

4tl4sh commented 1 year ago

Haven't taken exact measures because I'm running debug verbose mode and could be misleading but I can confirm that my Samsung 980 (non Pro) loads in -1 as fast as in 4294967295. Probably around 20 to 30 seconds tops.

I'm running this hackintosh since August in a 256gb partition out of 1 TB of space. I'm using the other partition in Windows as an expansion disk (not OS) for games. Health level remains at 100%, no wear detected (I purchased the disk around May / June). No slowdowns or slow boot times.

phrfpeixoto commented 1 year ago

Has anyone tested the WD SN770? I'm currently running a Samsung 970 Pro and considering the SN770 for replacement.

yanisalbert commented 1 year ago

Has anyone tested the WD SN770? I'm currently running a Samsung 970 Pro and considering the SN770 for replacement.

Hi, i have this one, 2Tb, no issues so far. I bought also the SN850 2Tb, it works fine too.

kocoman1 commented 1 year ago

is there shorter 2260, 2242 smaller 128/250gb ok that works without this panic/nvme problem? thx

Kaisar870 commented 1 year ago

WD SN850x will work? I've an Asus Z390E with i9900k. SN750 is out of market and high price too.

osy commented 1 year ago

@Kaisar870 read a couple posts up: https://github.com/dortania/bugtracker/issues/192#issuecomment-1364587143

Kaisar870 commented 1 year ago

@Kaisar870 read a couple posts up: #192 (comment)

Thank you 😊 my concern is now does it work with z390 ? I mean PCI gen 3x4

osy commented 1 year ago

Yes, I also had PCI gen 3x4. However, after months of usage, I did notice that there are some times (maybe 1-2 times a week) where the storage would cause macOS to freeze up for 10-15 seconds. I don't know if it has to do with this specific NVMe or if it is an issue with every NVMe. I only used SATA before and never had that issue.

Kaisar870 commented 1 year ago

Yes, I also had PCI gen 3x4. However, after months of usage, I did notice that there are some times (maybe 1-2 times a week) where the storage would cause macOS to freeze up for 10-15 seconds. I don't know if it has to do with this specific NVMe or if it is an issue with every NVMe. I only used SATA before and never had that issue.

Yes, I also had PCI gen 3x4. However, after months of usage, I did notice that there are some times (maybe 1-2 times a week) where the storage would cause macOS to freeze up for 10-15 seconds. I don't know if it has to do with this specific NVMe or if it is an issue with every NVMe. I only used SATA before and never had that issue.

Thank you for your patience 😊 do you think this issues cause by SN850X? I've already 970 Evo plus and boot time 1 minute 30 sec. Some apps Open take long time specific Ms office. Also glitch the screen and freeze Evey week even multiple times a day. I've previously installed 850 sata SSD and this was incredibly fast both boot and opening apps.

osy commented 1 year ago

My advice: stick with the 850 SATA. I had a 860 SATA before and had 0 issues for years. You won't notice any speed increase in day to day use, especially since it's PCIe 3x4.

arekhn commented 12 months ago

Samsung SSD 980 500GB NVME (Non-Pro)

motherboard: GA - Z490 Aorus Elite CPU: i3-10100F macOS: Ventura 13.4.1 Opencore 0.9.3 HideAuxiliary Enabled, Showpicker and Timeout to 0.

From Apple logo to Login Screen:

1 : 15 15 15 2 : 42 40 40 3: 40 40 40

I can only assume the Trim is either working slowly or failing, I am unsure if I should leave it on -1 or 0 for day to day use until I can buy a more compatible SSD, any tips are welcome.

TCB13 commented 11 months ago

How is Kingston KC3000? It has Phison E18. I can get it pretty cheap but want to be sure that it will not be effected. Thank you.

Maybe not that great? https://www.tonymacx86.com/threads/general-nvme-drive-problems-fatal.316546/post-2324146

Menelkir commented 11 months ago

Is there a way to manually trigger the trim or some tool to do that? Because I rather trigger manually when I'm idle than waiting an infinite amount of time at boot.