Мені потрібні швидкості запису даних у розмірі ~ 1 ГБ / сек, підтримуваних ~ 1 годину. Дані надходять через цей каркас PCIe x4 . Мені потрібно передавати повну пропускну здатність на диск.
Я не маю досвіду роботи з RAID, але, як я найкраще можу сказати, відповідь RAID 0 з якомога більше високими RPM-дисками. Я також вважаю, що дискретні RAID-контролери набагато швидші та надійніші, ніж будь-які вбудовані материнські плати.
Задля конкретної вихідної точки для конкретних відповідей, я спочатку припускаю, що наступне обладнання буде хорошою системою для цього завдання:
- RAID-контролер: LSI MegaRAID 9280-16i4e
- Жорсткі диски: 11x Western Digital Black Caviar 2 TB SATA III 7200 RPM 64 Мб
- Кабелі: 3ware CBL-SFF8087OCF-10M SFF-8087 Serial ATA Breakout Cable
- Материнська плата: Gigabyte GA-Z77X-UD3H LGA 1155 Intel Z77
- Блок живлення: Silverstone Strider Gold Evolution SST-ST1200-G 1200W v2.3 80 PLUS GOLD
- Корпус: Корпус Rosewill RSV-L4411 4U 12 відсіків гарячої заміни
Моє питання: як досягти максимальної стійкої продуктивності послідовного запису на диск?
Хороша відповідь стосуватиметься наступного:
- Які функції / характеристики потрібно шукати в контролері RAID та на жорсткому диску для найшвидших послідовних записів?
- Чи буде швидкість запису незалежною від процесора? (IE, як я можу забезпечити використання DMA?) Чи існує спосіб, щоб шлях даних навіть обійшов ОЗУ? Чи має значення квадратична та двоканальна ОЗУ?
- Чи є якісь вузькі місця, на які слід звернути увагу на материнській платі, тобто мости північ / південь? Якщо так, то як би я виявив / уникнув такої проблеми?
- Чи є у послідовному послідовному записі релевантні кеші (на контролері, жорсткому диску, процесорі тощо)?
- Як я можу забезпечити адекватність блоку живлення для всіх цих накопичувачів? Я розумію, що, можливо, доведеться щось непокоїти з приводу розтягування амперажу на рейках? Чи виявляться тут недоліки як проблеми з продуктивністю / випадкові збої чи це просто явно спрацює / вийде з ладу?
- Те саме питання, що і вище, щодо охолодження.
- Чи не буде переваги використання зовнішнього корпусу накопичувача? Чи нав'язує підключення до них вузьке місце?
- Які налаштування BIOS важливі для цієї програми? AHCI тощо?
- Яка файлова система найкраща? Драйвери для камери / кадрування - це все Windows, тому я застряг у win7. Я припускаю, що 64 проти 32 біт покращить пропускну здатність?
- Яку настройку я повинен очікувати, щоб зробити?
Попередня версія цього питання була видалена за те , що «занадто широкі»:
"Є або занадто багато можливих відповідей, або хороших відповідей буде занадто довгим для цього формату. Будь ласка, додайте деталі, щоб звузити набір відповідей або виділити питання, на яке можна відповісти в декількох абзацах."
Але моє запитання є дуже конкретним, загальним інтересом, і я надав деталі, які дозволяють ефективно відповісти в одному абзаці, а не "цілій книзі". Усі мої детальні запитання просто гарантують, що відповіді є вичерпними щодо потенційних вузьких місць, з якими хтось повинен хвилюватися у цій одній проблемі: швидко триває послідовне записування. Нікому не було б корисно розбивати це питання на 32 окремі питання, як запропонував користувач 50-3 . Ось приклад відповіді, який показує форму того, що я очікую (я не маю уявлення, чи фактична інформація правильна, це найкраща здогадка):
- RAID 0 з високими RPM-дисками - це справді спосіб досягти найшвидшого постійного послідовного запису (якщо припустимо, що ви використовуєте режим "потоку" кадрувальника кадру). SSD-диски для цього не гарні, оскільки вони різко сповільнюють час запису з використанням завдяки обробці, необхідній для "нівелювання" (запобігаючи використанню будь-якого одного місця більше, ніж інші).
- Щоб підтримувати 1 Гб / сек безстроково, вам потрібно> 3 7200RPM 6 Гбіт / сек SATA-накопичувачі (6 Гбіт / сек * 1/8 ГБ / Гб = .75 ГБ / сек / диск без пробілу). Більше накопичувачів лінійно покращить пропускну здатність, але наситить ширину даних вашої шини (32 або 64).
- SATA - найвигідніша технологія жорсткого диска, SAS не має помітних переваг для швидких послідовних записів. SAS краще шукати час до випадкових локацій та надійності. Більш швидкий RPM в SAS збільшує послідовну швидкість запису, але протидіє меншій щільності / ємності.
- Будь-які пристойні драйвери для захоплення кадрів / RAID-карт використовують DMA (те, про що ви згадуєте), тому процесор не має значення. Шлях даних завжди буде включати системну пам'ять. Запис на диск буде набагато повільніше, ніж ваша ОЗУ, тому нічого екзотичного вам не потрібно (будь-який DDR3 чудово). Обсяг оперативної пам’яті (і розмір кеш-пам'яті на контролері, жорсткому диску, процесорі) не має значення, оскільки буфери швидко заповнюються під час постійних записів.
- Міст на північ та південь на будь-якій материнській платі PCIe 2.0 не буде вузькими місцями. Все, що вам потрібно, - це дискретний RAID-контролер> = PCIe 2.0, який має достатньо з'єднань SATA для ваших накопичувачів. Зовнішні підключення до корпусу - це вузьке місце лише в тому випадку, якщо використовуються розширювачі, які спричиняють спільну пропускну здатність накопичувачів. Ви хочете, щоб картка з більшою смугою PCIe, ніж 4 на захопленні кадру, щоб шина PCIe не була вузьким місцем. 9280 буде добре, але це багато зайвого для вашої мети; 9240 8i був би меншим, ніж удвічі меншим, і адекватним. Контролери LSI є одними з найдорожчих, але, як правило, швидше / надійніше / менше клопоту під час відновлення помилок, ніж більш дешеві марки Highpoint / Areca.
- Вам потрібен блок живлення з достатньою потужністю для всіх ваших приводів і контролер (9280 використовує 15 Вт, а кожен WD використовує 10 Вт). Кожен накопичувач має піковий розрив струмом ~ 1А і вам потрібно обмежити кількість у кожній схемі ("рейці") блоку живлення. 1200G має одну рейку зі 100A, тому у вас не буде проблем. Перевищення покажеться як випадкові жорсткі збої (можливо, пошкодження накопичувачів та інших компонентів), однакові для перегрівів.
- Охолодження, вбудоване у корпус, виконаний із 12 відсіками гарячої заміни, має бути адекватним для майже постійних навантажень непослідовних зчитувань, які виробляють більше тепла, ніж ваш послідовний запис. Щоб упевнитись, що вам не потрібно додаткове охолодження, слідкуйте за темп (google HDDTemp) після багатьох хвилин тривалої записи.
- AHCI - єдине налаштування BIOS, що стосується швидких послідовних записів (увімкніть також SMART). Перед встановленням Windows встановіть обоє .
- Файлова система NTFS для Windows буде чудово (альтернативи все одно немає).
- У вас буде краща продуктивність послідовного запису з програмою win64 проти win32, оскільки пропускна здатність DMA до рейдового контролера буде вдвічі більшою.
- Вам не потрібно було робити жодної настройки; стандартний розмір блоку тощо, встановлений вашим рейдовим контролером, повинен бути адекватним Більші блоки будуть швидшими, але більш чутливими до корупції та непотрібності.
Якщо ви все ще вважаєте це питання "занадто широким", будь ласка, вкажіть, чому саме та запропонуйте, як його можна звузити, при цьому все ще надайте ґрунтовну відповідь людям, зацікавленим у досягненні максимальної стійкої послідовності запису. Це питання належить на Superuser більше ніж Serverfault, оскільки воно не стосується корпоративних ІТ.