|
Как ограничить процесс по жору диска? (аналог ionice)
|
|||
---|---|---|---|
#18+
Добрый день. Есть процесс в ОС. Как ограничить потребление io этого процесса с помощью ОС ? Очень надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2018, 13:04 |
|
Как ограничить процесс по жору диска? (аналог ionice)
|
|||
---|---|---|---|
#18+
"Снаружи" - только понизив ему приоритет процессора. "Изнутри" - есть API. Что-то вроде SetProcessPriorityClass, погугли. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2018, 13:07 |
|
Как ограничить процесс по жору диска? (аналог ionice)
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakovпонизив ему приоритет процессора. Думаешь поможет если тормоза из-за диска? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2018, 13:16 |
|
Как ограничить процесс по жору диска? (аналог ionice)
|
|||
---|---|---|---|
#18+
Dima TДумаешь поможет если тормоза из-за диска? Приоритет В/В привязан к процессорному по какой-то хитрой формуле. Я как раз эту тему гуглил на прошлой неделе. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2018, 13:27 |
|
Как ограничить процесс по жору диска? (аналог ionice)
|
|||
---|---|---|---|
#18+
Да даже по логике, убирая процессор (в сравнение с другими процессами), мы в любом случае и генерацию "требований" на ввод-вывод понизим. А если классический HDD, то пока головка двигается.... тут никакие приоритеты не помогут. Пока головка до конца не дойдет, хоть убейся ап стенку, другой процесс обслужить не возможно. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2018, 14:04 |
|
Как ограничить процесс по жору диска? (аналог ionice)
|
|||
---|---|---|---|
#18+
Leonid KudryavtsevДа даже по логике, убирая процессор (в сравнение с другими процессами), мы в любом случае и генерацию "требований" на ввод-вывод понизим. Ядер нынче много поэтому не факт что пониженный перестанет выполняться. Во-вторых, как понимаю, проблема в том что обработка запросов в/в идет последовательно, там уже нет приоритетов, т.е. пока не выполнятся запросы от "пониженного" - запросы остальных ждут, соответственно потоки ждут и проц не занимают, поэтому на проце запускается "пониженный" и генерит очередную порцию запросов в/в и т.д. Версия 21654944 с хитрой формулой убедительнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2018, 14:55 |
|
Как ограничить процесс по жору диска? (аналог ionice)
|
|||
---|---|---|---|
#18+
Dima T.... Во-вторых, как понимаю, проблема в том что обработка запросов в/в идет последовательно, там уже нет приоритетов, т.е. пока не выполнятся запросы от "пониженного" - запросы остальных ждут, соответственно потоки ждут и проц не занимают, поэтому на проце запускается "пониженный" и генерит очередную порцию запросов в/в и т.д. ... Нет, не правильно. Даже на уровне железа, жесткий диск может переставить запросы, если решит, что это даст повышение производительности (алгоритмы типа Элеватор Сеек от Новела) https://en.wikipedia.org/wiki/Native_Command_Queuing Только, это не поможет. AFAIK Проблема с двумя потоками, активно обращающимися к диску, может вызываться тем, что они резко начнут каждый дергать головку на свою дорожку (к своим файлам).... соответственно скорость может упасть не в два раза, а на порядки. Тут или очень большой кэшь с предвыборкой (или приложение должно читать/писать большими блоками), или SAME (поставить 40 шпинделей, распаралелят) или SSD. Для обычного HDD, любые приоритеты будут "мертвому припарка". Поэтому, IMHO & AFAIK, их и не делают Смысла в приоритетах нет. Или не давать потоку вообще трогать головку, или, в любом случае (даже если читается/пишется 1 байт но с плохой дорожки/целиндра), производительность упададет ниже плинтуса. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2018, 16:11 |
|
|
start [/forum/topic.php?fid=26&fpage=19&tid=1492649]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
24ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
others: | 229ms |
total: | 341ms |
0 / 0 |