24

Мой жесткий диск медленно 5400 об / мин, и при работе с файлами размером 10 ГБ невозможно использовать компьютер, пока этот большой файл не закончит воссоздание новой копии / муксинга / записи / и т.д. зависит от процесса, дело в том, что он съедает всю скорость жесткого диска, и никакая другая программа не может быть использована во время этого процесса.

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

3 ответа3

13

К сожалению, вы не можете этого сделать. Аппаратное обеспечение абстрагируется от приложений и даже частей ОС. По сути, приложение говорит "записать это на диск", а ОС обрабатывает его. Приложение не обрабатывает, как и даже когда оно написано. Все это обрабатывается на уровне драйвера и ядра, и реального способа изменить это не существует.

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

Лучшим вариантом было бы приобрести другой диск и выполнять свою работу на нем, оставив свой первый диск для Интернета, MP3 и т.д.

PS Вы не упомянули, сколько у вас оперативной памяти. Обмен может быть фактором медленной скорости. В зависимости от того, сколько у вас оперативной памяти, добавление большего количества только поможет.

9

Процесс Лассо позволяет расставить приоритеты ввода / вывода. Из их FAQ:

Новое в версии 4.1 (бета-версия 4.09), Process Lasso имеет явные текущие и стандартные настройки приоритета ввода / вывода, доступные тем, кто в них нуждается. Это относится только к NT6+ (Vista, Win7, ...).

ОДНАКО, приоритеты ввода / вывода в Vista основаны на приоритете потока, выполняющего ввод / вывод, который зависит от класса приоритета процесса, выполняющего ввод / вывод. На самом деле приложения могут использовать только два уровня приоритета: нормальный и очень низкий. Хотя технически существует 5, только эти два реализуются или могут использоваться процессами.

Поэтому корректировка приоритетов потока будет распространяться на ввод / вывод этого потока. Таким образом, Process Lasso уже устанавливает приоритеты ввода / вывода. Microsoft рекомендует приложениям корректировать свой приоритет ввода-вывода, устанавливая приоритет вызывающего потока (напрямую или путем настройки базового класса приоритета процесса).

См. Также статью о приоритезации ввода / вывода от Microsoft.

1

То, что я делаю, когда у меня есть процесс, который продолжает поглощать весь мой дисковый ввод-вывод в Windows, вызывает Process Explorer и приостанавливает процесс, нарушающий работу. После того, как я закончу свое дело и готов немного подождать, я возобновляю его. Это определенно не самый продуктивный способ сделать это, так как это полный или нулевой способ управления дисковым вводом / выводом, и вашему процессу придется ждать, пока вы используете компьютер, но пока что я не нашел лучшей альтернативы.

С другой стороны, если вы можете выполнять свой процесс в Cygwin, вы можете установить pv на свой компьютер и использовать его в качестве первого или последнего шага с опцией (я думаю, что это -r) для регулирования скорости вывода pv.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .