LINUX.ORG.RU

оптимизировать чтение одновременно с нескольких мест одного носителя


0

1

хай всем

такой вопрос
когда одна софтина одновременно считывает с нескольких больших файлов, слышно характерное дырчание (головки прыгают туда сюда, считывая небольшое кол-во информации). можно ли както увеличить кол-во информации, прекешируемое за один раз, чтоб веник не дырчал и соответственно скорость увеличилась (путь допустим считывает 32мб и затем уже прыгает в другое место). ? можно ли такое сделать только для одной софтины? (я так понимаю для всей системы это будет не оптимально). или решаемо только переписыванием кода?


Ответ на: комментарий от anonymous

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

MahMahoritos ★★★
()
Ответ на: комментарий от MahMahoritos

ncq тут не поможет. у меня включен ncq, тем не менее веник тарахтит как ведро, когда копирую два одновременно файла в /dev/null. а если сразу десять файлов?

ioan
() автор топика
Ответ на: комментарий от devl547

а если файлы на вход подаются всё время разные? в общем я пошевелил мыслёй и стало ясно что это только вручную можно организовать.

ioan
() автор топика
Ответ на: комментарий от ioan

>и стало ясно что это только вручную можно организовать.

Не обязательно. Ядро [теоретически] может упреждающе читать большие блоки.

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

ну мне надо два момента - упреждающее чтение, и второй - это приоритет чтения перед записью.

ioan
() автор топика
Ответ на: комментарий от ioan

>упреждающее чтение, и второй - это приоритет чтения перед записью.

readahead + настройка i/o шедулера

devl547 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.