如何为程序分配更多 cpu 的使用
How to allocate more cpu usage to a program
我运行我的电脑上只有一个程序来处理数字,它占用了大约 25%CPU(所有其他内置应用程序都不到 4%CPU).由于这是我 运行 唯一的计划,我如何将 CPU 百分比从 25% 提高到 40%?我知道改变优先级并没有多大帮助,或者亲和力。我正在使用 Windows 10。感谢您的帮助!
你(可能)做不到。
您不能这样做的原因可能是您 运行 的程序是 Single-Threaded and you have a Quad-Core-Processor。 25% 是一个整体(处理器)的四分之一。这意味着您的 Four-Core-Processor 的一个核心已完全使用 - 导致 25% 的使用率。
除非您可以使您的软件 Multi-Threaded(这意味着并行使用多个内核)否则您将受此限制。
在多个处理器或内核之间分配要求苛刻的计算任务(又名数字运算)通常不是一个微不足道的挑战。成功的可能性取决于将问题划分为 sub-problems 的难易程度,每个问题要么不需要相互通信,要么需要足够少量的通信,这样通信开销就不会破坏所有理论上可以通过使用多个处理器获得速度增益。
事实上,这通常是 case-by-case 的决定。如果幸运的话,有一个针对您的问题域的特殊库供您使用。
有助于并行化(相当)好的问题示例是
- 视频编码(不同时间段实际上是相互独立的,可以单独编码)
- 像 Mandelbrot 这样的分形(分形的任何区域都完全独立于其他区域)
- 像碰撞求解器这样的显式结构力学方程(求解体积只在表面边界上相互作用,所以处理器之间的一些通信是必要的,但不多)
并行化效果不佳的示例:
- 密集矩阵求逆(每个分量与其他分量的最大依赖性)
- 隐式结构力学方程,如非线性平衡解(需要矩阵求逆求解,同上题)
我运行我的电脑上只有一个程序来处理数字,它占用了大约 25%CPU(所有其他内置应用程序都不到 4%CPU).由于这是我 运行 唯一的计划,我如何将 CPU 百分比从 25% 提高到 40%?我知道改变优先级并没有多大帮助,或者亲和力。我正在使用 Windows 10。感谢您的帮助!
你(可能)做不到。
您不能这样做的原因可能是您 运行 的程序是 Single-Threaded and you have a Quad-Core-Processor。 25% 是一个整体(处理器)的四分之一。这意味着您的 Four-Core-Processor 的一个核心已完全使用 - 导致 25% 的使用率。
除非您可以使您的软件 Multi-Threaded(这意味着并行使用多个内核)否则您将受此限制。
在多个处理器或内核之间分配要求苛刻的计算任务(又名数字运算)通常不是一个微不足道的挑战。成功的可能性取决于将问题划分为 sub-problems 的难易程度,每个问题要么不需要相互通信,要么需要足够少量的通信,这样通信开销就不会破坏所有理论上可以通过使用多个处理器获得速度增益。
事实上,这通常是 case-by-case 的决定。如果幸运的话,有一个针对您的问题域的特殊库供您使用。
有助于并行化(相当)好的问题示例是
- 视频编码(不同时间段实际上是相互独立的,可以单独编码)
- 像 Mandelbrot 这样的分形(分形的任何区域都完全独立于其他区域)
- 像碰撞求解器这样的显式结构力学方程(求解体积只在表面边界上相互作用,所以处理器之间的一些通信是必要的,但不多)
并行化效果不佳的示例:
- 密集矩阵求逆(每个分量与其他分量的最大依赖性)
- 隐式结构力学方程,如非线性平衡解(需要矩阵求逆求解,同上题)