NVME drive is running slower than it should

I've been enjoying Garuda linux already for about a month. As my second distro I love it. It actually made me to install it on my main drive. But I have ran into a small problem. I've bought a new NVME drive Samsung 980 500GB to be exact. I have ran tests with KDISKMARK and my results are quite poor (see the attached image). The advertised speeds of the drive are 3 100 MB/s read and 2 600 MB/s write. I've heard that using the brtfs partition could cause a small performance drop, but it definitively wouldn't be this big. I have a friend that has the same drive and gets the advertised speeds. He's using EndeavourOS with a brtfs file system. I have made sure to use the correct M.2 slot on my mobo so i get the gen.3 speeds. Testing the drive on Windows 10 resulted in achieving the advertised speeds. Does someone have any idea why is the drive slower? Or am I doing something wrong?

My system specs:

System:    Kernel: 5.15.5-zen1-1-zen x86_64 bits: 64 compiler: gcc v: 11.1.0
           parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
           root=UUID=2e03b88b-4bcd-4eeb-b671-69f12f254dbe rw [email protected] splash
           rd.udev.log_priority=3 vt.global_cursor_default=0 systemd.unified_cgroup_hierarchy=1
           resume=UUID=deaad8ed-2fe7-48d5-88da-d30c394d5d7f loglevel=3
           Desktop: KDE Plasma 5.23.3 tk: Qt 5.15.2 info: latte-dock wm: kwin_x11 vt: 1 dm: SDDM
           Distro: Garuda Linux base: Arch Linux
Machine:   Type: Desktop System: ASUS product: N/A v: N/A serial: <superuser required>
           Mobo: ASUSTeK model: ROG CROSSHAIR VII HERO v: Rev 1.xx serial: <superuser required>
           UEFI: American Megatrends v: 4603 date: 09/13/2021
Battery:   ID-1: hidpp_battery_0 charge: 81% condition: N/A volts: 4.0 min: N/A
           model: Logitech G502 LIGHTSPEED Wireless Gaming Mouse type: N/A serial: <filter>
           status: Charging
CPU:       Info: 6-Core model: AMD Ryzen 5 3600 bits: 64 type: MT MCP arch: Zen 2 family: 17 (23)
           model-id: 71 (113) stepping: 0 microcode: 8701021 cache: L1: 384 KiB L2: 3 MiB
           L3: 32 MiB
           flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
           bogomips: 86395
           Speed: 4069 MHz min/max: 2200/3600 MHz boost: enabled Core speeds (MHz): 1: 4079
           2: 4067 3: 4023 4: 4077 5: 4043 6: 3950 7: 3926 8: 4053 9: 4080 10: 3951 11: 4078
           12: 4049
           Vulnerabilities: Type: itlb_multihit status: Not affected
           Type: l1tf status: Not affected
           Type: mds status: Not affected
           Type: meltdown status: Not affected
           Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via prctl
           Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer sanitization
           Type: spectre_v2
           mitigation: Full AMD retpoline, IBPB: conditional, STIBP: conditional, RSB filling
           Type: srbds status: Not affected
           Type: tsx_async_abort status: Not affected
