Date: Thu, 14 Mar 2024 18:56:48 +0000 From: Bob Bishop <rb@gid.co.uk> To: mike tancsa <mike@sentex.net> Cc: "freebsd-hardware@freebsd.org" <freebsd-hardware@FreeBSD.org> Subject: Re: WD Blue 510 SSD and strange write performance Message-ID: <CCAB653B-4DC6-4C69-AB68-CD258200D22F@gid.co.uk> In-Reply-To: <e5c2a99d-931e-48b4-9445-fc4ad05ccc70@sentex.net> References: <e5c2a99d-931e-48b4-9445-fc4ad05ccc70@sentex.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi, > On 14 Mar 2024, at 18:47, mike tancsa <mike@sentex.net> wrote: >=20 > This might be more of a hardware question than anything, but I noticed = the drive is fairly fast on initial writes, but dramatically slows down = over time with a consistent write. >=20 > At bootup time, I can blast out a file (UFS2 mount) >=20 > # dd if=3D/dev/zero of=3D/mnt/tmp/junk.bin.`date "+%s"` bs=3D1m = status=3Dprogress count=3D4000 > 3735027712 bytes (3735 MB, 3562 MiB) transferred 7.014s, 533 MB/s > # >=20 > nice and fast. But subsequent writes really start to tank. >=20 > # dd if=3D/dev/zero of=3D/mnt/tmp/junk.bin.`date "+%s"` bs=3D1m = status=3Dprogress count=3D4000 > 4128243712 bytes (4128 MB, 3937 MiB) transferred 46.048s, 90 MB/s >=20 > # dd if=3D/dev/zero of=3D/mnt/tmp/junk.bin.`date "+%s"` bs=3D1m = status=3Dprogress count=3D4000 > 3992977408 bytes (3993 MB, 3808 MiB) transferred 31.016s, 129 MB/s >=20 > If I wait for 2min, it seems to be back to normal >=20 > # sleep 120 ; dd if=3D/dev/zero of=3D/mnt/tmp/junk.bin.`date "+%s"` = bs=3D1m status=3Dprogress count=3D4000 > 4137680896 bytes (4138 MB, 3946 MiB) transferred 9.025s, 458 MB/s >=20 > Is there something going on behind the scenes limiting the amount of = sustained writes these drives can handle ? Is it just a limitation of = the SSD ? Probably (I don=E2=80=99t know for sure) these drives have a RAM write = cache and really suck at committing from there to NVM. > I didnt notice such issues on some consumer Samsungs. The problem = initially showed up for me when I was doing a series of zfs send | zfs = recv on the same pool (so a lot of reads and writes at the same time) = and I would get a bunch of errors on the WD disks. Replacing them with = Samsungs avoids the errors. >=20 >=20 > =3D=3D=3D START OF INFORMATION SECTION =3D=3D=3D > Device Model: WD Blue SA510 2.5 1000GB > Serial Number: 240406800001 > LU WWN Device Id: 5 001b44 8b334e00b > Firmware Version: 52046100 > User Capacity: 1,000,204,886,016 bytes [1.00 TB] > Sector Size: 512 bytes logical/physical > Rotation Rate: Solid State Device > Form Factor: 2.5 inches > TRIM Command: Available, deterministic > Device is: Not in smartctl database 7.3/5528 > ATA Version is: ACS-4, ACS-2 T13/2015-D revision 3 > SATA Version is: SATA 3.2, 6.0 Gb/s (current: 6.0 Gb/s) > Local Time is: Thu Mar 14 14:41:58 2024 EDT > SMART support is: Available - device has SMART capability. > SMART support is: Enabled >=20 > # camcontrol iden ada1 > pass1: <WD Blue SA510 2.5 1000GB 52046100> ACS-4 ATA SATA 3.x device > pass1: 600.000MB/s transfers (SATA 3.x, UDMA6, PIO 512bytes) >=20 > protocol ACS-4 ATA SATA 3.x > device model WD Blue SA510 2.5 1000GB > firmware revision 52046100 > serial number 240406800001 > WWN 5001b448b334e00b > additional product id > cylinders 16383 > heads 16 > sectors/track 63 > sector size logical 512, physical 512, offset 0 > LBA supported 268435455 sectors > LBA48 supported 1953525168 sectors > PIO supported PIO4 > DMA supported WDMA2 UDMA6 > media RPM non-rotating > Zoned-Device Commands no >=20 > Feature Support Enabled Value Vendor > read ahead yes yes > write cache yes yes > flush cache yes yes > Native Command Queuing (NCQ) yes 32 tags > NCQ Priority Information no > NCQ Non-Data Command no > NCQ Streaming no > Receive & Send FPDMA Queued no > NCQ Autosense no > SMART yes yes > security yes no > power management yes yes > microcode download yes yes > advanced power management yes no 0/0x00 > automatic acoustic management no no > media status notification no no > power-up in Standby no no > write-read-verify no no > unload no no > general purpose logging yes yes > free-fall no no > sense data reporting no no > extended power conditions no no > device statistics notification no no > Data Set Management (DSM/TRIM) yes > DSM - max 512byte blocks yes 8 > DSM - deterministic read yes any value > Trusted Computing no > encrypts all user data no > Sanitize yes block, > Sanitize - commands allowed yes > Sanitize - antifreeze lock yes > Host Protected Area (HPA) no > Accessible Max Address Config yes no 1953525168/1953525168 >=20 >=20 > RELENG_14 from today >=20 >=20 -- Bob Bishop rb@gid.co.uk
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CCAB653B-4DC6-4C69-AB68-CD258200D22F>