![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| JoeBlack |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 29.9.2006 Репутация: нет Всего: нет |
Доброе время суток!
Можно подсчитать время выполнения чего-то( всей проги или какой-то части ее) в секундах. Возможно ли более мелкое деление (миллисекунды, например..)? Или, что еще лучше, в тактах.... Хотя, за один такт может выполняться несколько операций ( если правильно помню). Спасибо! |
|||
|
||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 8 Всего: 146 |
легко
GetTickCount() до операции и после , разница между ними и будет, то что те нужно -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| Athlon |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 100 Регистрация: 15.1.2006 Где: Украина:: Запорож ье Репутация: нет Всего: нет |
Еще можно использовать GetSystemTime, если операция достаточно длительная
|
|||
|
||||
| Дрон |
|
|||
![]() Java-ненавистник :) ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3179 Регистрация: 29.12.2002 Где: Санкт-Петербург Репутация: 10 Всего: 93 |
QueryPerformanceFrequency и QueryPerformanceCounter -- конечно, не такты, но точность хоть куда
Добавлено @ 13:39 А вообще сто раз уже спрашивали. На форуме ведь есть поиск Это сообщение отредактировал(а) Дрон - 12.10.2006, 13:40 -------------------- Да. Именно так. |
|||
|
||||
| Мяут |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 11.10.2006 Репутация: нет Всего: нет |
Насчет тактов - не уверен |
|||
|
||||
| JoeBlack |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 29.9.2006 Репутация: нет Всего: нет |
Спасибо за помощь! А Дрон отдельное спасибо за нагоняй..))))) Действительно посмотрел потом, была такая тема...Только я почему-то был уверен, что это мало кому понадобится. Посему, если и спрашивали, то скорей всего речь шла лишь о секундах...
Спасибо!!!!! Это сообщение отредактировал(а) JoeBlack - 12.10.2006, 15:26 |
|||
|
||||
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
зачем сначала делить н 1000, а потом умножать на нее же?? |
|||
|
||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
Ну, кстати, не факт же, что CLOCK_PER_SEC равно именно 1000. В моей реализации тоже так, но мало ли...
Стандарт есть стандарт... Переносимость того стоит, ИМХО. |
|||
|
||||
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
секунды это международный стандарт, а ф-ия clock() дает значение в миллисекундах, так что значение
может изменится, только если у человечества изменится представление о времени ИМХО |
|||
|
||||
| Мяут |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 11.10.2006 Репутация: нет Всего: нет |
Жертовать переносимостью ради дополнительных действий компилятора (уверен, что он проглотит конструкцию *1000/1000 не подавившись?
У человечества - нет. У процессоров - да |
||||
|
|||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
В дополнение к Мяут'у:
Функция clock() не дает "значение в миллисекундах"! В каком стандарте ты это вычитал? Я, когда разбирался с этой функцией, такого не увидел... |
|||
|
||||
| vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
кроме С'шного стандарта существует еще метрологические стандарты.. и в них как раз описано , что приставка милли есть ничто иное как 10^-3 , при делении на CLOCK_PER_SEC мы получаем значение в секундах, я думаю дальше объяснять не нужно |
|||
|
||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
Я знаю, что такое приставка милли Просто, извини, я не видел слово миллисекунды в описании функции. Откуда ты точно знаешь, что она отдает миллисекунды? Из размеры константы CLOCKS_PER_SEC ? Добавлено @ 16:40 РазмерА Добавлено @ 16:40 А точнее, значения... |
|||
|
||||
| vinter |
|
||||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
ну не прям точно
да |
||||
|
|||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 8 Всего: 146 |
vinter, имхо точнее будет даже
нежели т.к. клок выдает время в секундах, а ты переводишь в милисекунды! а геттиккаунт сразу выдает в милисекундах -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |