Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我在 XCODE 5 中运行一个简单的基于控制台的 C++ 应用程序。
我有一个 2.8GHZ 英特尔酷睿 i7 处理器。如果我查看 CPU 利用率,以下是统计信息:
My_Program: 100% Other Processes: 168% Free: 537%
是否可以将免费的 537% 用于 My_Program ?是否可以在 XCODE 或 Eclipse 中将 CPU 利用率提高 > 100%?
谢谢,任何建议表示赞赏。
唯一的方法是并行化 Your_Program。这使您的程序能够使用至少一个以上的线程(如有必要,超过一个处理器),根据定义,该线程的上限为 1 个完全使用的单个虚拟内核(因此您在“顶部”上看到的“CPU”的 100%在 linux 上或其他系统中的等效项)
查看OpenMP和OpenMPI。
如果你想使用单机,我强烈建议 OpenMP 开始熟悉并行编程。互联网上充满了不同语言的教程和“hello world”。
在 C++ 中,使用 OpenMP 并行化简单循环是一项微不足道的任务,但掌握并行化的技巧和概念却是一项终生的努力。
如果我不得不猜测(我对 OSX 一无所知),我会说每个 100% 代表 CPU 的一个核心。这意味着您可以通过并行化代码将其提高到 100% 以上,这并非易事(甚至可能,这取决于您的代码所做的事情)。不过,我可能完全错了。