Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.08.27;
Скачать: CL | DM;

Вниз

Измерение времени выполнения внутри потока   Найти похожие ветки 

 
Unknown user ©   (2009-01-31 21:11) [0]

Подскажите, пожалуйста, API функцию для этой задачи. Помню, что такая присутствует, но никак не вспомню названия.


 
DVM ©   (2009-01-31 22:52) [1]

QueryPerformanceCounter() ?


 
Unknown user ©   (2009-01-31 23:05) [2]

Нет, мне надо измерить время которое поток затратил на выполнение определенных операций. GetTickCount использовать нельзя не в силу своей низкой точности, а из-за того, что Windows приостанавливает поток когда передает выполнение другим потокам.


 
Сергей М. ©   (2009-02-01 10:30) [3]


> Unknown user


Одна и та же операция в разных условиях м.б. выполнена потоком за разное время. Что толку в таких измерениях, если условия неподконтрольны ?

Можно, конечно, на время измерения установить real time - класс приоритета просесса и повысить приоритет потока до time critical, но подобного рода лабораторные эксперименты неприменимы в боевых условиях.


 
Leonid Troyanovsky ©   (2009-02-01 14:32) [4]


> Unknown user ©   (31.01.09 21:11)  

> Подскажите, пожалуйста, API функцию для этой задачи.

GetThreadTimes

--
Regards, LVT.


 
Unknown user ©   (2009-02-01 14:32) [5]

>Одна и та же операция в разных условиях м.б. выполнена потоком за разное время. Что толку в таких измерениях, если условия неподконтрольны ?

Мне нужно выяснить сколько времени поток затратил на загрузку данных, при этом параллельно идет загрузка в других потоках. То есть надо вычесть то время, которое поток простаивал, ожидая своей очереди.


 
Сергей М. ©   (2009-02-01 14:59) [6]


> Unknown user


Что такое "загрузка данных" ?


> время, которое поток простаивал


Информация о вынужденных "простоях" потока по "вине" планировщика доступна только планировщику.
GetThreadTimes не имеет доступа к этой информации.


 
Leonid Troyanovsky ©   (2009-02-01 15:13) [7]


> Сергей М. ©   (01.02.09 14:59) [6]

> GetThreadTimes не имеет доступа к этой информации.

Т.е., простои она не учитывает.

--
Regards, LVT.


 
Сергей М. ©   (2009-02-01 15:23) [8]


> Leonid Troyanovsky ©   (01.02.09 15:13) [7]


Разумеется.
Она учитывает только времена в kernel- и user-режимах, каждое из которых, в свою очередь, включает время вынужденного простоя.


 
Leonid Troyanovsky ©   (2009-02-01 15:42) [9]


> Сергей М. ©   (01.02.09 15:23) [8]

> Она учитывает только времена в kernel- и user-режимах, каждое
> из которых, в свою очередь, включает время вынужденного
> простоя.

These times do not include time spent executing system threads or waiting
in a suspended or blocked state.

--
Regards, LVT.


 
Сергей М. ©   (2009-02-01 16:25) [10]


> Leonid Troyanovsky ©   (01.02.09 15:42) [9]


Здесь

http://msdn.microsoft.com/en-us/library/ms683237(VS.85).aspx

это уточнение отсутствует.

Приведи ссылку, где оно есть ?


 
Leonid Troyanovsky ©   (2009-02-01 17:44) [11]


> Сергей М. ©   (01.02.09 16:25) [10]

> Приведи ссылку, где оно есть ?

Его ныне нет. Но оно было и осталось, скажем, в mobile.
См. также SDK 2000.

--
Regards, LVT.


 
han_malign ©   (2009-02-05 15:03) [12]

HKEY_PERFORMANCE_DATA



Страницы: 1 вся ветка

Текущий архив: 2010.08.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.065 c
3-1235071724
DmitryG.
2009-02-19 22:28
2010.08.27
Пробемы с ADO


15-1264632229
Германн
2010-01-28 01:43
2010.08.27
RDTSC и её использование в VB 2008 Express Edition


15-1266928491
Кто б сомневался
2010-02-23 15:34
2010.08.27
Интернет убил «Убийцу» (защита от пиратства)


2-1270711682
12
2010-04-08 11:28
2010.08.27
MSSQL, номер записи в select


15-1266165222
Czz
2010-02-14 19:33
2010.08.27
Win7 - не запускается проводник 2





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский