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).

Romanychev commented 3 years ago

Gigabyte Z490i Aorus Ultra + 10900k 11.3 Beta (20E5229a) Samsung 970 Evo NVME:

  1. 18, 17, 18.
  2. 29, 30, 30.
  3. 97, 85, 86
Bustycat commented 3 years ago

Crucial BX500 120GB SATA 2.5-inch GA-H61M-S2PV + i5-2500K 11.3.1 (20E241)

  1. 31 30 30
  2. 39 44 40
  3. 46 42 41

(sudo trimforce enable)

From the motherboard logo to macOS system, pressing Enter immediately at OpenCore menu.

Bustycat commented 3 years ago

WD Blue SN550 1TB NVMe Z370 AORUS Gaming 3 + i5-9600K 11.3.1 (20E241)

  1. 20 20 20
  2. 34 33 32
  3. 36 37 37

From Apple logo to macOS system.

Bustycat commented 3 years ago

Crucial MX500 500GB SATA 2.5-inch MacBookPro9,2 + i5-3210M 11.3.1 (20E241)

  1. 39 37 39
  2. 41 42 45
  3. 45 46 46

(sudo trimforce enable)

From Apple logo to macOS system.

Edhawk64 commented 3 years ago

Samsung SM951 256GB NVME (MZVPV256HDGL-00000) Gigabyte GA-Z97X-UD5H, +i7-4790K, iMac 15,1 10.15.7 (19H1030)

  1. 22.90, 22.82, 23.29
  2. 27.46, 26.77, 26.43
  3. 27.10, 26.62, 26.33

From gigabyte splash screen to macOS Login screen (used stopwatch on iPhone to time each run) Pressing Enter immediately at OC GUI.

thomas22122212 commented 3 years ago

Samsung 830 256GB SATA SSD

Asus P9X79WS + Xeon E5-2667v2 + 64GB ECC + MacPro6,1 SMBIOS macOS 11.3.1 + OpenCore 0.6.9

Time in seconds from pressing enter in OC-Picker to login screen:

sudo trimforce disable:

  1. 23, 21, 22

sudo trimforce enable (SetApfsTrimTimeout={999, -1, 4294967295}):

  1. 32, 31, 32
  2. 42, 42, 41
  3. 45, 44, 44

I expected 'trimforce disable' and 'trimforce enable' with 'SetApfsTrimTimeout:999' to be approximately equal. Why isn't that the case? 🤔

telepati commented 3 years ago

HideAuxiliary Enabled, ShowPicker, and Timeout Disabled. (I always use it this way.)

ADATA XPG SX8200 Pro 1TB NVMe ASUS TUF Z390-Plus Gaming + Intel 9900K 11.4 Beta (20F5055c) iMac 19,1

  1. (43, 45, 46)
  2. (46, 47, 48)
  3. (53, 54, 55)

It is always slow in any case. There is only one OS in this Build.

th0u commented 3 years ago

Samsung 870 EVO 1TB SATA Gigabyte Z390 Aorus Pro / i7-9700K 11.3.1 / iMac 19,1

Times taken between Apple Logo and Login Screen

  1. 15, 15, 15
  2. 18, 19, 19
  3. 18, 18, 18
aluveitie commented 3 years ago

Corsair MP600 1TB NVMe Asus ROG Strix X570-I / Ryzen 9 3950X 11.4 Beta / MacPro7,1

  1. 23 24 24
  2. 28 27 27
  3. 27 27 28
dreamwhite commented 3 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 ^^

antoniomcr96 commented 3 years ago

Crucial P2 CT500P2SSD8 Lenovo L390 Yoga with i5-8265U / Big Sur 11.4 / MacBookPro 15,2

  1. 22 22,3 21,5
  2. 30,9 31 31,3
  3. 32,1 31,9 32,20

About 10 seconds more with trim enabled

naveenkrdy commented 3 years ago

DELL XPS 7590 FHD | i7 9750-H | HP SSD EX920 512GB macOS BigSur 11.4 | MacBookPro16,1 | OpenCore 0.6.9

  1. 24 25
  2. 27 27
  3. 27 27

