gpt4 book ai didi

C 进程相对于内核的 CPU 负载

转载 作者:行者123 更新时间:2023-11-30 17:26:45 26 4
gpt4 key购买 nike

我即将了解 C 语言中的特定进程如何在特定时间范围内加载 CPU。该进程可能会在运行时切换处理器核心,因此我也需要处理这个问题。 CPU为ARM处理器。

我研究了从标准顶部获取负载的不同方法,perf 并通过中给出的统计数据来计算负载/proc/[pid]/stat-文件。

我的想法是有一个程序可以按照线程中的建议读取/proc/[pid]/stat文件:“How to calculate the CPU usage of a process by PID in Linux from C?”并相应地计算负载。但我该如何对待核心切换呢?我需要注意到它并调整负载计算。

您建议我如何实现这一目标?

更新:假设我轮询进程数据/统计信息至少两次,如何查看进程在哪个核心中运行,并检查自上次检查以来它是否已切换核心?

最佳答案

perf 工具可以告诉您进程已进行的cpu-migrations 数量。即进程切换cpu的次数。但它不会告诉您哪个 cpu 核心。

关于C 进程相对于内核的 CPU 负载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26656482/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com