Спасибо, что нашли время, чтобы повторить это в любом случае!
але я хочу записать использование процессора скриптом Python, который выполняет глубокую нейронную сетьKeras модель. Я ищу процессор эквивалентmemory_profiler, что обеспечивает потребление памяти процессом.
Я смотрел на использованиеpsutil (предлагается вэтот ответ), который указывает, что мой сценарий может содержать какой-то вариант
p = psutil.Process(current_pid)
p.cpu_percent()
но проблема заключается в важном вызове функции, который я действительно хочу отразить, на этапе вывода модели
model.predict(x_test)
и если я запускаю psutil до / после этого шага, записанное использование ЦП не будет истинным отражением использования ЦП процессом.
Тогда я подумал, могу ли я использовать что-то вроде top / htop, чтобы записать загрузку процессора сценарием в некоторый файл, фиксируя колеблющееся использование процессора во время выполнения процесса, а затем вычислить среднее (или что-то подобное) по факту. Однако проблема, с которой я сталкиваюсь, заключается в том, что мне не нужно знать PID для использования top, так как я могу использовать top для мониторинга сценария перед его выполнением (и даже не был назначен PID)?
я могу видетьэтот высокопоставленный ответ предлагает cProfile, который дает время выполнения функций в скрипте. Хотя это не совсем то, чего я хочу, я заметил, что он возвращает общее количество секунд процессора, что, по крайней мере, позволило бы мне сравнить использование процессора в этом отношении.