Qua kết nối gigabit, Teracopy có tốc độ 31MB / s, nhưng Windows 8 có tốc độ ~ 109 MB mỗi giây?


13

Hôm nay tôi đã có được cảm giác tan chảy đầu tiên về mạng Gigabit, giữa máy tính để bàn MacMini và Windows 8 Pro 2011 của tôi được kết nối qua Cat.5e với Linksys WRT320N (thể thao dd-WRT).

Sau khi chắc chắn rằng tốc độ đường truyền trên cả hai hệ thống hiển thị 1Gbps, tôi đã tiến hành sao chép MP4 2,4 GB từ máy tính để bàn sang máy tính để bàn Win 8 (chia sẻ SMB). Mặc dù hài lòng với 30-34 MB / giây mà Teracopy đang hiển thị (đó là một bước tiến phù hợp với tôi từ 10 MB / giây), tôi vẫn tò mò về sự khác biệt lớn này về tốc độ được quảng cáo và trong thế giới thực.

2 giờ Google đã cho tôi tin rằng có những yếu tố khác dẫn đến tốc độ thấp hơn, SMB là một. Vì vậy, chỉ vì lợi ích của nó, tôi iPerf cả hai hệ thống và đoán những gì đã hiển thị - khoảng 875mbps trên cả hai hệ thống!

Sau đó, tôi tình cờ phát hiện ra thông tin nhỏ này sau đó tôi tắt Teracopy và sao chép cùng một tệp thông qua máy photocopy thông thường của Windows 8. 109 MB / s. Não nóng chảy :)

Chính xác thì điều gì gây ra điều này? Và tôi có thể kích hoạt tốc độ như vậy thông qua Teracopy không? Tôi thực sự đào các tính năng bổ sung mà Teracopy có, chắc chắn sẽ bỏ lỡ chúng ngay bây giờ: D


2
Điều đầu tiên bạn nghĩ đến là: Làm thế nào bạn sao chép qua bản đồ? Đến / từ một ký tự ổ đĩa? (cái nào nối tiếp mọi thứ và chậm hơn) hoặc theo đường dẫn UNC?
Hennes

Tôi vừa chia sẻ các thư mục (Nhấp chuột phải> chia sẻ> Chia sẻ thư mục này hoặc tương đương) trên cả hai máy tính. Tôi truy cập vào máy tính được nối mạng bằng cách mở "Mạng" từ ngăn bên trái trong Explorer và trong OS X, bằng cách chọn tên của máy tính được nối mạng từ ngăn bên trái trong Finder. Nói một cách đơn giản, tôi truy cập các tệp của Mac từ Explorer trong Win 8, sao chép chúng bằng lệnh Ctrl + C cơ bản và dán cục bộ trên màn hình của PC.
Gaurang

Những gì bạn sử dụng ổ đĩa? Hai ổ SSD? Những con số Windows 8 đó trông thật kỳ lạ đối với tôi.
Apache

Câu trả lời:


16

Qua kết nối gigabit, Teracopy có tốc độ 31MB / s, nhưng Windows 8 có tốc độ ~ 109 MB mỗi giây?

Chính xác thì điều gì gây ra điều này? Và tôi có thể kích hoạt tốc độ như vậy thông qua Teracopy không? Tôi thực sự đào các tính năng bổ sung mà Teracopy có, chắc chắn sẽ bỏ lỡ chúng ngay bây giờ: D

Hai từ: xác minhbộ đệm

Giải thích kỹ thuật

Đây là quy trình chung để sao chép tệp bằng Windows Explorer:

  1. Đọc một đoạn dữ liệu từ ổ đĩa nguồn vào bộ nhớ
  2. Gửi chunk thông qua (các) hệ thống
  3. Viết đoạn mã vào ổ đĩa đích
  4. Nếu chưa xong, quay lại bước 1

Điều này có vẻ đơn giản và đủ ngắn. Với thuật toán chuyển này, mỗi byte của tệp chỉ được xử lý hai lần: một lần đọc, một lần ghi.

