测量动态链接库每秒的CPU使用率



我有一个使用动态链接库library.so的示例应用程序。我用top命令测量示例应用程序的CPU使用情况。但它显示了示例应用程序和library.so每秒的CPU使用情况。但我只想看看library.so的CPU使用情况。有办法这样做吗?我听说它可以通过htop实现,但不知道如何实现。我使用了树视图,但它显示了几个流程作为示例应用程序流程。我不明白哪一个是library.so。我使用的是centos 5.11。内核版本3.2.63-1.el5.elrepo.

如果库被视为程序的一部分,一种方法是在代码中实现度量。下面的最小示例是在C++11上实现的,它只运行假设库中的一个函数:

#include <chrono>
#include <iostream>
#include <hypothetical>
int main() {
  using namespace std::chrono;
  system_clock systemClock;
  system_clock::time_point startingTime{systemClock.now()};
  hypothetical::function();
  system_clock::duration libraryTime{systemClock.now() - startingTime};
  std::cout << "Hypothetical library took " << duration_cast<seconds>(libraryTime).count() << " seconds to run.n";
  return 0;
}

您需要将其扩展到程序从库中调用的所有函数。

相关内容

  • 没有找到相关文章

最新更新