Внезапно выяснилось, что замечательная функция в С clock() возвращает время собственно процесса, за вычетом простоев (что норм) и системного (что не норм)
Возникает вопрос, можно ли более менее стандартными средствами вычистить реальное и системное время, т.е. некий аналог
Здравствуйте, Quarter-123, Вы писали:
Q1>Внезапно выяснилось, что замечательная функция в С clock() возвращает время собственно процесса, за вычетом простоев (что норм) и системного (что не норм)
Q1>Возникает вопрос, можно ли более менее стандартными средствами вычистить реальное и системное время, т.е. некий аналог Q1>
Здравствуйте, Zhendos, Вы писали:
Z>Здравствуйте, Quarter-123, Вы писали:
Q1>>Внезапно выяснилось, что замечательная функция в С clock() возвращает время собственно процесса, за вычетом простоев (что норм) и системного (что не норм)
Q1>>Возникает вопрос, можно ли более менее стандартными средствами вычистить реальное и системное время, т.е. некий аналог Q1>>
Здравствуйте, Pzz, Вы писали:
Pzz>Здравствуйте, Quarter-123, Вы писали:
Q1>>хотя конечно, 3, а не 2.
Q1>>2 таки системные вызовы.
Pzz>У меня в линухе 2.
Понятно, у на БСД (макось) немного по другому, впрочем не суть
Здравствуйте, Quarter-123, Вы писали:
Pzz>>У меня в линухе 2.
Q1>Понятно, у на БСД (макось) немного по другому, впрочем не суть
Из Single UNIX Specification, я слышал, убрали понятие "системный вызов". В конце концов, с точки зрения пользовательского приложения нет никакой разницы, является ли та или иная функция системным вызовом, или она реализована в библиотеке. Лишь бы интерфейс был ожидаемый.
Здравствуйте, Pzz, Вы писали:
Pzz>Здравствуйте, Quarter-123, Вы писали:
Pzz>>>У меня в линухе 2.
Q1>>Понятно, у на БСД (макось) немного по другому, впрочем не суть
Pzz>Из Single UNIX Specification, я слышал, убрали понятие "системный вызов". В конце концов, с точки зрения пользовательского приложения нет никакой разницы, является ли та или иная функция системным вызовом, или она реализована в библиотеке. Лишь бы интерфейс был ожидаемый.
вообще работает, частично
Sleep 10 sec, iter 100000
tms_utime: 8344, tms_stime 342, tms_cutime 0, tms_cstime 0
sleep for 10 sec, 100000^2 dummy iters, 1000000 direct writes while result of measure = 8686/100 sec
real 98.88
user 83.44
sys 3.42
системное и пользовательское время соотносится с тем, что отображает time — p (8334 + 342), а вот настоящее в структуру tms не попадает.
Впрочем и фик с ним, для профилирования оно не нужно