Nhưng ngoài ra, Windows sử dụng bộ nhớ (cũng như ổ đĩa) để lưu trữ một số dữ liệu. Vì vậy, thay vì chờ đoạn trước đó hoàn thành việc viết, và sau đó đọc đoạn tiếp theo, một đoạn mới có thể được đọc trong khi đoạn trước vẫn đang được viết. Rõ ràng điều này không thể giữ được mãi mãi, nhưng Windows có thể sử dụng tất cả bộ nhớ còn lại như một bộ đệm tạm thời để lưu trữ hầu hết, nếu không phải là tất cả các tệp đang được đọc trong bộ nhớ.

Bạn có thể thấy bộ nhớ đệm đang hoạt động bằng cách sao chép một tập tin lớn hoặc một thư mục chứa rất nhiều tập tin từ một ổ đĩa này sang ổ đĩa khác, sau đó so sánh ngay lập tức cả hai. Việc so sánh sẽ nhanh hơn nhiều vào thời điểm đó so với việc bạn thực hiện sau đó vì (các) tệp vẫn còn trong bộ nhớ, vì vậy nó không thực sự đọc chúng từ (các) ổ đĩa.

Vì bộ nhớ rất nhanh và tốc độ đọc có xu hướng nhanh hơn một chút so với tốc độ ghi, tốc độ truyền cuối cùng chỉ bị giới hạn bởi tốc độ ghi của ổ đĩa đích.

Teracopy có thể thực hiện hai điều có thể làm chậm quá trình truyền tệp mà Explorer không thực hiện:

  • Bỏ bộ nhớ cache và đọc trực tiếp từ ổ đĩa

  • Xác nhận rằng đích đã được viết chính xác

Không giống như Explorer chỉ kiểm tra các lỗi cơ bản trong quá trình truyền, Teracopy thực sự có thể xác minh rằng dữ liệu được ghi chính xác vào ổ đĩa đích để ngăn ngừa hỏng dữ liệu có thể xảy ra do sự cố trong phương tiện truyền tải (mạng / cáp ổ đĩa / v.v. ) hoặc chính ổ đĩa (bad sector, v.v.) Làm điều này có nghĩa là nó phải đọc tệp từ đích để so sánh nó với bản gốc.

Tùy thuộc vào thuật toán được sử dụng và kích thước của tệp, xác minh có thể được tối ưu hóa ở mức thấp (nhưng không ít hơn) ba thao tác ổ đĩa cho mỗi tệp / tệp dữ liệu trái ngược với hai của Explorer: đọc tệp từ nguồn, ghi tập tin đến đích và đọc tập tin từ đích.

Hãy xem điều gì xảy ra khi bạn sao chép một tệp bằng Teracopy (với thuật toán được tối ưu hóa cho ổ cứng):

  1. Đọc một đoạn từ ổ đĩa nguồn
  2. Hash băm đọc từ ổ đĩa nguồn
  3. Gửi chunk thông qua (các) hệ thống
  4. Viết nó vào ổ đĩa đích
  5. Xóa bộ nhớ cache
  6. Đọc đoạn mã trở lại từ ổ đĩa đích
  7. Băm chunk từ ổ đĩa đích
  8. So sánh băm
  9. Xác định bước tiếp theo
    • Nếu băm không khớp, đưa ra lỗi và nhắc người dùng hành động
    • Nếu băm khớp và không kết thúc, quay lại bước 1

Vấn đề là nếu bạn lưu trữ các tệp trong quá trình truyền, việc so sánh trở nên vô ích vì bạn không đọc dữ liệu thực tế trên ổ đĩa đích, bạn đang đọc bản sao được lưu trong bộ nhớ cache từ nguồn. Do đó, để xác minh đúng, bạn phải xóa bộ đệm. Điều này có thể được thực hiện sau mỗi lần đọc và ghi (đây là một thao tác bổ sung cuối cùng sẽ được thực hiện vô số lần đối với các tệp có kích thước đáng kể) hoặc chỉ một lần sau khi toàn bộ tệp được chuyển.

