Через гігабітний зв’язок, Teracopy робить 31 Мб / с, але Windows 8 робить це при ~ 109 МБ в секунду?


13

Перший смак мереж Gigabit у мене сьогодні розтоплюється мозок, між моїм робочим столом MacMini 2011 та Windows 8 Pro підключено через Cat.5e до Linksys WRT320N (спортивний dd-WRT).

Переконавшись, що швидкість лінії в обох системах показала 1 Гбіт / с, я перейшов до копіювання 2,4 Гб MP4 з Mini на робочий стіл Win 8 (обмін SMB). Хоча задоволений 30-34 Мб / с, який показав Teracopy (це було для мене належним кроком від 10 Мб / с), мені все ж було цікаво про цю величезну різницю у рекламованій та реальній швидкості.

Дві години Google змусив мене повірити, що існують й інші фактори, які призводять до меншої швидкості, SMB - один. Тому просто заради цього я iPerf'd обидві системи та здогадуюсь, що це показало - близько 875 Мбіт / с на обох системах!

Потім я натрапив на цю маленьку інформацію, після якої я вимкнув Teracopy і скопіював той самий файл через звичайний копір Windows 8. 109 Мб / с. Розтоплені мізки :)

Що саме викликає це? І чи можу я ввімкнути такі швидкості через Теракопію? Я справді копаю зайві функції, які має Teracopy, зараз їх точно пропустять: D


2
Перше, що спадає на думку, це: як ви скопіювали за допомогою теракопії? До / від листа диска? (який серіалізує речі і повільніше) або до шляху UNC?
Геннес

Я щойно поділився папками (клацніть правою кнопкою миші> спільний доступ> Поділитися цією папкою або іншим аналогом) на обох комп'ютерах. Я отримую доступ до мережевого комп'ютера, просто відкриваючи "Мережа" з лівої панелі в Провіднику та в OS X, вибравши ім'я мережевого комп'ютера з лівої панелі в Finder. Простіше кажучи, я отримую доступ до файлів Mac з Explorer у Win 8, копіюю їх за допомогою основної команди Ctrl + C і вставляю локально на робочий стіл ПК.
Gaurang

Які диски ви використовуєте? Два SSD? Ці номери Windows 8 мені здаються дивними.
Apache

Відповіді:


16

Через гігабітний зв’язок, Teracopy робить 31 Мб / с, але Windows 8 робить це при ~ 109 МБ в секунду?

Що саме викликає це? І чи можу я ввімкнути такі швидкості через Теракопію? Я справді копаю зайві функції, які має Teracopy, зараз їх точно пропустять: D

Два слова: перевірка та кеш

Технічне пояснення

Це загальна процедура копіювання файлу за допомогою Провідника Windows:

  1. Прочитайте фрагмент даних з вихідного диска в пам'ять
  2. Надіслати фрагмент через систему (и)
  3. Напишіть шматок до місця призначення
  4. Якщо цього ще не зроблено, поверніться до кроку 1

Це здається простим і коротким. За допомогою цього алгоритму передачі кожен байт файлу обробляється лише два рази: один читання, один запис.

Але крім того, Windows використовує пам'ять (як і сам диск) для кешування деяких даних. Тож замість того, щоб чекати, коли попередній фрагмент закінчить писати, а потім прочитати наступний фрагмент, можна прочитати новий шматок, поки він ще пишеться. Очевидно, що це не може затримати назавжди, але Windows може використовувати всю решту вільної пам'яті як тимчасовий буфер для зберігання більшості, якщо не всього файлу, який читається в пам'яті.

Ви можете бачити кешування, скопіювавши великий файл - або папку з великою кількістю файлів - з одного диска на інший, а потім відразу порівнявши два. Порівняння в цей момент буде набагато швидшим, ніж якщо ви це зробите пізніше, оскільки файли (файли) все ще зберігаються в пам'яті, тому насправді вони не читають їх з накопичувачів.

Оскільки пам’ять дуже велика, а швидкість читання, як правило, трохи швидша, ніж швидкість запису, кінцева швидкість передачі в кінцевому підсумку обмежується лише швидкістю запису на привідному диску.

