История изменений
Исправление kirill_rrr, (текущая версия) :
Но два независимых диска дадут х2 ускорение
Каким образом? Поток сначала запросит файлик с одного диска, подождёт, запросит файлик с другого. Тот же самый чистый и незамутнённый 1х против ~1,5х.
А если там полный трешак по 100 потоков на диск, так тут вообще без разницы как их рассаживать. Важнее будет твикинг шедулера потому что любые очереди полопаются нахрен.
когда ты зачем-то читаешь последовательно один единственный файл
Почему один единственный? Почему именно читаешь? Если средняя операция над одним файлом не менее 2 блоков мозайки (например целых нереальные 32Кб), тогда ускоряется что угодно и в любых сценариях. А если меньше 1 блока, тогда это будет работать ровно так же, как ты предлагал. Проблема только если размер между 1 и 2 блоков, но каковы шансы?
Хотя опять же, какая проблема? Если диски свободны, тогда время будет примерно то же, просто оба дёграть вместо одного. А если там трешак в 100 потоков на диск, тогда опять же без разницы - что 1 диск, что 2 диска, между чтением 1 и 2-ого блоков один хрен кто нибудь напихает десяток операций и без разницы тот же это диск или другой.
Исходная версия kirill_rrr, :
Но два независимых диска дадут х2 ускорение
Каким образом? Поток сначала запросит файлик с одного диска, подождёт, запросит файлик с другого. Тот же самый чистый и незамутнённый 1х против ~1,5х.
А если там полный трешак по 100 потоков на диск, так тут вообще без разницы как их рассаживать. Важнее будет твикинг шедулера потому что любые очереди полопаются нахрен.
когда ты зачем-то читаешь последовательно один единственный файл
Почему один единственный? Почему именно читаешь? Если средняя операция над одним файлом не менее 2 блоков мозайки (например целых нереальные 32Кб), тогда ускоряется что угодно и в любых сценариях. А если меньше 1 блока, тогда это будет работать ровно так же, как ты предлагал. Проблема только если размер между 1 и 2 блоков, но каковы шансы?