Рейтинг:0

Параллельная запись NVMe

флаг sy

Я пытаюсь лучше понять, как можно оптимизировать запись в NVMe.

У меня есть процесс, который записывает большой объем данных на диск (~ 100 ГБ) за одно пакетное задание. Данные разбросаны по сотням файлов.

У меня есть несколько доступных дисков NVMe, и я буду записывать отдельные файлы параллельно в одном процессе с использованием нескольких потоков (~ 10).

В настоящее время все данные записываются на один диск NVMe. Мне интересно, можно ли добиться потенциального повышения производительности за счет параллельной записи данных на несколько дисков или одно устройство NVMe может обрабатывать параллельные записи самостоятельно?

Цените любой вклад

shodanshok avatar
флаг ca
Файлы записываются в несколько разных каталогов? Они сжимаемые?
R.Smith avatar
флаг sy
Файлы записываются в несколько каталогов и уже сжаты
Рейтинг:0
флаг br

Ну конечно NVMe спец. допускает что-то вроде очередей по 64 КБ, каждая из которых может содержать 64 КБ записей, поэтому сама спецификация допускает некоторые очень высокопроизводительные параллельные операции — независимо от того, поддерживает ли фактический диск столько, это другое дело, но, безусловно, они будут поддерживать сотни очередей и сотни записей в очереди. Все это поможет.

Тем не менее, инстинкт таков, что чем больше дисков, тем лучше, но это действительно зависит от того, насколько загружен PCIe / PCH - если есть много небольших записей, есть вероятность, что шина не полностью занята, поэтому может помочь размазывание по нескольким дискам. немного, но если он используется полностью, как вы, вероятно, увидите при больших последовательных операциях записи, то один диск может быть таким же быстрым, как несколько дисков.

Конечно, это все до того, как вы рассмотрите такие вещи, как RAID 1/10 или 0, и их влияние — в идеале вам нужно что-то подобное для устойчивости.

В конечном счете, вы должны проверить это, это правильный ответ, но это зависит от того, сколько дисков и сколько времени у вас есть на тестирование, но это единственный способ узнать по-настоящему.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.