Slow writing to USB 3.0 SSD with ntfs

Hello, I don’t know but something is wrong with transfer rate to my SSD connected to usb 3.0

Any ideas why so slow?

With test speed its ok.

System:    Kernel: 5.10.36-2-MANJARO x86_64 bits: 64 compiler: gcc v: 10.2.0 
           parameters: BOOT_IMAGE=/boot/vmlinuz-5.10-x86_64 root=UUID=a8b7a907-3e22-42d9-b03c-cf0c0022399d rw 
           apparmor=1 security=apparmor udev.log_priority=3 
           Desktop: Cinnamon 4.8.6 tk: GTK 3.24.29 vt: 7 dm: LightDM 1.30.0 Distro: Manjaro Linux base: Arch Linux 
Machine:   Type: Desktop System: MSI product: MS-7760 v: 2.0 serial: <filter> 
           Mobo: MSI model: X79A-GD45 (8D) (MS-7760) v: 2.0 serial: <filter> UEFI: American Megatrends v: 12.8 
           date: 12/08/2014 
Battery:   Device-1: hidpp_battery_0 model: Logitech Wireless Mouse MX Master serial: <filter> 
           charge: 100% (should be ignored) rechargeable: yes status: Discharging 
CPU:       Info: 8-Core model: Intel Xeon E5-2670 0 bits: 64 type: MT MCP arch: Sandy Bridge family: 6 
           model-id: 2D (45) stepping: 7 microcode: 71A cache: L2: 20 MiB 
           flags: avx lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 83224 
           Speed: 3297 MHz min/max: 1200/3300 MHz Core speeds (MHz): 1: 3297 2: 3247 3: 3275 4: 2587 5: 2969 6: 3300 
           7: 2105 8: 3064 9: 1686 10: 3266 11: 3300 12: 3300 13: 3146 14: 3284 15: 3247 16: 1879 
           Vulnerabilities: Type: itlb_multihit status: KVM: VMX disabled 
           Type: l1tf mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable 
           Type: mds mitigation: Clear CPU buffers; SMT vulnerable 
           Type: meltdown mitigation: PTI 
           Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via prctl and seccomp 
           Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer sanitization 
           Type: spectre_v2 
           mitigation: Full generic retpoline, IBPB: conditional, IBRS_FW, STIBP: conditional, RSB filling 
           Type: srbds status: Not affected 
           Type: tsx_async_abort status: Not affected 
Graphics:  Device-1: Advanced Micro Devices [AMD/ATI] Ellesmere [Radeon RX 470/480/570/570X/580/580X/590] 
           vendor: Micro-Star MSI driver: amdgpu v: kernel bus-ID: 02:00.0 chip-ID: 1002:67df class-ID: 0300 
           Display: x11 server: X.Org 1.20.11 driver: loaded: amdgpu,ati unloaded: modesetting alternate: fbdev,vesa 
           display-ID: :0 screens: 1 
           Screen-1: 0 s-res: 2560x1440 s-dpi: 96 s-size: 677x381mm (26.7x15.0") s-diag: 777mm (30.6") 
           Monitor-1: DisplayPort-0 res: 2560x1440 hz: 60 dpi: 118 size: 553x311mm (21.8x12.2") diag: 634mm (25") 
           OpenGL: renderer: Radeon RX 570 Series (POLARIS10 DRM 3.40.0 5.10.36-2-MANJARO LLVM 11.1.0) 
           v: 4.6 Mesa 21.0.3 direct render: Yes 
Audio:     Device-1: Intel C600/X79 series High Definition Audio vendor: Micro-Star MSI driver: snd_hda_intel 
           v: kernel bus-ID: 00:1b.0 chip-ID: 8086:1d20 class-ID: 0403 
           Device-2: AMD Ellesmere HDMI Audio [Radeon RX 470/480 / 570/580/590] vendor: Micro-Star MSI 
           driver: snd_hda_intel v: kernel bus-ID: 02:00.1 chip-ID: 1002:aaf0 class-ID: 0403 
           Sound Server-1: ALSA v: k5.10.36-2-MANJARO running: yes 
           Sound Server-2: JACK v: 0.125.0 running: no 
           Sound Server-3: PulseAudio v: 14.2 running: yes 
           Sound Server-4: PipeWire v: 0.3.28 running: yes 
