Tốc độ ghi NTFS rất chậm (<15MB / s) trên Ubuntu


18

Khi sao chép các tệp lớn hoặc kiểm tra writepeed bằng dd, tốc độ ghi tối đa tôi có thể nhận được là khoảng 12-15 MB / s trên các ổ đĩa sử dụng hệ thống tệp NTFS. Tôi đã thử nghiệm nhiều ổ đĩa (tất cả được kết nối bằng SATA), tất cả đều có tốc độ ghi 100MB / s + trên Windows hoặc khi được định dạng bằng ext4, vì vậy đó không phải là vấn đề căn chỉnh hoặc ổ đĩa.

topcho thấy việc sử dụng cpu cao cho mount.ntfsquá trình.

Bộ xử lý lõi kép AMD (2.2 GHz)
Phiên bản hạt nhân: Phiên bản 3.5.0-23-generic
Ubuntu 12.04
ntfs-3g: cả hai 2012.1.15AR.1(phiên bản mặc định của Ubuntu) và2013.1.13AR.2

Làm thế nào tôi có thể sửa lỗi writepeed?


Bạn đã thử kiểm tra dd với quyền truy cập ổ đĩa thô (trên ổ đĩa hoặc phân vùng, không thành vấn đề)? Lưu ý rằng kiểm tra theo cách đó sẽ phá hủy hệ thống tập tin và sẽ mất bất kỳ dữ liệu nào trên đó. Nó sẽ bỏ qua các trình điều khiển NTFS hoàn toàn.
Bob

Yep tôi vừa làm, kết quả là 149MB/s.
Zulakis

Vì tò mò tôi phải hỏi liệu ổ đĩa này có phải là một trong những ổ đĩa 4k đó không và nếu vậy thì hệ thống tập tin của bạn có thể không được sắp xếp bằng cách nào đó?!
Sáp

4
Tôi tin rằng phiên bản miễn phí của NTFS-3G bị tê liệt do đó nó sử dụng ghi 4 KiB mà không có bộ nhớ đệm, gây ra hiệu suất ghi cực kỳ chậm trên ổ SSD và ổ USB. Công ty đằng sau trình điều khiển đề nghị mua phiên bản thương mại để có hiệu suất tốt hơn. Rõ ràng không ai quan tâm đủ để thực sự sửa chữa (và nếu cần, rẽ nhánh) phiên bản nguồn mở vì vấn đề này đã tồn tại gần một thập kỷ, kể từ khi NTFS-3G được phát hành lần đầu tiên.
Tronic

1
Với cùng một máy tính xách tay Ubuntu 2015.04, tôi đã định dạng thành NTFS một ổ cứng ngoài 320 GB và một thanh USB 32 GB. Sao chép 2GB hình ảnh sang bức ảnh đầu tiên được thực hiện mãi mãi (ước tính còn lại 6 giờ sau 30 phút), nhưng đến bức ảnh thứ hai (thẻ nhớ USB) chỉ mất một hoặc hai phút. Tôi đã không thay đổi bất kỳ cài đặt giữa hai.
Nicolas Raoul

Câu trả lời:


18

Một bài viết trước đã đi đúng hướng với tài liệu tham khảo được cung cấp:

có lẽ kiểm tra ở đây để biết ý tưởng về những gì có thể gây ra nó. http://www.tuxera.com/community/ntfs-3g-faq/#slow

Câu hỏi ban đầu đề cập đến vấn đề chuyển tập tin lớn. Theo kinh nghiệm của tôi với việc sao chép tệp phương tiện hoặc thực hiện sao lưu, tùy chọn chính trong Câu hỏi thường gặp ở trên là:

Giải pháp thay thế: sử dụng tùy chọn gắn kết, big big_writes, thường sử dụng CPU, miễn là phần mềm yêu cầu ghi hỗ trợ các khối lớn.

Chỉ cần thêm tùy chọn big_writes, vd

sudo mount -o big_writes /media/<mount_dir> /dev/<device>

