草庐IT

cpu-usage

全部标签

c++ - 用于在 linux 中获取 CPU 负载的 C API

在linux中,有没有内置的C库函数来获取机器的CPU负载?大概我可以编写自己的函数来打开和解析/proc中的文件,但似乎应该有更好的方法。不需要便携不得需要任何超出基本RHEL4安装的库。 最佳答案 如果你真的想要一个c接口(interface),请使用getloadavg(),它也适用于没有/proc的unix。它有一个manpage包含所有细节。 关于c++-用于在linux中获取CPU负载的CAPI,我们在StackOverflow上找到一个类似的问题:

c# - 如何确定线程在哪个 CPU 上运行?

有没有办法确定给定线程在哪个CPU上运行?最好在C#中,但C++会这样做。.NETProcess和ProcessThread类似乎不提供此信息。ETA说明:我们正在开发一个服务器应用程序,用于处理http多播流并生成多个视频编码器。这在具有12个物理内核的系统上运行,从而产生24个逻辑CPU(超线程)。通过TaskManager和ProcessExplorer,我们验证了我们生成的进程均匀分布在逻辑CPU上。然而,我们在一个CPU上看到了很多(内核?)事件,这些事件通过消耗异常大量的CPU时间而产生干扰。我们正在尝试确定哪些进程/线程正在此特定CPU上运行。TaskManager和Pr

c# - 如何确定线程在哪个 CPU 上运行?

有没有办法确定给定线程在哪个CPU上运行?最好在C#中,但C++会这样做。.NETProcess和ProcessThread类似乎不提供此信息。ETA说明:我们正在开发一个服务器应用程序,用于处理http多播流并生成多个视频编码器。这在具有12个物理内核的系统上运行,从而产生24个逻辑CPU(超线程)。通过TaskManager和ProcessExplorer,我们验证了我们生成的进程均匀分布在逻辑CPU上。然而,我们在一个CPU上看到了很多(内核?)事件,这些事件通过消耗异常大量的CPU时间而产生干扰。我们正在尝试确定哪些进程/线程正在此特定CPU上运行。TaskManager和Pr

c++ - 如何确定机器上的硬件(CPU 和 RAM)?

我正在开发一个跨平台分析套件,并希望在每次运行的报告中添加有关机器CPU(架构/时钟速度/内核)和RAM(总数)的信息。目前我需要针对Windows和Unix,所以我需要从两个平台获取这些信息的方法,有什么线索吗?编辑:感谢您的出色回答,现在我得到了CPU架构、CPU内核数和总内存,但我仍然缺乏CPU的时钟速度,对此有什么想法吗? 最佳答案 这是在Windows机器上获取所需信息的一种方法。我从一个实际项目中复制并粘贴了它,并进行了一些小的修改,因此请随时清理它以使其更有意义。intCPUInfo[4]={-1};unsignedn

c++ - 如何确定机器上的硬件(CPU 和 RAM)?

我正在开发一个跨平台分析套件,并希望在每次运行的报告中添加有关机器CPU(架构/时钟速度/内核)和RAM(总数)的信息。目前我需要针对Windows和Unix,所以我需要从两个平台获取这些信息的方法,有什么线索吗?编辑:感谢您的出色回答,现在我得到了CPU架构、CPU内核数和总内存,但我仍然缺乏CPU的时钟速度,对此有什么想法吗? 最佳答案 这是在Windows机器上获取所需信息的一种方法。我从一个实际项目中复制并粘贴了它,并进行了一些小的修改,因此请随时清理它以使其更有意义。intCPUInfo[4]={-1};unsignedn

手机CPU性能天梯图及品牌

芯片(soc)跟手机的关系,就好像大脑跟人体的关系一样,一切行为,都是由大脑发出指令来执行的,所以手机芯片的强弱,会直接影响手机操作的响应速度和流畅性。一.手机CPU各项排行下图是极客湾移动端CPU性能排行榜极客湾这个排行榜的分数占比是:单核30%+多核70%。极客湾移动端GPU性能排行榜极客湾这个排行榜的分数占比是:50%峰值性能+50%持续性能。极客湾移动端芯片综合性能排行极客湾这个排行榜的分数占比是:CPU50%+GPU50%。而且不包含功耗,AI,ISP和基带性能。  下图为快科技的手机处理器天梯图: 二.各品牌处理器1.高通骁龙系列(Snapdragon)处理器高通是指美国高通公司,

c++ - 我可以在现代 Intel Core CPU 上测量分支预测失败吗?

Thisquestion它的答案最近被标记为史诗般的答案,这让我想知道;我可以根据CPU分支预测失败来衡量Windows中正在运行的应用程序的性能吗?我知道存在一些静态分析工具,它们可能有助于优化代码以在分支预测情况下获得良好的性能,并且手动技术可以通过简单地进行更改和重新测试来提供帮助,但我正在寻找一些可以在Windows应用程序运行时报告一段时间内分支预测失败的总数,我希望VisualC++的一些Profiler工具可以帮助我。就这个问题而言,所讨论的应用程序要么是使用原生编译器(例如Windows的VisualC++)构建的,要么是使用其他一些原生编译器(例如GCC、FreePa

c++ - 我可以在现代 Intel Core CPU 上测量分支预测失败吗?

Thisquestion它的答案最近被标记为史诗般的答案,这让我想知道;我可以根据CPU分支预测失败来衡量Windows中正在运行的应用程序的性能吗?我知道存在一些静态分析工具,它们可能有助于优化代码以在分支预测情况下获得良好的性能,并且手动技术可以通过简单地进行更改和重新测试来提供帮助,但我正在寻找一些可以在Windows应用程序运行时报告一段时间内分支预测失败的总数,我希望VisualC++的一些Profiler工具可以帮助我。就这个问题而言,所讨论的应用程序要么是使用原生编译器(例如Windows的VisualC++)构建的,要么是使用其他一些原生编译器(例如GCC、FreePa

c++ - 标准C++ 11是否保证high_resolution_clock测量实时(非CPU周期)?

众所周知,clock()可能显示小于或大于实时值-在下面的示例1和2中都显示了这两种情况。对于C++11中时间的高精度测量,我们可以使用:std::chrono::high_resolution_clock::now();-保证高精度std::chrono::steady_clock::now();-保证实时测量clock();-保证高精度,但测量CPU周期而不是时间time(&t_start);-精度不高,但可以实时测量1-例如:http://ideone.com/SudWTM#include#include#include#include#includeintmain(void){

c++ - 标准C++ 11是否保证high_resolution_clock测量实时(非CPU周期)?

众所周知,clock()可能显示小于或大于实时值-在下面的示例1和2中都显示了这两种情况。对于C++11中时间的高精度测量,我们可以使用:std::chrono::high_resolution_clock::now();-保证高精度std::chrono::steady_clock::now();-保证实时测量clock();-保证高精度,但测量CPU周期而不是时间time(&t_start);-精度不高,但可以实时测量1-例如:http://ideone.com/SudWTM#include#include#include#include#includeintmain(void){