编程语言
首页 > 编程语言> > C#获取CPU缓存未命中性能计数器

C#获取CPU缓存未命中性能计数器

作者:互联网

我知道CPU会计数所有L1 / 2/3高速缓存未命中,并且原则上可以访问此信息.例如.有英特尔的性能查看器.我只是在C#中找不到示例.可以从.NET访问此数据吗?

解决方法:

好了,您可以(至少在Windows上)使用Intel Perfomance Counter Monitor进行此操作.除捆绑提供的其他工具外,它还包含PCM-Service-Windows服务,该服务添加了PCM Windows性能计数器.下载,编译和安装此服务后,您可以像这样轻松地访问L2缓存未命中(例如):

var pc = new PerformanceCounter("PCM Core Counters", "L2 Cache Misses", "total_"); // instead of total_ you can use number of core
var value = pc.RawValue; // or pc.NextValue() and so on.

当然,英特尔PCM不仅增加了缓存未命中,还增加了更多有趣的计数器,所有这些都可以从.NET访问.

标签:cpu-cache,c,net
来源: https://codeday.me/bug/20191119/2038447.html