【发布时间】:2012-11-30 17:23:56
【问题描述】:
我正在互联网上搜索,以找到一些算法,该算法可以使用 2 个或 n 个进程并行遍历一个图,而无需一个进程进入另一个进程先前访问过的节点,这样我就可以加快整个扫描任务的速度整个图表,但我找不到任何东西。有没有什么算法可以帮助我并行完成这样的任务?值得吗?
注意: n 个进程共享访问和访问节点的相同内存
谢谢
【问题讨论】:
-
您还应该指出您的内存模型是什么。是共享内存吗?
-
我认为这种情况看起来像是生产者消费者问题,但如果我让进程相互等待,那么值得吗?
-
我确实会尝试以生产者消费者的身份进行操作,但是以块而不是单个元素的形式从队列中写入和读取,并在添加时做一些额外的工作以确保元素不会被访问,因为它上次检查
-
是的,它们之间可以有多个循环
-
这个问题已经被回答(接受),但我只是想知道你是否在修改实际的数据图。你的遍历是只读的吗?