Python Точная выборка
Я пытаюсь производить выборку регистров процессора каждую миллисекунду и вычислять частоту. Чтобы иметь точное измерение, я требую, чтобы время выборки было очень точным. Я использую time.sleep() для достижения этой цели, но сон не очень точный за 1 секунду.
Что я хотел бы сделать, это настроить счетчик и выборку, когда этот счетчик достигает определенного значения и где счетчик увеличивается с точной скоростью. Я использую Python 2.6. У кого-нибудь есть предложения?
1 ответ
Я подозреваю, что есть несколько пакетов Python, которые -help- с тем, что вы хотите. Я также подозреваю, что Python не подходит для этой цели.
Есть модуль timeit
Существует модуль времени с функцией clock(), который НЕ является настенными часами, а является часами использования ЦП (для приложения, инициализирующего объект time.clock(). Это значение с плавающей запятой, которое показывает около 12+ цифр под единицами, т.е. 1.12345678912345. Python не знает точности, и возвращаемое значение из time.clock() - это не то, что я лично считаю точным.
Существуют и другие инструменты самоанализа Python, которые вы можете использовать в Google, например, inspect, itertools и другие, которые обрабатывают время. однако я подозреваю, что их точность зависит от средних значений многих итераций измерения одного и того же.