我正在用C编写一个小程序,我想测量它的性能.
我想知道它在处理器中运行了多少时间以及它有多少缓存命中+未命中.有关上下文切换和内存使用的信息也很好.
该程序执行时间不到一秒.
我喜欢/ proc/[pid]/stat的信息,但我不知道如何在程序死亡/被杀之后看到它.
有任何想法吗?
编辑:我认为Valgrind增加了很多开销.这就是为什么我想要一个简单的工具,比如/ proc/[pid]/stat,它总是在那里.
performance measurement context-switch cpu-cache memcache-stats
我想尽可能地防止我的代码刷新 L2 缓存。
您将如何在 C++/C# 中实现这一目标,以及如何使其负责。
编辑:我可以收集 L2 缓存未命中的数量吗? 答:是的,我可以在windows平台上获取每个进程的L2缓存未命中数吗?