1

我正在尝试更好地编写多线程应用程序,例如提出正确的算法,以便线程不会相互阻塞,并且在需要的地方在线程之间进行正确的同步。这将在 C/Linux 中。

谁能推荐一个我可以编写的简单应用程序,它可以清楚地展示在多核 CPU 中作为多线程与单线程运行时性能/吞吐量的提高。

谢谢。

4

4 回答 4

4

矩阵乘法是一个相当好的起点。它是可并行化的,并且还需要对归约步骤进行一些同步。

于 2012-07-10T19:11:45.027 回答
1

如果您想要提高技能,英特尔线程挑战赛会提供有趣的谜题。这是一个示例问题:

http://software.intel.com/en-us/contests/threading-challenge-students-2011/codecontest.php

于 2012-07-11T00:33:35.093 回答
0

您可以在多个线程中加载图像并执行一些简单的像素操作。例如从 RGB 转换为 HSV,或类似的东西......

这将很简单,但与实际实践非常吻合。

于 2012-07-10T20:55:02.640 回答
-1

独立计算将为您提供多线程的最佳收益。对于多线程性能的简单演示,只需进行几次简单的计算(例如,找到第 N 个斐波那契数)。是不是太简单了?

于 2012-07-10T19:13:47.757 回答