Saf*_*med 5 linux time profiling linux-kernel
是否存在可供内核模块使用的单调时钟源,该内核模块可以附加到线程,只有在关联的线程运行时才会增加?
我正在寻找能像perfAPI 一样工作的东西,除了测量迄今为止所消耗的CPU时间总量(以纳秒为单位)而不是测量周期或指令.
在用户空间中,您可以使用此clock_gettime功能librt指定CLOCK_PROCESS_CPUTIME_ID时钟类型以获取上述行为.查看源代码clock_gettime,该函数调用来自pthread库的另一个函数调用__pthread_clock_gettime.
我正在寻找类似的东西,可以从内核模块在Linux内核中设置并附加到任务,给定指向task_struct与任务相关联的指针.
小智 1
性能 API 使您可以访问各种硬件事件和计数器。它具有低级和高级 API。PAPI_epc 函数应该满足您的需求:
http://icl.cs.utk.edu/papi/docs/db/d93/group__high__api.html#ga2f8766ae458b43d41e57e78b930a4f61