我可以使用线程还是必须使用两个矩阵相乘的过程?

时间:2019-04-05 13:09:15

标签: c process pthreads

我的作业问题指出,我要将矩阵A的一部分和整个B发送给每个工作进程,但是我(以及班上的很多人)不确定这是否需要使用fork()创建进程或者是否可以使用pthreads。问题如下:

编写一个并行程序,使用主进程和p个工作进程计算两个n×n稠密矩阵C = A×B的乘积。

主进程将矩阵A水平划分为p个相等的切片(我们假设p 除n)并将整个矩阵B和A的一个切片发送给每个工作进程 (A分区与工作进程之间存在一对一的映射。)

要使用套接字和SOCK_STREAM

我的作业目前这样运行:

程序将使用两个矩阵并将它们填充为随机值,然后使用套接字将A和B发送到另一个程序。我创建了一个pthread数组,并将A的一部分和B的整个部分发送到每个线程,最后将乘积矩阵返回到第一个程序。

矩阵的维数在命令行中指定。

0 个答案:

没有答案