Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.046 c
2-1269956469
sanya
2010-03-30 17:41
2010.08.27
Экспорт данных в StringGrid


3-1243316202
Naruto
2009-05-26 09:36
2010.08.27
UPDATE в SQLite


2-1269770353
Delphist2
2010-03-28 13:59
2010.08.27
locktype в ADO


2-1272781981
ixen
2010-05-02 10:33
2010.08.27
Как отобразить дату по маске в Dblookupcombobox?


8-1205755973
DoKi
2008-03-17 15:12
2010.08.27
gпопиксельное освещение




   Наверх