Testing done from POST logo to macOS login screen

ickc commented 3 years ago

Intel 660p

SSD:
    Model: INTEL SSDPEKNW010T8
    type: NVMe
    size: 1TB
motherboard: LattePanda Alpha 800s
CPU: m3-8100Y
macOS: macOS 11.4 (20F71)
SetApfsTrimTimeout time (s)
999 44.84
999 49.88
999 47.36
-1 53.05
-1 52.27
4294967295 56.26
4294967295 56.47

Samsung 860 EVO

SSD:
    Model: Samsung SSD 860 EVO 500GB
    type: SATA
    size: 500GB
motherboard: GA–Z77–HD4
CPU: i7–3770K
macOS: macOS 11.4 (20F71)
SetApfsTrimTimeout time (s)
999 35.62
999 35.38
-1 39.75
-1 39.81
4294967295 39.61
4294967295 39.63

Samsung 970 EVO Plus

SSD:
    Model: Samsung SSD 970 EVO Plus 1TB
    type: NVMe
    size: 1TB
motherboard: GA–X299–UD4
CPU: i9 7900X
macOS: macOS 10.15.7 (19H1217)
SetApfsTrimTimeout time (s)
999 41.30
999 42.39
-1 51.43
-1 51.62
4294967295 1:46.87
4294967295 1:45.62
valueimagery commented 2 years ago

Samsung NVME 970 Pro 512GB

Big Sur 11.4 Z490 Vision D + 5700 XT OC 0.7.1 iMac20,2 NVMEFixup.kext enabled

VALUE | POST>OC | OC>OSX | TOTAL BOOT 999 | 11 | 25 | 36 -1 | 11 | 36 | 47 4294967295 | 11 | 90 | 100

Confirms your findings about Samsung

cdduarte2 commented 2 years ago

Hi! I’m using a Samsung 970 Evo Plus 500GB, but I’m on Clover. Is there anyway to test or implement this without OC? Thanks!

ickc commented 2 years ago

Samsung SSD 960 PRO 512GB

SSD:
    Model: Samsung SSD 960 PRO 512GB
    type: NVMe
    size: 512GB
motherboard: GA–X299–UD4
CPU: i9 7900X
macOS: macOS 11.4 (20F71)
SetApfsTrimTimeout time (s)
999 34.32
999 33.34
-1 42.25
-1 42.83
4294967295 1:27.75
4294967295 1:28.21

c.f. https://github.com/dortania/bugtracker/issues/192#issuecomment-862902022 for similar reports.

AlexKusnezov commented 2 years ago

Western Digital Black SN850 500gb (in PCIe Gen3 Environment):

motherboard: Asus x299 TUF Mark1
CPU: i7 7800X
macOS: macOS 11.5.2 (20G95)

999: 25.57 | 25.10 | 22.80

-1: 23.54 | 25.19 | 24.38

4294967295: 25.39 | 24.65 | 24.74

From Apple logo to macOS system.

sh0umik commented 2 years ago

Mine is Gigabite 240 GB M.2 PCIe SSD (GP-GSM2NE3256GNTD) and it hangs randomly.

beefon commented 2 years ago

FWIW, I’ve tried Plextor M10P with Innogrit controller, and it does not work with macOS. Read operations cause disk I/O freeze, resulting in loss of the device from the macOS device tree (!) until a system reboot. Writes, however, work fine. Windows works fine. Just wanted to warn about this case.

perez987 commented 2 years ago

WD Black SN 750 NVMe 500 GB Z390 Aorus Elite + i7-9700 Monterey beta 10 MacPro7,1

Since motherboard beep to desktop active.

999: 20 | 22 | 22

-1: 19 | 18 | 18

4294967295: 19 | 22 | 20

blodt commented 2 years ago

WD Black SN 750 NVMe 500 GB Z390 Aorus Elite + i7-9700 Monterey beta 10 MacPro7,1

Since motherboard beep to desktop active.

