Форум: "Прочее";
Текущий архив: 2008.05.11;
Скачать: [xml.tar.bz2];
ВнизВозможно ли в Windows получение текущего времени Найти похожие ветки
← →
Ega23 © (2008-03-24 10:26) [0]с точностью до микросекунды? Если нет, то какой минимальный дискрет времени доступен?
← →
31512 (2008-03-24 10:28) [1]GetTickCount
← →
Игорь Шевченко © (2008-03-24 10:35) [2]
> Если нет, то какой минимальный дискрет времени доступен?
QueryPerfomanceFrequency ?
← →
Ega23 © (2008-03-24 10:43) [3]
> QueryPerfomanceFrequency ?
Похоже на то, что надо.
← →
Григорьев Антон © (2008-03-24 12:47) [4]Вот ещё один вариант: http://www.delphikingdom.com/asp/viewitem.asp?catalogid=455
← →
Mystic © (2008-03-24 13:15) [5]
> > QueryPerfomanceFrequency ?
>
>
> Похоже на то, что надо.
Не работает на современных процессорах с динамическим понижением частоты. На таких процессорах, например, наблюдается такой глюк: игрушка запускается нормально, а потом начинает работать с бешеной скоростью. Объяснение: при запуске процессор не нагружен и работает на более низкой частоте. В это время происходит вызов QueryPerfomanceFrequency, который возвращает пониженную частоту. Потом игрушка нагружает процессор и он переключается на более высокую частоту. Но QueryPerfomanceFrequency никто во второй раз не вызывает, и программа думает, что работает на более медленном процессоре :)
← →
guav © (2008-03-24 13:40) [6]> [5] Mystic © (24.03.08 13:15)
Ух ты. А GetTickCount() работает в этом случае (мне точность до десятых секунды нужна) ?
← →
Григорьев Антон © (2008-03-24 13:55) [7]
> guav © (24.03.08 13:40) [6]
> > [5] Mystic © (24.03.08 13:15)
>
> Ух ты. А GetTickCount() работает в этом случае (мне точность
> до десятых секунды нужна) ?
Должен работать, он на прерываниях от таймера сделан, ему частота процессора без разницы.
← →
Anatoly Podgoretsky © (2008-03-24 21:17) [8]> Ega23 (24.03.2008 10:26:00) [0]
Что такое время?
Но если это такты, то RDTSC (ассемблерная инструкция) дает в тактах процессора, примерно 300 пикосекунд, для 3 ггц процессора, если без учета влияния ОС
Попробуй в небольшом цикле с записью в массив и обязательно inline, а не вызов функции, вот так и узнаешь предельные возможности твоей системы. Есть еще GetPerformanceCounter тоже круто, но интервалы хуже, но можешь расчитывать на 100 наносек. Привет Медведю!
← →
Поп Гапон (2008-03-24 21:42) [9]
> Есть еще GetPerformanceCounter тоже круто, но интервалы
> хуже, но можешь расчитывать на 100 наносек. Привет Медведю!
>
QueryPerformanceCounter On a multiprocessor computer, it should not matter which processor is called. However, you can get different results on different processors due to bugs in the basic input/output system (BIOS) or the hardware abstraction layer (HAL). To specify processor affinity for a thread, use the SetThreadAffinityMask function.
← →
homm © (2008-03-24 22:13) [10]> Возможно ли в Windows получение текущего времени с точностью до микросекунды?
Этолько если это время с атомных часов, подсоединенных через USB порт.
← →
VierUndZwanziger (2008-03-26 16:45) [11]А зачем? Задача прям, микросекундная, в натуре?
Я пользуюсь сервисом http://www.zln.ru/time/
Мне хватает :)
Помните Грибоедова Александра Сергеевича?
"Счастливые часовъ не наблюдаютъ"
← →
REA (2008-03-26 17:10) [12]Во многих аппаратных ключах есть таймер - заодно и защиту сделаешь :)
← →
Ega23 © (2008-03-26 17:22) [13]
> Но если это такты, то RDTSC (ассемблерная инструкция) дает
> в тактах процессора, примерно 300 пикосекунд, для 3 ггц
> процессора, если без учета влияния ОС
Я когда про RDTSC читал, то так понял, что это не для всех процессоров сработает.
> А зачем? Задача прям, микросекундная, в натуре?
Задача не микросекундная, задача состоит в получении псевдо-уникального значения. Точнее - сочетание G
UID + QPC.
Всем спасибо, вопрос уже снят.
← →
Anatoly Podgoretsky © (2008-03-26 21:41) [14]> Ega23 (26.03.2008 17:22:13) [13]
А тебя есть 486 и меньше?
← →
Pavia © (2008-03-26 22:25) [15]
> QueryPerfomanceFrequency, который возвращает пониженную
> частоту.
Она возращает фиксированное значение. The frequency cannot change while the system is running.
Точность использования RDTSC зависит от точности таймера с которой производиличь замеры частоты процессора.
← →
Pavia © (2008-03-26 22:25) [16]
> QueryPerfomanceFrequency, который возвращает пониженную
> частоту.
Она возращает фиксированное значение. The frequency cannot change while the system is running.
Точность использования RDTSC зависит от точности таймера с которой производиличь замеры частоты процессора.
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2008.05.11;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.006 c