【发布时间】:2012-02-21 15:23:34
【问题描述】:
考虑到openmp使用simd模型,即每条指令都由所有线程执行,所以在编写openmp并行应用程序时应该小心,为什么我们应该更喜欢openmp而不是相同算法的多线程版本?
【问题讨论】:
-
因为 OpenMP 更容易编写。让我问:为什么在编写 OpenMP 并行应用程序时要小心?
-
因为虚假共享,避免条件语句(因为SIMD)
-
我不是 openMP 专家,但据我了解,您只需添加编译指示即可轻松创建多线程应用程序,只需更改编译标志即可将其转换为单核应用程序。 OpenMp 会根据您的 cpus 创建确切数量的线程。
标签: multithreading openmp