Теракопія може зробити дві речі, які можуть уповільнити передачу файлів, які Explorer не робить:

  • Відмовтеся від кешу і читайте безпосередньо з диска

  • Переконайтесь, що адресат написано правильно

На відміну від Провідника, який перевіряє лише основні помилки під час передачі, Teracopy може фактично перевірити, чи були дані записані правильно на накопичувальний диск, щоб запобігти пошкодженню даних, що може статися через проблеми в носії передачі (мережа / кабель накопичувача / тощо). ) або сам диск (поганий сектор тощо). Це означає, що він повинен прочитати файл з пункту призначення, щоб порівняти його з оригіналом.

Залежно від використовуваного алгоритму та розміру файлу, перевірку можна оптимізувати якнайменше (але не менше) трьох операцій диска для кожного файлу / фрагменту файлу на відміну від двох провідника: прочитайте файл із джерела, напишіть файл до місця призначення та прочитати файл із пункту призначення.

Подивіться, що станеться при копіюванні файлу за допомогою Teracopy (за алгоритмом, оптимізованим HDD):

  1. Прочитайте фрагмент з джерела диска
  2. Хеш-фрагмент, прочитаний з джерела диска
  3. Надіслати фрагмент через систему (и)
  4. Запишіть його на привід призначення
  5. Очистити кеші
  6. Прочитайте шматочок назад з пункту призначення
  7. Хеш-шматок від місця призначення
  8. Порівняйте хеші
  9. Визначте наступний крок
    • Якщо хеші не відповідають, введіть помилку та запропонуйте користувачеві діяти
    • Якщо хеші збігаються і не закінчені, поверніться до кроку 1

Проблема полягає в тому, що якщо ви кешуєте файли під час передачі, порівняння стає марним, оскільки ви не читаєте фактичних даних на цільовому накопичувачі, ви зчитуєте кешовану копію в пам'яті з джерела. Тому для правильної перевірки потрібно очистити кеш. Це можна зробити після кожного читання і запису (що є додатковою операцією, яка б закінчилася незмінною кількістю файлів будь-якого значного розміру) або лише один раз після того, як весь файл буде передано.

Згідно з наведеним нижче скріншотом, TeraCopy здійснює перевірку після передачі файлів, а не протягом. Це означає, що він використовує цей алгоритм передачі, оптимізований CPU / RAM:

  1. Прочитайте фрагмент з джерела диска
  2. Надіслати фрагмент через систему (и)
  3. Запишіть його на привід призначення
  4. Якщо цього ще не зроблено, поверніться до кроку 1
  5. Копія закінчена, настільки чіткі кеші та перевірка
  6. Прочитайте фрагмент з джерела диска
  7. Хеш-шматок від місця призначення
  8. Прочитайте шматок із пункту призначення
  9. Хеш-шматок від місця призначення
  10. Порівняйте хеші
  11. Визначте наступний крок
    • Якщо хеші не відповідають, введіть помилку та запропонуйте користувачеві діяти
    • Якщо хеші збігаються і не закінчені, поверніться до кроку 6

Хоча цей алгоритм трохи менше напружує процесор і оперативну пам’ять, він також створює набагато більше навантаження на накопичувачі, тому що тепер кожен файл повинен бути оброблений чотири рази: прочитайте весь файл з джерела, запишіть його до місця призначення , потім знову прочитайте його з джерела та знову з пункту призначення.

(Якщо TeraCopy були оптимізовані для мережевих передач, то це могло б уникнути надсилання всього файлу вдруге для перевірки та надсилати лише хеші, які значно менші, але це, як видається, не так, і мережеві драйвери обробляються однаково як локальний диск, тому він фактично перечитує джерело.)

За замовчуванням TeraCopy не перевіряє і не використовує кеш. Якщо не перевірити, це пришвидшить передачу (або, точніше, не сповільнить її), а якщо не використовувати кеш, то сповільнить її.

Застосування