999: 20 | 22 | 22

-1: 19 | 18 | 18

4294967295: 19 | 22 | 20

Hi - May I ask you what settings you've implemented for your SN750? I can't seem to get away from NVMe kernel panics happening eventually with my SN750 2TB -- thank you!

Bustycat commented 2 years ago

WD Blue SN550 1TB NVMe Z370 AORUS Gaming 3 + i5-9600K 11.3.1 (20E241)

  1. 20 20 20
  2. 34 33 32
  3. 36 37 37

From Apple logo to macOS system.

In Monterey ‘4294967295’ is 8 seconds faster.

i0ntempest commented 2 years ago

Samsung 970 Pro, Aorus Z390 Pro No matter what timeout I set I get 3:20+ long boot with Monterey, where before upgrading the boot takes less than one minute. Massively annoying.

wstrohm commented 2 years ago

Okay, I ran a test per the instructions. Results on my computer at left: NVMe, Samsung 970 Pro 1 TB Gigabyte Z390 I AORUS PRO WIFI and Intel i9 9900K CPU Mac OS Big Sur 11.6.1 (Build 20G224)

SetAPFSTrimTimeout at: 999 -- 22, 22, 21 secs -1 -- 34, 32, 32 secs 4294967295 -- 59, 57, 58 secs

I decided to check my Samsung 970 PRO's boot times in my "Mini-ITX 3" computer to see if the same TRIM boot problem occurs running High Sierra 10.13.6 using OpenCore 0.7.5. Result is below:

SSD: NVMe, Samsung 970 PRO 1 TB Mobo: Gigabyte Z370N-WIFI with i7 8700 CPU MacOS: High Sierra 10.13.6 "4294967295": 22, 18, 20 secs from beginning AMI display to desktop

So the "broken TRIM implementation" on the Samsung 970 PRO is not apparent running under MacOS 10.13.6, at least in "Mini-ITX 3." Bad in MacOS 11.6.1, good in MacOS 10.13.6. FWIW.

shadegits commented 2 years ago

Samsung SSD 970 EVO 500GB

motherboard: Asus PRIME Z490M-P CPU: i7 10700K macOS 12.0.1 (21A559) (updated from Big Sur)

I can't get any of the values to change the timeout settings, I don't think I need to be reseting NVRAM or anything else, seems that others can just change the value in config.plist. I started taking some manual stopwatch times from the opencore picker to the macos desktop when I realized the log times were not changing. I have included those if they help at all. Checking the time with "log show --predicate "processID == 0" --start $(date "+%Y-%m-%d") --debug | grep ", trims took"

999: 74.656852 s | 74.733054 | 72.474862 s (1:54 stopwatch)

-1: 73.301794 s (2:01 stopwatch) | 72.573530 s (1:56 stopwatch)

4294967295: 73.471943 s | 74.791656 s | 73.852858 s (1:55 stopwatch)

aluveitie commented 2 years ago

@shadegits From what I've gathered the SetApfsTrimTimeout setting does not work on Monterey anymore

shadegits commented 2 years ago

From what I've gathered the SetApfsTrimTimeout setting does not work on Monterey anymore

@aluveitie That would explain it then... Thanks!

velcis commented 2 years ago

For me Nitro 5 (i5 7300HQ) With SSD: Kingston 500NV1

999: 109,73s -1: 108,44s 4294967295: 108.89s

rajkhand commented 2 years ago

GA-Z370N WiFi - i8700k Big Sur 11.6.1 Samsung SSD 970 EVO 250G M.2 NVME

  1. 14.43 15.10 15.20
  2. 24.53 25.12 25.10
  3. 29.35 30.22. 28.80
arabesc commented 2 years ago

After our discovery of a severe bug in the TRIM implementation of practically all Samsung SSDs

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

I haven't understood in what way the TRIM implementation is broken in a SSD controller if the described behavior is following from the (weird) APFS driver implementation?

The APFS driver explicitly ignores previously unmapped areas and repeatedly trims them on boot.

