使用线程进行矩阵乘法

时间:2011-03-13 15:04:02

标签: c++ unix g++ pthreads

我试图通过为每个输出单元使用1个线程将2个矩阵相乘 我在unix上使用c ++ / g ++ 我该怎么做呢? 我可以循环吗?

1 个答案:

答案 0 :(得分:1)

这是我的建议:

  1. 编写一个计算一个输出单元格的函数。给它指示要计算哪个单元格的参数。
  2. 编写一个单线程程序,它使用循环计算每个单元格(从“1”调用该函数)。存储所有结果,直到计算完所有单元格后才写出结果。
  3. 修改程序,这样每个循环都会创建一个执行该函数的线程,而不是每个循环调用该函数。
  4. 弄清楚如何让“主”程序等到所有线程都完成后再写出所有结果。
  5. 我认为这会给你一个制定解决方案的策略,而不会为你做功课。

    如果你有一个它不起作用,请在这里发布你的代码,人们将帮助你调试它。重要的部分不是为了得到一个好的答案,而是为了让你学会如何解决这类问题 - 所以如果有人给你答案,它就不会真正帮助你。