Theo ảnh chụp màn hình bên dưới, TeraCopy thực hiện xác minh sau khi các tệp được chuyển, không phải trong thời gian. Điều này có nghĩa là nó sử dụng thuật toán chuyển tối ưu hóa CPU / RAM này:

  1. Đọc một đoạn từ ổ đĩa nguồn
  2. Gửi chunk thông qua (các) hệ thống
  3. Viết nó vào ổ đĩa đích
  4. Nếu chưa xong, quay lại bước 1
  5. Sao chép xong, để xóa bộ nhớ cache và được xác minh
  6. Đọc một đoạn từ ổ đĩa nguồn
  7. Băm chunk từ ổ đĩa đích
  8. Đọc một đoạn từ ổ đĩa đích
  9. Băm chunk từ ổ đĩa đích
  10. So sánh băm
  11. Xác định bước tiếp theo
    • Nếu băm không khớp, đưa ra lỗi và nhắc người dùng hành động
    • Nếu băm khớp và không kết thúc, quay lại bước 6

Mặc dù thuật toán này làm giảm ít hơn một chút cho CPU và RAM, nhưng nó cũng gây ra sự căng thẳng hơn cho (các) ổ đĩa vì bây giờ mỗi tệp phải được xử lý bốn lần: đọc toàn bộ tệp từ nguồn, ghi vào đích , sau đó đọc lại từ nguồn và một lần nữa từ đích.

(Nếu TeraCopy được tối ưu hóa cho chuyển mạng, thì nó có thể tránh gửi toàn bộ tệp lần thứ hai để xác minh và chỉ gửi các giá trị băm nhỏ hơn nhiều, nhưng hiện tại không phải là trường hợp và trình điều khiển mạng được xử lý như nhau là ổ đĩa cục bộ, vì vậy nó thực sự đọc lại nguồn.)

Theo mặc định, TeraCopy không xác minh hoặc sử dụng bộ đệm. Không xác minh sẽ tăng tốc độ truyền lên (hoặc chính xác hơn, không làm chậm nó), trong khi không sử dụng bộ đệm sẽ làm chậm nó.

Ứng dụng

Để xác định kết quả tốc độ cụ thể của bạn, bạn sẽ phải kiểm tra cài đặt của mình để xem bạn đã thay đổi chúng chưa. Sau đó, bạn có thể thử tính gần đúng loại tốc độ bạn sẽ nhận được với các cài đặt khác nhau (lưu ý rằng chúng có thể sẽ tương tác, vì vậy việc thêm hoặc bớt) không phải là vấn đề đơn giản.

Điều đó nói rằng, hãy thực hiện một phép tính chữ thảo bằng cách sử dụng các số của bạn:

  • Truyền tệp cục bộ: 875Mbps (tức là tốc độ ổ đĩa)
  • Tốc độ mạng: 1Gbps = 119,21 MBps
  • Sao chép qua Windows Explorer: 109MBps
  • Sao chép qua TeraCopy: 34MBps

Ngay lập tức, chúng tôi thấy rằng việc truyền tệp của Explorer gần như tối đa hóa thông lượng mạng của bạn. Một 1Gbps liên kết là tương đương với 1000000000 bit mỗi giây, do đó đơn vị nhị phân của byte , là 119MBps. Explorer đang có tốc độ 109MBps và 10 MBps còn lại (đủ đáng ngạc nhiên là mức tối đa trước đó của bạn :^Þ) có thể dễ dàng được tính bằng chi phí, tải nền và phân mảnh.

(Vì tốc độ truyền gần bằng tốc độ mạng, chúng tôi có thể phỏng đoán rằng việc truyền tệp của Explorer là một chiều và chỉ một bản sao duy nhất của mỗi tệp được gửi.) Explorer nhận được 110MBps cho hai lần truy cập tệp cho mỗi tệp.

Bây giờ cho TeraCopy. Có vẻ như TeraCopy đang nhận được gần như một phần ba tốc độ của Explorer.