Is it possible to patch the APFS driver to not ignore unmapped areas but perform TRIM for them on the go?

neuromask commented 2 years ago

I can confirm that Samsung NVMe drives are not so friendly with MacOS during boot (controller trim issue). Monterey has the worst boot time. Just updated Samsung EVO 970 Plus 1TB > Western Digital Black SN750 1TB Cloned by: Clonezilla (raw disk copy) Boot time: -30sec

ronzelver commented 2 years ago

Anyone tested the Samsung 980 (not Pro) 1TB NVMe with Monterey (12.x)?

aniuks33 commented 2 years ago

Anyone tested the Samsung 980 (not Pro) 1TB NVMe with Monterey (12.x)?

I have one . I will let you know tonight or tomorrow.

aniuks33 commented 2 years ago

Gigabyte Z170 gaming K3 / i7 9700K Samsung 980 1TB OS: Monterey 12.1 Beta 3

999: 24.07s -1 : 25.40s 4294967295: 23.87s

The only issue I have are the write/read speeds much lower than on Windows. I am getting 2200MBps for Write and 1900MBps Reads, instead of 3500MBps advertised. On windows these are 3250/2950 respectively.

ronzelver commented 2 years ago

Thanks for testing, but I already went for the 1 TB WD Black SN750 to replace my troublesome 500GB Samsung 970 Evo.

1alessandro1 commented 2 years ago

There are several very good comparison charts containing various SSDs and their controllers: one, two.

@vit9696 The second link was taken down unfortunately, so unless somebody has a backup of recent date (2021) all we've got now is rather outdated snapshot (14 March, 2019) from archive.org here:

image

dhinakg commented 2 years ago

There are several very good comparison charts containing various SSDs and their controllers: one, two.

@vit9696 The second link was taken down unfortunately, so unless somebody has a backup of recent date (2021) all we've got now is rather outdated snapshot (14 March, 2019) from archive.org here:

Working fine here.

screenshot of website

Klaas-Kramer commented 2 years ago

I've got Western Digital Black SN850 500 GB GEN 4. The opening post states: "need more tests". Can I do additional tests to help out?

Replaced my problematic EVO 970 500 GB, this WD seems to do fine (reduces boot time from minutes to seconds).

Mac OS Monterey 12.0.1

Times (from pushing powerbutton to login sceen): 999: 28 | 28 | 28 -1: 28 | 27 | 27 4294967295: 28 | 27 | 27

system: Intel Core i7-7700K Gigabyte GA-Z270N-WIFI

With a stopwatch, so indicative. At least no significant fluctuation.

1alessandro1 commented 2 years ago

Working fine here.

@dhinakg as of 3 days ago, the website wasn't responding, it's nice to know that it's back again.

For safety, I recommend to keep a backup offline of the two links one, two - maybe they could be added to the Anti-Hackintosh Git since they only occupy few kBs of space?

1alessandro1 commented 2 years ago

@Klaas-Kramer please try some older version of macOS (e.g. Catalina or Big Sur) since SetApfsTrimTimeout may not be working, hence you always get around 27-28 secs of boot time regardless of the value you set

aniuks33 commented 2 years ago

Decided to re-test the NVME on Big Sur 11.6

Gigabyte Z170 gaming K3 / i7 9700K Samsung 980 1TB OS: Big Sur 11.6

999: 14.70 14.88 -1 : 21.70 21.55 4294967295: 22.40 22.47

The results are quite different from the test I run on Monterey 12.1 Beta 3 ( in the post above) .

atomizasser commented 2 years ago

Hello. I have seen that there has recently been a firmware update of the NVME 970 EVO Plus to version 4B2QEXM7. 2 days ago I changed my 970 EVO Plus for a WD 550NM, so right now I cannot test if this firmware corrects the TRIM and returns the boot time to normal time. Can anyone test it? Thanks.

trulyspinach commented 2 years ago

@atomizasser I have 970 EVO Plus and just tried to upgrade. However non of tools provided by them allow me to do so. I have tried both the Grub installer and Magician, both refuse to work.

