2009-06-05 119 views
0

我现在正在运行一个应用程序,它似乎正在全速运行,但即使风扇似乎在旋转到最大值,并且活动监视器报告应用程序正在使用100%的处理器,但我怀疑它最多只能使用我机器上两个内核中的一个内核的100%。如何控制OS X上的应用程序的CPU使用率?

如何告诉OS X允许应用程序使用我的计算机的处理能力的100%或尽可能多的OS?我已经尝试了一些终端命令,比如“nice”和“renice”来设置这个过程的优先级,但仍然无法让它在全速运行时运行。

我也想知道如何做相反的事情,设置应用程序的处理器使用限制,例如设置应用程序X以20%运行。

这是可能的,而不需要修改应用程序的代码?

回答

3

答案取决于您的应用程序是否是多线程的。如果这是一个单线程应用程序,除非您专门使其成为多线程,否则该进程将在多核硬件的一个核心上运行。对此,您无能为力,这是底层操作系统的一项功能。

如果您的程序是多线程的,那么可以在不同的核心上执行不同的线程。这将增加整个流程的使用率并允许数字超过100%。

但是,您不能强制机器使用可用的“全部”处理能力,但您可以很好地影响它。

为了减少处理器的使用量,可以使用nice来降低进程的优先级。如果你是root用户,你也可以使用nice来增加你的进程的优先级

+0

明白了。相反呢?是否有可能像应用程序上的电子刹车一样模拟它在较慢的机器上运行? 感谢您的回答。 – victrnava 2009-06-06 02:07:07

相关问题