Tùy thuộc vào việc hộp thoại tùy chọn của nó có biểu thị chính xác thuật toán mà nó sử dụng hay không, thì TeraCopy thực sự có thể gửi toàn bộ tệp nguồn hai lần để nó có thể kiểm tra bản sao. Ngay lập tức, điều này cắt giảm thông lượng một nửa. Nếu bộ đệm được bật, thì điều đó cũng làm giảm tốc độ vì nó phải đợi cho mỗi lần ghi hoàn thành trước khi nó có thể gửi một đoạn mới. Khi kết hợp với xác minh, nó có thể hạ gục nó nhiều hơn.

Tốc độ truyền 34MBps của bạn có vẻ hợp lý nếu bạn đã xác minh và tắt bộ đệm. Nếu bạn tắt xác minh và lưu vào bộ đệm, bạn sẽ nhận được giống như Explorer (bạn vẫn có thể nhận được ít hơn hoặc thậm chí nhiều hơn một chút tùy thuộc vào mức độ khác nhau của mã chuyển tệp mà TeraCopy sử dụng là từ mà Explorer sử dụng).

Nếu bạn có tâm trạng chuyển gần 10 GB, thì bạn cũng có thể thử thay đổi cài đặt và thực hiện lại việc chuyển cho từng trong bốn hoán vị và ghi lại tốc độ bạn nhận được (để an toàn, hãy đặt hàng để bộ nhớ cache được tắt giữa các lần chạy V+C+, V+C-, V-C+, V-C-:).


Ảnh chụp màn hình hộp thoại tùy chọn TeraCopy với cài đặt mặc định


1
Theo ý kiến ​​của bạn, bạn có khuyến nghị, nếu sử dụng SSD để bật (kiểm tra) "Sử dụng bộ đệm ghi hệ thống" nếu một người đang tìm kiếm hiệu suất tối đa?
Chú Iroh

1

Tôi nghi ngờ nó có liên quan đến thực tế là Windows 8 sử dụng SMB v. 3 và tôi nghi ngờ teracopy tương thích với SMB v.3 và được mặc định trở lại SMB 2. Chỉ là một phỏng đoán ...


0

Tôi không thể cung cấp cho bạn câu trả lời 100% cho vấn đề của bạn nhưng tôi có thể bổ sung thêm có thể giúp ích.
Lý do tôi chuyển sang Teracopy là do cách Windows phải "tính toán" mọi thứ trước khi làm bất cứ điều gì và chính phép tính này đôi khi có thể đóng băng toàn bộ quá trình. Trong các bài đăng khác, loại tập tin được sao chép quan trọng trong bản sao Windows, tôi không thể nói chắc chắn trong Teracopy vì tôi chưa thấy điều đó được đưa lên. Nhưng những nỗ lực của riêng tôi cho đến nay đã khiến tôi mất ít hơn bạn trong bất kỳ sự kiện nào. Tôi chỉ sao chép các loại tệp Chung, không phải tệp phương tiện (ví dụ: ảnh / phim).

Các thử nghiệm của tôi đã đi từ một NAS Seagate 3TB với quyền truy cập GB GB trên mạng 100% GB đến hệ thống GB. Trường hợp tốt nhất, 14 Gbps. Windows chuyển từ NAS sang hệ thống HD có 12,4GBps và mất một chút thời gian để bắt đầu. Không có gì tiếp cận 30-34Mbps của bạn ít hơn bất cứ thứ gì như 109Mb / s.

Một phần của điều này chắc chắn là do kiểm soát lưu lượng của NAS ngay cả trên mạng GB. Tôi sẽ vô cùng hạnh phúc nếu tôi có thể nhận được 34 GB / giây, vẫn hạnh phúc hơn nếu tôi có thể nhận được 109 GB / giây. Nếu bạn tìm thấy một máy photocopy tập tin nhanh hơn xin vui lòng gửi! :)


1
Tôi muốn thêm rằng cài đặt sử dụng bộ đệm ghi hệ thống khi được sử dụng dường như tạo ra sự khác biệt đáng kể khi hoàn thành thời gian thực. Nhanh hơn nhiều.
dùng1376156

Làm thế nào bạn nhận được 14Gbps qua mạng? Ngay cả SATA III cũng không hỗ trợ tốc độ như vậy.
Tháng 3

