我打算学习并行计算,现在我在想MPI或TBB。事实上,我没有太多的经历。我想我最好先从容易管理的东西开始。起初,我可能尝试像粗粒度代码。哪一个对我来说更容易?感谢。
答案 0 :(得分:2)
这取决于你对并行性的定义以及你想要实现的目标。 TBB的重点是利用多核处理器。在这种情况下,并行性意味着同时在多个核上运行。
然而,MPI的主要好处是分布式内存并行计算。在这种情况下,在不同物理机器的集群上运行应用程序,并通过TCP或其他专有协议相互通信。
总之,根据您的问题空间,一个或另一个可能会更好。这实际上取决于你想要解决的问题。
答案 1 :(得分:1)
MPI和TBB的方法非常不同。
MPI基本上是message passing library。这对于开发线程应用程序更加困难,因为它实施了更严格的隔离规则。但是,它允许您扩展到在多个系统上运行的多个进程。
另一方面,TBB非常适合在单个应用程序中使线程更简单,更平易近人。它与Microsoft的concurrency runtime,甚至是TPL in the .NET world。
的方法非常相似