Регулирование загрузки процессора

Dzen

Новичок
Регулирование загрузки процессора

А можно ли каким-то образом жестко задать загрузку на процессор, копал конфиги ничего не нашел,
может быть увеличение памяти поможет или нет?
memory_limit = 30M ; Максимальный объем памяти, выделяемый сценарию

У меня на ноуте стоит апач и пхп и суть в том что когда запускаешь какой-либо пхп скрипт минут на 5, процессор сильно грузится и идет перегрев , просто кипит.
Хотелось бы уменьшить скорость работы скрипта, за счет разгрузки процессора, реально ли в конфигах такое сделать?
 

Wicked

Новичок
пиши на C++ .-)

либо расставь sleep(1) по скрипту.

либо тормозни процессор.

больше не знаю, что посоветовать.

-~{}~ 21.07.07 17:05:

блин, торможу... а оптимизировать ты скрипт не пытался? чтобы он работал не 5 минут, а, например, одну? Двойная выгода будет :)
 

Dzen

Новичок
Автор оригинала: Wicked
пиши на C++ .-)

либо расставь sleep(1) по скрипту.

либо тормозни процессор.

больше не знаю, что посоветовать.

-~{}~ 21.07.07 17:05:

блин, торможу... а оптимизировать ты скрипт не пытался? чтобы он работал не 5 минут, а, например, одну? Двойная выгода будет :)
слип(1) и так стоит, но слип это полная остановка, а интересует как бы торможение обработки инфы, чтобы она обрабатывалась долгое время, но процессора жрала мало, засчет своей тормознутости.

оптимизировать скрипт нельзя, там проверка данных через интернет идет, там оптимизированно все.
да и не только с этим скриптом дело, любой скрипт который бы работал более 2-3 минут, вызывает жудкий рев вентилятора и адской сковороду на задницу ноута:). причем проц кор дуо. Просто скрипт "берет" весь проц, а интересует как сказать пхп чтобы он брал его не весь, вот в чем вопрос.

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

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Выхода два думаю, либо как-то шаманить с пхп.ини или апачем, либо отдельно на процесс апача делать как-то низкий уровень потребления проца, только как не ясно.
-Task manager,
set Affinity... - количетсво процессоров для данного процеса.
Соответственно должны быть права для того,чтоб поменять праметры в таск менеджере.
Так-же можете поексперементировать с set Priority.
 

Dzen

Новичок
спасиб, это вот в тему.

а set Affinity , это "Отладка" ? а то у меня все на русском, отладка не горит но она есть.

еще есть "задать соответствие" - Соответствие процессоров определяет какой ЦП разрешено использовать процессу.
Но там только CPU0 и CPU1 , дальше все CPU до 31 не горят вообще.

при нажатии на процесс список таков:
Завершить процесс
Завершить дерево процессов
Отладка. (не горит)
Приоритет (высокий низкий и т.д.)
Задать соответствие.
 

Dzen

Новичок
algo, так там горит только CPU0 и CPU1 , отключаю от процесса CPU1, остается CPU0, остальные CPU до СPU31 серые не горят.