Linux Linux của tôi với CPU thông số kỹ thuật thấp hiện quản lý tệp lớn NTFS ghi nhanh hơn khoảng ba lần. Nó được cải thiện từ ~ 17MB / s lên 50MB / s +. Thậm chí nhìn thấy nó nhìn trộm với tốc độ khoảng 90 MB / giây trong iotop, có lẽ gần khả năng ổ đĩa ngoài (ổ cứng USB3 2,5 ").

Từ trang người dùng NTFS-3G:

 big_writes
              This option prevents fuse from splitting write buffers  into  4K
              chunks,  enabling  big  write buffers to be transferred from the
              application in a single step (up to some system limit, generally
              128K bytes).

Ghi chú kết thúc:

  • tùy chọn big_writes có thể sẽ không giúp điểm chuẩn ghi ngẫu nhiên 4K ;-)
  • Trong khi tuxera dường như đang bảo lưu trình điều khiển NTFS chuyên nghiệp cho các đối tác hệ thống nhúng, Paragon cung cấp một trình điều khiển sử dụng cá nhân miễn phí thay thế cho trình điều khiển sử dụng cá nhân có tên NTFS & HFS cho Linux 9.0 Express và phiên bản chuyên nghiệp. Tuy nhiên, tôi không bảo đảm cho sản phẩm này và khi tôi đã thử phiên bản trước (v8.5), tôi không thể làm cho nó hoạt động với phiên bản Linux Kernel của mình tại thời điểm đó.

tùy chọn big_writes làm cho đĩa của tôi tăng từ 300kb / s lên 35mb / s! Cảm ơn!
JosFabre

10 nhân vật đã tạo nên một thế giới khác biệt, cảm ơn bạn rất nhiều!
João Miguel Brandão

big_writesđã bị từ chối vào năm 2016, tuy nhiên, 3 năm sau, một số distro vẫn đang sử dụng một phiên bản libfuse thậm chí cũ hơn.
Dmitry Grigoryev

2

có lẽ kiểm tra ở đây để biết ý tưởng về những gì có thể gây ra nó. http://www.tuxera.com/community/ntfs-3g-faq/#slow

Điều này nghe có vẻ giống như 'ngày xưa' khi tệp io không sử dụng DMA theo mặc định. Ngày nay không có khả năng nhưng BIOS có sử dụng mô phỏng IDE cho ổ đĩa SATA không? Bởi vì nếu nó đang mô phỏng IDE thì nó cũng có thể đang mô phỏng chế độ không phải DMA.

Một tiềm năng chậm khác là nếu nén tệp ntfs. Là nén được kích hoạt trên thư mục bạn đang viết? Nếu có, điều đó sẽ làm cho bất kỳ tệp mới nào trong thư mục đó cũng được nén.


Làm thế nào tôi có thể kiểm tra nếu nó đang sử dụng DMA? Ngoài ra, tôi đã thử tất cả các đề xuất trên trang.
Zulakis

Uhm, từ những gì tôi đã đọc, DMA chỉ liên quan đến các ổ đĩa IDE? Tôi chỉ sử dụng ổ đĩa SATA.
Zulakis

Theo en.wikipedia.org/wiki/Serial_ATA#Transport_layer có vẻ như DMA là lựa chọn duy nhất cho SATA. Hãy tìm hiểu xem bios của anh ấy có đang sử dụng mô phỏng ide không
BeowulfNode42

0

Đây là một chủ đề cũ, nhưng đối với những người đang tìm kiếm một giải pháp cho cùng một vấn đề: bạn có cpuspeed hoạt động không? ntfs-3g bị CPU đói và trong trường hợp của tôi, cpuspeed đã phát hiện nhầm tải thấp cho các quy trình có nhiều IO chờ đợi, cuối cùng điều tiết xuống lõi và bỏ đói trình điều khiển.

Hãy thử vô hiệu hóa cpuspeed (nếu ví dụ: nó đang chạy như một dịch vụ) và kiểm tra lại.


Làm cách nào để xác định rằng cpuspeed đang hoạt động? Đó là một daemon hay một thiết lập?
Daniel

0

big_writeskhông được chấp nhận vào năm 2016, hành vi tương ứng luôn được bật khi sử dụng libfusephiên bản 3.0.0 trở lên. Trên hệ thống Linux hiện đại, hiệu năng NTFS kém thường có nghĩa là:

  • đĩa bị phân mảnh
  • Nén đĩa NTFS được kích hoạt
  • tùy chọn gắn kết không đầy đủ như syncđược sử dụng

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.