Есть ли команда bash или библиотека Python, которая будет время времени для выполнения файла/команды? Я хочу, чтобы иметь возможность решить, какой язык будет работать лучше всего для задачи или иметь возможность точно знать, что код Python A работает быстрее, чем код Python B. Если есть способ сделать это, но этот вопрос не соответствует теме, пожалуйста, оставьте комментарий с условиями поиска или другими ресурсами.Утилита для проверки времени выполнения?
2
A
ответ
3
Да, это называется командой time
. Как и в time command arg1 arg2 arg3
.
Это выводит 3 поля, что-то вроде этого:
real 0m0.631s
user 0m0.154s
sys 0m0.458s
Первое фактическое время на стене часы. Во-вторых, как долго программа проходит в пространстве пользователя. Третья - как долго программа тратится на пространство ядра.
1
time
Например:
time ls -a
дает, после листинга файлов,
real 0m0.240s
user 0m0.002s
sys 0m0.004s
Есть много вариантов для того, что для отслеживания с точки зрения ресурсов. См. Справочную страницу.
0
python -m timeit "setup" "code"
если хотите время Python код. Полезно для быстрого и грязного тестирования производительности.
2
Вы можете использовать timeit:
from timeit import timeit
print timeit("function_2(arg)", "from __main__ import function_2, arg", number=5)
Things отметить:
from __main__ import function, arg
предоставляет доступ кtimeit
модуля к функциям и переменным в скрипте.- Функция и связанные с ней аргументы должны передаваться как строки.
- номер = количество прогонов [по умолчанию 1000000].
- Время, возвращенное timeit, составляет сумму
number
работает ... НЕ СРЕДНЕЕ (поймал меня однажды ...).
0
Я использую этот фрагмент кода, который я нашел в Интернете где-то, что я не могу вспомнить:
import atexit
import time
def secondsToStr(t):
return "%d:%02d:%02d.%03d" % \
reduce(lambda ll,b : divmod(ll[0],b) + ll[1:],
[(t*1000,),1000,60,60])
line = "="*40
def log(s, elapsed=None):
print line
print secondsToStr(time.clock()), '-', s
if elapsed:
print "Elapsed time:", elapsed
print line
print
def endlog():
end = time.clock()
elapsed = end-start
log("End Program", secondsToStr(elapsed))
def now():
return secondsToStr(time.clock())
start = time.clock()
atexit.register(endlog)
log("Start Program")
Смежные вопросы
- 1. Moq framework для проверки времени выполнения метода
- 2. Онлайн-компилятор для проверки времени выполнения
- 3. java testTimer для проверки времени выполнения
- 4. Различные проверки времени выполнения printf() для% s?
- 5. Ошибка проверки времени выполнения # 0
- 6. Ошибка проверки времени выполнения # 2
- 7. Утилита для FIX для проверки сообщения
- 8. Утилита Java для проверки строки на NMTOKEN
- 9. Есть ли утилита для проверки make-файлов?
- 10. Инструмент/утилита для проверки отладки запросов XPath
- 11. Ошибка проверки времени выполнения # 0 C++
- 12. Дополнительная инжекция в проверки зависимостей EJB3 или проверки времени выполнения
- 13. Получение ошибки проверки времени выполнения # 2
- 14. Ошибка проверки времени выполнения # 2 S C++
- 15. Ошибка проверки времени выполнения 3 в случае
- 16. Есть ли утилита FireBug для проверки приложения Winform?
- 17. Quickcheck для ошибок времени выполнения
- 18. Является ли Roslyn правильным инструментом для проверки времени выполнения компиляции?
- 19. Как настроить Eclipse для редактирования Perl без проверки времени выполнения?
- 20. Ошибка проверки времени выполнения # 2 - s для массива C-строк
- 21. regex для проверки времени
- 22. Утилита для проверки исходного файла (ов) для ошибок
- 23. Любая утилита для проверки расширений макросов C/C++ #define?
- 24. .NET DLL ссылки/утилита проверки зависимостей
- 25. Утилита макросов для перечисления
- 26. утилита для луча?
- 27. Есть ли встроенная утилита для проверки «null» String вместо null?
- 28. Утилита проверки интеграции Spring для конфликтующих конфигурационных контекстов
- 29. Ошибка выполнения времени выполнения
- 30. эквивалента времени для памяти проверки
В то время как я не принимаю это, я + 1ed его. Жаль, что я не могу принять кратные. : D Спасибо! – CoffeeRain