В результате работы скрипта все равно скрипт берет такие же 50 процентов от процессора. В общем не помогло:(, не понятно как сделать чтоб он брал процентов 10 например.

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

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
остается CPU0, остальные CPU до СPU31 серые не горят.
проц кор дуо. говорит что нибудь?

брал процентов 10 например.
А зачем?
у системы всегда есть 1 проц в запасе.

Поставьте минимальный приоритет.
 

Wicked

Новичок
там проверка данных через интернет идет
тогда мне СОВСЕМ непонятно, почему такая нагрузка на процессор. Интернет-соединение как раз обычно является таким естественным ограничителем загрузки процессора, потому что относительно мого времени уходит на работу сетью, а процессор в это время простаивает.

-~{}~ 21.07.07 19:04:

там оптимизированно все
бгг.

Может расскажешь поподробнее, что делает этот скрипт, с какими порядками кол-ва итераций работает, с какими объемами данных, и т.д.?
 

Dzen

Новичок
Mr_Max , 10 процентов хотел поставить потому что идет жудкий нагрев задницы ноута когда работает скрипт, не просто горячий а трогать не возможно, хотел понизить нагрузку на процессор таким образом, сняв соответственно тепловыделение.
Низкий приоритет дает все равно 50 процентов нагрузку.

Wicked , да интернет можно отбросить, не причем это, я сейчас попробовал и без интернета, идет простая обработка текстовой информации. Допустим открываем 5 мегобайтный текстовой файл и начинаем выполнять различные сравнения,
на 1 секунде, хочу подчеркнуть, именно на 1 секунде работы скрипта , УЖЕ идет 50 процентная загрузка процессора, тут не в скрипте дело, а в том что он "просит" от процессора 50 процентов, а хотелось бы понизить этот порог, ведь он просит 50 процентов, а почему не 60 или не 80? значит ограничение где-то стоит, надо найти где. Понятное дело что в общем от скрипта зависит сколько он будет брать процессора, но все скрипты которые работают с большим объемом данных у меня больше 50 процентов не брали, и меньше тоже.

ОФФТОП: тоже самое в FARe, видимо устроен он так, когда в нем открываешь редактирование текстового доумента, "И НИЧЕГО больше не длеаешь там" , спец.прогой видно что идет большая загрузка процессора, хотя ничего не происходит, ФАР вот так вот жрет процессор и это на другом компе.
 

Wicked

Новичок
Ладно, нормальная помощь тебе, я вижу, не нужна. Удачи в замедлении скрипта.
 

Dzen

Новичок
Wicked а что требуется?

да хоть так:

$file = file("text.txt); 1 мегобайта

foreach( $file as $f2)

{
echo "$f2";
}


во время выполнения скрипта, открываем таск менеджер и видим скачек на процессе Аппач в 50 процентов , пока скрипт не закончит работу.
 

HraKK

Мудак
Команда форума
зачет. попробуйте не сразу весь файл открывать а так по 1024 хоят бы)
 

Андрейка

Senior pomidor developer
попробуйте не сразу весь файл открывать а так по 1024 хоят бы)
действительно.. а то может это не проц греецца, а память
 

HraKK

Мудак
Команда форума
да нет, работая в последовательном режиме меньше будет нагружать проц, мое имхо.
 

Dzen

Новичок
Автор оригинала: HraKK
зачет. попробуйте не сразу весь файл открывать а так по 1024 хоят бы)
:)) в смысле с while (!feof($file)) ? нет ну нужен массив именно, да и разве это нормально при простейшем таком скрипте 50 процентов от проца??

прогоню посмотрю, но имхо чтение по кб разгрузит память но никак не проц.

-~{}~ 21.07.07 17:24:

Андрейка не не, именно проц, и именно 50 процентов нагрузки! Из-за такой ерунды:-\

в пхп.ини есть мемори лимит, я думал может есть какая либо функция для такого же лимита cpu.

может это глючность связки апач+пхп + именно винды. :-\ а под юниксом было бы все ок:-\
 

Dzen

Новичок
Андрейка ну глючность в сжирание ресурсов которые не требуются в таком кол-ве, ну это отедельная техническая тема, то есть они требуются но могли требоваться иначе:), прекрасно было бы если бы в пхп.ини было бы к примеру cpu_limit_usage :)

В общем конфигом пхп я так понял ресурсы можно ограничить только memory_limit который в данном вопросе роли никакой не играет.
 

Андрейка

Senior pomidor developer
Dzen
ээ.. тебе рассказать как сделать processor_limit под win? ты думаешь, что после превышения занимаемой памяти этого memory_limit переменные в скрипте автоматически архивируюцца и скрипт работает дальше?

ну глючность в сжирание ресурсов которые не требуются в таком кол-ве
требуются.. иначе б он не работал 5 минут при полной загрузке проца..

ЗЫ. у тя там точно ошибок нет?
 

Angerslave

Новичок
Хм, что-то мне подсказывает что скрипт не только "не оптимизирован", но и выполняет поставленную задачу самым медленным способом из возможных. Попробуй всё-таки проконсультироваться по поводу алгоритма работы. Ну и почитай как работает процессор...
 
Сверху