Graphics:  Device-1: NVIDIA TU104 [GeForce RTX 2070 SUPER] vendor: Gigabyte driver: nvidia
           v: 495.44 alternate: nouveau,nvidia_drm bus-ID: 0a:00.0 chip-ID: 10de:1e84
           class-ID: 0300
           Display: x11 server: X.Org compositor: kwin_x11 driver: loaded: nvidia
           unloaded: modesetting,nouveau alternate: fbdev,nv,vesa display-ID: :0 screens: 1
           Screen-1: 0 s-res: 2560x1440 s-dpi: 108 s-size: 602x342mm (23.7x13.5")
           s-diag: 692mm (27.3")
           Monitor-1: DP-4 res: 2560x1440 hz: 144 dpi: 109 size: 597x336mm (23.5x13.2")
           diag: 685mm (27")
           OpenGL: renderer: NVIDIA GeForce RTX 2070 SUPER/PCIe/SSE2 v: 4.6.0 NVIDIA 495.44
           direct render: Yes
Audio:     Device-1: NVIDIA TU104 HD Audio vendor: Gigabyte driver: snd_hda_intel v: kernel
           bus-ID: 0a:00.1 chip-ID: 10de:10f8 class-ID: 0403
           Device-2: AMD Starship/Matisse HD Audio vendor: ASUSTeK driver: snd_hda_intel v: kernel
           bus-ID: 0c:00.4 chip-ID: 1022:1487 class-ID: 0403
           Device-3: Kingston HyperX Cloud Flight Wireless Headset type: USB
           driver: hid-generic,snd-usb-audio,usbhid bus-ID: 7-2:2 chip-ID: 0951:16c4
           class-ID: 0300
           Sound Server-1: ALSA v: k5.15.5-zen1-1-zen running: yes
           Sound Server-2: JACK v: 1.9.19 running: no
           Sound Server-3: PulseAudio v: 15.0 running: no
           Sound Server-4: PipeWire v: 0.3.40 running: yes
Network:   Device-1: Intel I211 Gigabit Network vendor: ASUSTeK driver: igb v: kernel port: e000
           bus-ID: 06:00.0 chip-ID: 8086:1539 class-ID: 0200
           IF: enp6s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
           IF-ID-1: virbr0 state: down mac: <filter>
Bluetooth: Device-1: Cambridge Silicon Radio Bluetooth Dongle (HCI mode) type: USB driver: btusb
           v: 0.8 bus-ID: 7-4:4 chip-ID: 0a12:0001 class-ID: e001
           Report: bt-adapter ID: hci0 rfk-id: 0 state: down bt-service: enabled,running
           rfk-block: hardware: no software: yes address: <filter>
Drives:    Local Storage: total: 1.69 TiB used: 855.85 GiB (49.4%)
           SMART Message: Unable to run smartctl. Root privileges required.
           ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung model: SSD 980 500GB size: 465.76 GiB
           block-size: physical: 512 B logical: 512 B speed: 31.6 Gb/s lanes: 4 type: SSD
           serial: <filter> rev: 1B4QFXO7 temp: 36.9 C scheme: GPT
           ID-2: /dev/sda maj-min: 8:0 vendor: Western Digital model: WD1002FAEX-00Z3A0
           size: 931.51 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s type: N/A
           serial: <filter> rev: 1D05 scheme: MBR
           ID-3: /dev/sdb maj-min: 8:16 vendor: A-Data model: SU650 size: 111.79 GiB block-size:
           physical: 512 B logical: 512 B speed: 6.0 Gb/s type: SSD serial: <filter> rev: 6
           scheme: GPT
           ID-4: /dev/sdc maj-min: 8:32 vendor: Patriot model: Burst size: 223.57 GiB block-size:
           physical: 512 B logical: 512 B speed: 6.0 Gb/s type: SSD serial: <filter> rev: 61.3
           scheme: GPT
Partition: ID-1: / raw-size: 448.39 GiB size: 448.39 GiB (100.00%) used: 211.89 GiB (47.3%)
           fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
           ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%) used: 25.8 MiB (8.6%)
           fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
           ID-3: /home raw-size: 448.39 GiB size: 448.39 GiB (100.00%) used: 211.89 GiB (47.3%)
           fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
           ID-4: /var/log raw-size: 448.39 GiB size: 448.39 GiB (100.00%) used: 211.89 GiB (47.3%)
           fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
           ID-5: /var/tmp raw-size: 448.39 GiB size: 448.39 GiB (100.00%) used: 211.89 GiB (47.3%)
           fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
Swap:      Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
           ID-1: swap-1 type: partition size: 17.07 GiB used: 0 KiB (0.0%) priority: -2
           dev: /dev/nvme0n1p3 maj-min: 259:3
           ID-2: swap-2 type: zram size: 15.58 GiB used: 2.2 MiB (0.0%) priority: 100
           dev: /dev/zram0
Sensors:   System Temperatures: cpu: N/A mobo: N/A
           Fan Speeds (RPM): cpu: 741
Info:      Processes: 321 Uptime: 1h 5m wakeups: 7 Memory: 15.58 GiB used: 3.85 GiB (24.7%)
           Init: systemd v: 249 tool: systemctl Compilers: gcc: 11.1.0 clang: 13.0.0 Packages:
           pacman: 1698 lib: 475 Client: Unknown Client: garuda-assistant inxi: 3.3.09


For comparison (as the drives are pretty similar) Drive's around half full and the install's only a week old or so.

/              btrfs   subvol=/@,defaults,noatime,space_cache,compress=zstd 0 0
/home    btrfs   subvol=/@home,defaults,noatime,space_cache,compress=zstd 0 0

Perhaps check out your mate's Endeavor Fstab.

So, I just chucked Endeavor on a VM and the default fstab is:

/ btrfs subvol=/@,defaults,noatime,space_cache,autodefrag 0 1
/home btrfs subvol=/@home,defaults,noatime,space_cache,autodefrag 0 2
1 Like

You're hitting 2GB/s write, so that's already performing within error bounds. Read of 1.6GB/s is lower than 3GB/s but this could be influenced by background processes, e.g. deferred filesystem preparation (ext4 doesn't create all disk structures immediately), Baloo indexing, ...


Also, advertised readings are taken with industry leading hardwares. Like best processors, best motherboards, lavish RAM, and ideal temperature conditions. They advertise the best speed SSD can attain.

Which software are you running to measure speed?

Is he running KDiskMark too with similar settings?

I was going to point this out, but:

Made that a "little too" redundant.


What about the rest of the PC?


I'm using Crystal disk mark

Yes, he's using the same settings.

Same processor different motherboard and RAM. He bough the disk like a week before I did.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.