Оценить производительность для другого параметра функции - PullRequest
0 голосов
/ 26 октября 2018

Я хочу знать, как набор параметров влияет на производительность функции f.Я делаю это для хранения времени выполнения параметров:

ListOfParam=[param1,param2,param3]
Time=[]
for param in ListOfParam:
    start=time.time()
    f(param) 
    end=time.time()
    Time.append(end-start)

Теперь я беспокоюсь о том, повлияет ли выполнение param1 на время выполнения param2, потому что некоторые param будут использовать несколько процессоровмоего компьютера.Как сделать это справедливым для всех param?

1 Ответ

0 голосов
/ 26 октября 2018

Вам необходимо использовать модуль timeit Python. Вы можете прочитать документ здесь и посмотреть примеры здесь . Лучше использовать этот модуль, чем реализовать собственный таймер, потому что timeit handle:

  • Сборщик мусора в Python, чтобы этот процесс не искажал результаты, планируя запуск коллекции в неподходящий момент.
  • выбирает наиболее точный таймер для вашей ОС, time.time или time.clock.
  • он повторяет тесты много раз, чтобы исключить влияние других задач на вашем компьютере, таких как очистка диска и планирование ОС.

Plus: IPython включает магическую функцию %timeit для этих целей ( source ).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...