问题标签 [cpu-usage]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
7386 浏览

java - 是否可以从 Java 应用程序控制 CPU 使用率?

我正在开发一个通过 HTTP 流式传输音乐的 Java 应用程序,我遇到的一个问题是,当应用程序从磁盘读取音频文件并将其发送到客户端时,它通常会使 CPU 达到 90-100 %(这可能会导致用户在运行其他应用程序时出现问题)。

是否可以控制执行此工作的线程以使用更少的 CPU,或者这是否需要由操作系统控制?目前是否有任何技术可以管理您的应用程序的密集程度?

我知道您可以以高/低优先级启动线程,但这在这种情况下似乎对我没有任何影响。

(我无法忘记“我已经要求计算机做某事,所以它显然会尽可能快地完成它......”)

谢谢!

竿。

0 投票
9 回答
51258 浏览

c++ - 如何在 C++ 中获取当前的 CPU 和 RAM 使用情况?

是否有可能在 C++ 中获得当前的 RAM 和 CPU 使用率?是否有独立于平台的函数调用?

0 投票
2 回答
862 浏览

java - 在自动化回归测试中测量执行时间的最佳方法

我有一些代码,我想测量它在自动回归测试中连续运行时的速度。这样做的目的是提醒我对代码所做的更改会对性能产生负面影响。

在伪代码中,我想要这样的东西:

我正在为此查看 ThreadMXBean#getCurrentThreadCpuTime() ,但关键问题是自动化测试将在各种不同的开发人员的电脑上运行,并且将自动外包以测试具有一系列不同硬件的服务器和能力。

这会奏效,还是数字会出错?

这个问题应该如何解决?有没有更好的办法?有这种雀跃的标准工具吗?

0 投票
3 回答
12298 浏览

unix - 查看 UNIX 中各个处理器的 CPU 使用情况

我正在尝试诊断我认为与 CPU 使用率有关的服务器问题。

但是,当我登录到该框并运行“顶部”时,我看到 %CPU 为 160 或更高。这是因为这是一个多处理器盒子。

如何查看各个处理器的 CPU 使用率?

我怎样才能实时做到这一点?

谢谢!

0 投票
5 回答
3710 浏览

windows - 编写代码使 CPU 使用率显示正弦波

用您喜欢的语言编写代码,让 Windows 任务管理器在 CPU 使用历史记录中显示正弦波。

这是来自微软中国的技术面试测验。我认为这是一个很好的问题。尤其值得了解候选人如何理解和找出解决方案。

编辑:如果可能涉及多核(cpu)情况,这是一个很好的观点。

0 投票
9 回答
21102 浏览

java - 如何阻止 Java while 循环占用超过 50% 的 CPU?

好的,我在一个空程序上对此进行了测试,仅仅运行了一段时间(true){},我的 CPU 就超过了 50%。我有一个我正在开发的游戏,它使用一个 while 循环作为它的主循环,它的 CPU 一直是 100。

我怎样才能让 Java 一遍又一遍地重复某些事情,而不会仅仅为了重复而占用我 50% 以上的 CPU?

0 投票
5 回答
5719 浏览

windows - 有什么方法可以限制进程的 CPU/内存?

问题:我有一台开发机器(读取:快速,大量内存),但用户有一台用户机器(读取:慢,内存不多)。

我可以使用 Fiddler ( http://www.fiddler2.com/fiddler2/ )模拟慢速网络我可以使用 Process Explorer ( http://technet.microsoft.com/en ) 查看 CPU 在一段时间内如何用于进程-us/sysinternals/bb896653.aspx)。

有什么方法可以限制一个进程可以拥有的 CPU 数量,或者一个进程可以拥有的内存量,以便更有效地模拟用户机器?(例如为了隔离性能问题)

我想我可以使用虚拟机,但我正在寻找更轻的东西。

我使用的是 Windows XP,但欢迎任何 Windows 机器的解决方案。谢谢。

0 投票
15 回答
30867 浏览

macos - 命令行命令在一定时间后自动终止命令

我想在一定时间后自动终止命令。我想到了这样的界面:

它将运行带有“args”的“./foo”,但如果它在 5 分钟后仍在运行,则会自动终止它。

将这个想法推广到其他约束可能很有用,例如如果进程使用太多内存则自动终止进程。

是否有任何现有的工具可以做到这一点,或者有人写过这样的东西吗?

补充:乔纳森的解决方案正是我的想法,它在 linux 上就像一个魅力,但我无法让它在 Mac OSX 上工作。我摆脱了 SIGRTMIN 让它编译得很好,但信号只是没有被发送到子进程。有人知道如何在 Mac 上进行这项工作吗?

[添加:请注意,乔纳森提供了适用于 Mac 和其他地方的更新。]

0 投票
2 回答
5039 浏览

windows - 有没有办法查看进程正在使用的每个核心的 CPU 使用量?

我知道在 perfmon 中,您可以看到每个内核的使用量,以及特定进程使用的总 CPU 量。但是,我似乎无法找到一种方法来查看一个进程正在使用多少 CPU,按内核划分。

是否有内置方法可以查看此信息?有没有一种程序化的方式来查看这个?(首选 C#)我是否通过提出这个问题来证明对 Windows(Vista)如何处理核心使用和上下文切换的误解?

编辑:更多澄清我想知道的内容。我的进程仅使用 30-40% 的总 CPU(在四核上)是因为它没有足够的多线程来利用更多,还是因为它太受 I/O 限制并且磁盘访问是瓶颈?

那么根本就没有办法做到这一点吗?(除了确保计算机上没有其他 CPU 活动)

0 投票
4 回答
554 浏览

c++ - 在编译期间估计相对 CPU 使用率

今天早上编译时,我有一个想法。

给定一台专用的 Linux 机器(例如运行 Fedora),用户远程登录并编译(使用 gcc)他们的 c++ 软件,该软件存储在他们自己的机器上(在一个小型 LAN 上),通过符号链接链接到 Linux 机器。

假设每个用户现在正在编译完全相同的代码......一个用户可以在 10 分钟内编译和链接他的代码。

是否需要 2 个用户总共 20 分钟才能同时编译 3 个或 10 个用户呢?

随着用户的增加,是否存在导致收益递减的开销?

作为一个额外的问题 - 你有什么技巧可以提高这个设置的编译效率?