Щоб визначити конкретні результати швидкості, вам доведеться перевірити свої настройки, щоб побачити, чи змінили ви їх. Тоді ви можете спробувати приблизно визначити, яку швидкість ви отримали з різними налаштуваннями (пам’ятайте, що вони, швидше за все, взаємодіють, тому це не просто питання додавання чи віднімання).

З цього приводу давайте зробимо короткий розрахунок, використовуючи ваші числа:

  • Локальна передача файлів: 875 Мбіт / с (тобто швидкість приводу)
  • Швидкість мережі: 1Gbps = 119,21 MBps
  • Скопіюйте через Провідник Windows: 109 Мбіт / с
  • Скопіюйте через TeraCopy: 34 Мбіт / с

Відразу ж ми бачимо, що передача файлів Explorer майже збільшує вашу мережеву пропускну здатність. 1Gbps посилання дорівнює 1000000000 біт в секунду, що в бінарних одиниць в байтах , є 119MBps. Провізор працює на 109 Мбіт / с, а решта 10 Мбіт / с (що досить забавно було вашим попереднім максимумом :^Þ ) можна легко врахувати за рахунок накладних витрат, фонового навантаження та фрагментації.

(Оскільки швидкість передачі майже дорівнює швидкості мережі, ми можемо припустити, що передача файлів Провідника одностороння, і лише одна копія кожного файлу надсилається.) Провідник отримує 110 Мбіт / с за два доступу до файлу на файл.

Тепер про TeraCopy. Схоже, TeraCopy отримує майже річну третину швидкості Explorer.

Залежно від того, чи точно вказується діалог його переваг, чи ні алгоритм, який він використовує, TeraCopy фактично може надсилати весь вихідний файл двічі, щоб він міг перевірити копію. Відразу це скорочує пропускну здатність навпіл. Якщо кеш увімкнено, це занадто зменшує швидкість, оскільки йому доведеться чекати, коли закінчиться кожен запис, перш ніж він може надіслати новий шматок. У поєднанні з верифікацією це може збити її ще більше.

Швидкість передачі даних в 34 Мбіт / с видається розумною, якщо у вас увімкнено підтвердження та вимкнено кешування Якщо вимкнути перевірку та кеш-пам’ять, ви повинні отримати приблизно те саме, що і Explorer (ви все одно можете отримати трохи менше або навіть трохи більше, залежно від того, наскільки код передачі файлів, який використовує TeraCopy, від того, який використовує Explorer).

Якщо ви готові перенести майже 10 Гб, ви також можете спробувати змінити налаштування та повторно перенести передачу для кожної з чотирьох перестановок і записати швидкість, яку ви отримаєте (щоб бути безпечною, замовіть її так, щоб кеш був між пробіжками:) V+C+, V+C-, V-C+, V-C-.


Знімок екрана налаштувань TeraCopy з налаштуваннями за замовчуванням


1
На вашу думку, чи рекомендуєте ви використовувати SSD для включення (перевірки) "Використовувати кеш-запис системи", якщо шукаєте максимальну продуктивність?
Дядько Ірох

1

Я б підозрював, що це пов’язано з тим, що Windows 8 використовує SMB v. 3, і я сумніваюся, теракопія сумісна з SMB v.3 і дефолт повертається до SMB 2. Лише здогадка ...


0

Я не можу дати вам 100% відповідь на ваше питання, але можу додати більше, що може допомогти.
Моя причина для переходу на теракопію була пов’язана з тим, як Windows повинна "обчислити" все, перш ніж щось робити, і сам цей розрахунок іноді може заморозити весь процес. В інших публікаціях було підкреслено, що тип файлу, який копіюється, має значення в копії Windows, я не можу точно сказати в Teracopy, оскільки я не бачив, щоб це виводилося. Але мої власні спроби поки що залишили мені менше, ніж ви отримуєте в будь-якому випадку. Я просто копіюю загальні типи файлів, а не медіа (тобто фотографії / фільми).

Мої тести проходили від Seagate 3TB NAS з доступом до GB NIC в мережі 100% ГБ до системи ГБ. Кращий випадок, 14 Gbps. Перехід Windows від NAS до системного HD отримав 12,4 Гбіт / с і зайняв трохи більше часу. Ніщо не наближалося до ваших 30-34Mbps набагато менше, ніж 109Mb / s.

