0

In my system are two M.2 SSD of the same type (Corsair Force MP600). One for Windows, one for Linux. Copying bigger files on Windows always runs with ~4..5GB/s. Surpassing 5GB/s on larger files - and this is obviously including the NTFS overhead.

Yet, on Linux, even a no-FS sequential read:

# cat /dev/nvme0n1p4 | pv > /dev/null
8.86GiB 0:00:12 [ 535MiB/s] 

# cat /dev/nvme1n1p1 | pv > /dev/null
71GiB 0:00:07 [ 287MiB/s]

Speed fluctuates between 115MB/s up to 800MB/s while averaging at ~300MB/s. Even any SATA SSD is faster:

# cat /dev/sda | pv > /dev/null
63GiB 0:00:09 [ 511MiB/s]

# cat /dev/sdd | pv > /dev/null
63GiB 0:00:08 [ 521MiB/s]

What could possibly be wrong here? Is there a kernel config that I have missed? Any help would be greatly appreciated!

Edit: more system info (from neofetch):

OS: Gentoo Base System release 2.7 x86_64
Kernel: 5.15.11-gentoo-x86_64
CPU: AMD Ryzen Threadripper 3970X (64) @ 3.700GHz
Memory: 89322MiB / 193169MiB
IdleMaster
  • 71
  • 1
  • 7
  • Of course you are aware of the fact that your data is being piped to pv. It might not account for the largest part of the delays however, see https://unix.stackexchange.com/questions/191386/pipe-viewer-progress-monitor-performance-consequence – MC68020 Jan 05 '22 at 10:07
  • @MC68020 `cat /dev/zero| pv > /dev/null` averages around 5.5GiB/s. So even if it adds overhead, I think in the realm of the measured 300MiB/s it is not really relevant. – IdleMaster Jan 05 '22 at 10:55
  • Well, may I ask you to provide os data for your Linux System, like kernel version, distro you are using. Does the systemlog show any signes of possible failure? Like activate default driver, any strange or not normal messages in the logfiles. Otherwise its hard to say. Sometime controller driver can be picky... – terpentin Jan 05 '22 at 09:55
  • No upsetting log entries and dmesg is also absolutely clean. – IdleMaster Jan 05 '22 at 10:56
  • Are you copying to NTFS? Old driver has always been slow as it had to be developed without any help from Microsoft and used fuse. The New NTFS File-System Driver Has Been Submitted For Linux 5.15 Sept 2021 https://www.phoronix.com/scan.php?page=news_item&px=NTFS3-For-Linux-5.15 – oldfred Jan 05 '22 at 14:30
  • @oldfred I am not copying at all – IdleMaster Jan 05 '22 at 14:55
  • What speed do you get with something like `dd` with a larger block size pointed at `/dev/null`? You can send `SIGUSR1` to it to get it to print progress and time its operation. – binki Jan 05 '22 at 14:55
  • Did you check on `lspci` and make sure you built support for your specific system? Maybe you’re not enabling the newest version of PCI Express or something. I don’t know what things are called or what to look for. – binki Jan 05 '22 at 14:58
  • 1
    Do things magically work fast from a livecd or if you use `genkernel` and kernel modules? – binki Jan 05 '22 at 14:59
  • 1
    @binki `dd if=/dev/nvme0n1 of=/dev/null bs=10M count=2k` gives `21 GB, 20 GiB) copied, 48.1178 s, 446 MB/s` I will try to boot a live system (maybe a standard Ubuntu) and compare - good idea! – IdleMaster Jan 05 '22 at 18:50
  • @binki I tried ubuntu 21.10 live - same speed there. – IdleMaster Jan 06 '22 at 14:26

0 Answers0