0

Điều này đã giúp tôi với vấn đề này, giữa các chipset chipset bo mạch chủ Intel.

TOE (TCP Offload Engine) đã được giới thiệu cho Windows vào năm 2003, với kết quả khủng khiếp từ các Broadcom NIC được sử dụng trong hầu hết các máy chủ tại thời điểm đó gây ra hỏng dữ liệu nếu bạn "giảm tải" việc kiểm tra. Có vẻ như các nhà cung cấp NIC vẫn không có quyền và đó không chỉ là Broadcom. Việc giảm tải mạng hầu như luôn chậm hơn và rõ ràng cũng dễ bị lỗi hơn sau đó thực hiện tất cả trong phần mềm. Tôi sẽ đi trong cài đặt bộ điều hợp của bạn và vô hiệu hóa tất cả giảm tải phần cứng của bất kỳ loại nào.


2
Nếu đây là nguyên nhân thì tất cả lưu lượng truy cập mạng TCP sẽ bị chậm. Không chỉ mạng teracopies có một bản sao thám hiểm nhanh.
Hennes

0

Trước đây tôi có vấn đề giống hệt với chuyển chậm qua TeraCopy. Celeron J1800 với thẻ lan tích hợp Realtek Gigabit 8111C. Tôi đã nhận được không quá 35-45 megabyte mỗi giây. Khá bực bội!

Kết thúc là một trình điều khiển thẻ lan xấu.

Cài đặt windows từ đầu với trình điều khiển OEM. Tôi cũng đã làm như sau:

Trong Trình quản lý thiết bị / Thẻ Lan / Cài đặt nâng cao / Tắt mọi thứ trừ FLOW CONTROL.

Trong Tính năng của Windows, Tắt tính năng nén vi sai từ xa.

Bây giờ tốc độ trung bình là từ 60-70 Mbps

nhập mô tả hình ảnh ở đây


-1

Tôi cũng đã thực hiện một số thử nghiệm với Teracopy 2.3 Final và Synology Diskstation của tôi. Trong thực tế quá trình sao chép quá chậm. Tôi đã sao chép các tệp với tốc độ trung bình khoảng 40 MB / s.

Chương trình sao chép tệp Windows 8 ban đầu nhanh hơn Teracopy!

Bây giờ, tôi hiện đang dùng thử Ultracopier, tốc độ hiện tại của tôi vào khoảng 80 MB / giây, nhanh hơn nhiều so với Teracopy. Tôi thích Teracopy, nhưng tôi nghĩ Teracopy có vấn đề về sao chép mạng.

Vì tôi đang sao chép nhiều tệp từ ổ đĩa mạng này sang ổ đĩa khác nên tôi phải sử dụng chương trình sao chép nhanh nhất tôi có thể nhận được, vì quá trình sao chép luôn quá dài.


1
Tôi vừa mới dùng thử Ultracopier ... Và tôi đã tìm kiếm trên google và wiki nói rằng đó là phần mềm độc hại được ngụy trang để thay thế cho tệp windows explorer ... THẬN TRỌNG! HÃY THỬ! "Ultracopier là phần mềm độc hại ngụy trang thành công cụ để thay thế chức năng sao chép tệp của Windows Explorer / File Explorer." vi.wikipedia.org/wiki/Ultracopier

2
Ultracopier là một phần mềm độc hại - Tôi không khuyên bạn nên sử dụng nó. ( en.wikipedia.org/wiki/Ultracopier )
Nghệ thuật Gertner

4
Nếu bạn thực sự dành thời gian để đọc bài viết được liên kết bởi trang wiki đó thì nó được tiết lộ: "Để tài trợ cho nó, tôi đã đặt một công cụ khai thác Bitcoin (sử dụng GPU ở mức 100%), hoặc phiên bản không có nó nhưng chỉ có một quảng cáo nhỏ các phiên bản miễn phí. " Nhưng đó là một điểm hợp lệ về phần mềm không nêu rõ như vậy trên trang tải xuống của nó.
Mokubai
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.