Частина цього, безумовно, пов'язана з контролем потоку NAS навіть у мережі ГБ. Я був би надзвичайно щасливий, якби міг отримати 34 Гб / с, ще щасливішим, якби я міг отримати 109 Гб / с. Якщо ви знайдете більш швидкий копір файлів, будь ласка, опублікуйте! :)


1
Я хотів би додати, що налаштування для використання кешу запису системи при використанні, як видається, суттєво зміниться в завершенні реального часу. Набагато швидше.
користувач1376156

Як ви отримуєте 14Gbps через мережу? Навіть SATA III не підтримує такі швидкості.
Хо березня

0

Це допомогло мені в цьому питанні між чіпами NIC материнської плати Intel.

TOE (TCP Offload Engine) був представлений в Windows в 2003 році, з жахливими результатами NIC-сетей Broadcom, які використовувались на більшості серверів у той час, спричиняючи пошкодження даних, якщо ви "завантажили" контрольну суму. Схоже, що постачальники NIC досі не мають права, і це не просто Broadcom. Завантаження мережі майже завжди повільніше, і, мабуть, також більше схильних до помилок, ніж це робиться все в програмному забезпеченні. Я б зайшов у налаштування вашого адаптера і відключив будь-яке апаратне завантаження будь-якого типу.


2
Якби це було причиною, то весь трафік мережі TCP буде повільним. Не лише мережа теракопій, так швидка копія провідника.
Геннес

0

Раніше у мене були однакові проблеми з повільними передачами через TeraCopy. Celeron J1800 з вбудованою ланкою картки Realtek Gigabit 8111C Realtek. Я отримував не більше 35-45 мегабайт в секунду. Досить засмучує!

Закінчився поганим водієм картки LAN.

Встановлено вікна з нуля з драйверами OEM. Я також зробив наступне:

У розділі Диспетчер пристроїв / картка Лан / Додаткові параметри / Відключити все, крім КОНТРОЛЮ ПОТОК.

У розділі "Особливості Windows" вимкнути віддалене диференціальне стиснення.

Зараз середня швидкість між 60-70 Мбіт / с

введіть тут опис зображення


-1

Я також зробив декілька тестів з програмою Teracopy 2.3 final та моєю Disnology Synology. Насправді процес копіювання занадто повільний. Я скопіював файли із середньою швидкістю близько 40 Мб / с.

Оригінальна програма копіювання файлів Windows 8 швидша, ніж Teracopy!

Зараз я намагаюся Ultracopier спробувати, мої поточні швидкості становлять приблизно 80 Мб / с, набагато швидше, ніж Teracopy. Мені подобається Teracopy, але я думаю, що у Teracopy є проблема з мережевою копією.

Оскільки я копіюю багато файлів з одного мережевого диска на інший, я повинен використовувати найшвидшу програму копіювання, яку я можу отримати, оскільки процес копіювання завжди занадто тривалий.


1
Я ось-ось збирався спробувати Ultracopier ... І я в Google шукав його, і у Вікі зазначається, що це шкідливе програмне забезпечення, замасковане під заміну файлу Windows Explorer ... ОБЕРЕЖНО! ПОДЕРЖАЙТЕ "Ultracopier - це зловмисне програмне забезпечення, яке маскується під інструмент для заміни функцій копіювання файлів Windows Explorer / File Explorer." en.wikipedia.org/wiki/Ultracopier

2
Ultracopier - це зловмисне програмне забезпечення - я не рекомендую його використовувати. ( en.wikipedia.org/wiki/Ultracopier )
Art Gertner

4
Якщо ви дійсно знайдете час, щоб прочитати статтю, пов’язану з цією вікі-сторінкою, це буде розкрито: "Щоб фінансувати це, я поставив майнер Bitcoin (який використовує графічний процесор на 100%) або версію без нього, але з невеликою рекламою в безкоштовні версії. " Але це дійсне питання щодо програмного забезпечення, яке чітко не вказує такого на своєму сайті завантаження.
Мокубай
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.