Network:   Device-1: Intel 82579V Gigabit Network vendor: Micro-Star MSI driver: e1000e v: kernel port: f040 
           bus-ID: 00:19.0 chip-ID: 8086:1503 class-ID: 0200 
           IF: eno1 state: down mac: <filter> 
           Device-2: Intel 82571EB/82571GB Gigabit Ethernet D0/D1 vendor: Hewlett-Packard NC360T Dual Port Server 
           driver: e1000e v: kernel port: e020 bus-ID: 01:00.0 chip-ID: 8086:105e class-ID: 0200 
           IF: enp1s0f0 state: down mac: <filter> 
           Device-3: Intel 82571EB/82571GB Gigabit Ethernet D0/D1 vendor: Hewlett-Packard NC360T Dual Port Server 
           driver: e1000e v: kernel port: e000 bus-ID: 01:00.1 chip-ID: 8086:105e class-ID: 0200 
           IF: enp1s0f1 state: up speed: 1000 Mbps duplex: full mac: <filter> 
Drives:    Local Storage: total: 1.76 TiB used: 358.27 GiB (19.9%) 
           SMART Message: Required tool smartctl not installed. Check --recommends 
           ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung model: SSD 960 EVO 500GB size: 465.76 GiB block-size: 
           physical: 512 B logical: 512 B speed: 31.6 Gb/s lanes: 4 rotation: SSD serial: <filter> rev: 3B7QCXE7 
           temp: 33.9 C scheme: GPT 
           ID-2: /dev/sda maj-min: 8:0 vendor: Plextor model: PX-128M6V size: 119.24 GiB block-size: physical: 512 B 
           logical: 512 B speed: 6.0 Gb/s rotation: SSD serial: <filter> rev: 1.01 
           ID-3: /dev/sdb maj-min: 8:16 vendor: Intel model: SSDSC2BF180A5L size: 167.68 GiB block-size: 
           physical: 512 B logical: 512 B speed: 6.0 Gb/s rotation: SSD serial: <filter> rev: LT6i scheme: MBR 
           ID-4: /dev/sdc maj-min: 8:32 type: USB vendor: A-Data model: ED600 size: 119.24 GiB block-size: 
           physical: 4096 B logical: 512 B serial: <filter> rev: 0204 
           ID-5: /dev/sdd maj-min: 8:48 type: USB vendor: Silicon Power model: N/A size: 931.51 GiB block-size: 
           physical: 512 B logical: 512 B serial: <filter> rev: 0509 scheme: MBR 
Partition: ID-1: / raw-size: 465.47 GiB size: 457.16 GiB (98.22%) used: 358.27 GiB (78.4%) fs: ext4 
           dev: /dev/nvme0n1p1 maj-min: 259:1 
           ID-2: /boot/efi raw-size: 301 MiB size: 300.4 MiB (99.80%) used: 280 KiB (0.1%) fs: vfat 
           dev: /dev/nvme0n1p2 maj-min: 259:2 
Swap:      Alert: No swap data was found. 
Sensors:   System Temperatures: cpu: 37.0 C mobo: N/A gpu: amdgpu temp: 39.0 C 
           Fan Speeds (RPM): N/A gpu: amdgpu fan: 904 
Info:      Processes: 381 Uptime: 2m wakeups: 3 Memory: 31.28 GiB used: 2.61 GiB (8.4%) Init: systemd v: 247 
           tool: systemctl Compilers: gcc: 10.2.0 clang: 11.1.0 Packages: pacman: 1562 lib: 438 flatpak: 0 
           Shell: Bash v: 5.1.8 running-in: gnome-terminal inxi: 3.3.04

Using lsusb -t check for Driver=uas for the SSD. If it is not uas, you do not get 6Gb/s rate.

/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M
    |__ Port 2: Dev 4, If 0, Class=Mass Storage, Driver=uas, 5000M

The same disk in Windows 10 make x2 transfers.

And another interesting thing is another SSD but inside connected to SATA the same writing speed ~90MB/s
WT* ?

Further help is beyond my abilities, I hope others can help you. Good luck!

ntfs is not a native linux filesystem and probably the cause of the sub-par writing speeds you’re observing.

Responding directly to the title of your topic

USB 3.0 SSD with ntfs

  1. USB3 sticks are not the same as SSD
  2. NTFS is proprietary Windows filesystem and the Linux access is a reverse engineered protocol provided in the package ntfs-3g
  3. You cannot expect the same performance as native Windows compared to Linux - simply impossible.
  4. USB 3 connected devices is depending on the port being USB3 and the quality of the cable.

Have fun - but don’t blame Linux - blame Microsoft.

big_writes helps, now I try find method to use this with nemo mount