Additionally I found this thread so it seems like I am not the only one that's having issue with it.

EDIT: After a bit more digging it seems that there are more than one revision of 970 EVO Plus with different controller. I don't know if that it why causing this issue.

UPDATE: According to a new reply from the thread:

Hey everyone, Wanted to give an update with my experience. I emailed Samsung and their support informed me that the new update 4B2QEXM7 only applies to certain 970 Evo Plus drives (there is a S/N whitelist). If the update isn't showing up for you in either Magician or the USB updater then it looks like the update isn't applicable to your drive. Would be helpful if they made this clear on the firmware page.

spergotron9999 commented 2 years ago
XPG Gammix S5 256 GB (AGAMMIXS5-256GT-C) MacOS Monterey 12.1 Stopwatch started at MB Boot logo, no buttons pressed at the picker: SetApfsTrimTimeout Run 1, s Run 2, s Run 3, s
999 30 31 32
-1 28 29 30
4294967295 30 31 32

The drive was new, but died after several hours of usage, most likely it was a firmware problem. I wasn't able to use it long enough for a proper test, but at least OS can be installed and started, unlike with Samsung PM981.

nemphys commented 2 years ago

I have the 970 Evo Plus and although the update from Catalina to Big Sur indeed made the boot process ~20 seconds slower, it was something I eventually got used to.

Yesterday I updated to Monterey and now it takes a whooping 10 minutes to boot. Is this also due to this nvme issue, or could something else be wrong?

1alessandro1 commented 2 years ago

@spergotron9999 please use some other OS other than Monterey for your test, your results are too similar to be meaningful about TRIM behaviour of your SSD

Big Sur (11.6.2) is fine for the test

sidshekar commented 2 years ago

Since I have a Samsung 950 pro. Do you guys think it is causing this problem?? Is this issue related to my issue at all. My boot time seems fine. Atleast for now. Boot is under 30s, but is it causing this side effect??

https://www.reddit.com/r/hackintosh/comments/rtpsuy/hdmi_port_black_screen_when_nvme_is_connected/hqxe0p2/?context=3

neuromask commented 2 years ago

I have the 970 Evo Plus and although the update from Catalina to Big Sur indeed made the boot process ~20 seconds slower, it was something I eventually got used to.

Yesterday I updated to Monterey and now it takes a whooping 10 minutes to boot. Is this also due to this nvme issue, or could something else be wrong?

Read comment above. I had same problem Samsung SSD long boot time after updating to Monterey. I have replaced MacOS Samsung to WD. Samsung EVO 970 Plus 1TB > Western Digital Black SN750 1TB Cloned by: Clonezilla (raw disk copy) Boot time: about 30sec (Monterey)

nemphys commented 2 years ago

I have the 970 Evo Plus and although the update from Catalina to Big Sur indeed made the boot process ~20 seconds slower, it was something I eventually got used to. Yesterday I updated to Monterey and now it takes a whooping 10 minutes to boot. Is this also due to this nvme issue, or could something else be wrong?

Read comment above. I had same problem Samsung SSD long boot time after updating to Monterey. I have replaced MacOS Samsung to WD. Samsung EVO 970 Plus 1TB > Western Digital Black SN750 1TB Cloned by: Clonezilla (raw disk copy) Boot time: about 30sec (Monterey)

I can confirm that switching to a new Kingston KC2500 made the whole long boot issue go away; I am now booting Monterey in ~30 seconds.

hanselsin commented 2 years ago

Been using 970 EVO PRO 1TB x 2 (one for macOS, one for Win10) for over a year and after this Monterey I pretty wondered whether I should use 999 or 4294967295 - may I ask a stupid question that if I simply put SetApfsTrimTimeout to something big enough, say 21000000 does it mean pretty much the same thing as 4294967295? The number is big enough for any timeout anyway, or is 4294967295 a magic value for macOS?

The reason why I asked this is because some plist editors, say OpenCore Configurator, once touched the value will change the 4294967295 into -1, which is the 2's-complement of 32-bit signed int.