5

Apple 在 Snow Leopard 中引入了 Grand Central Dispatch(一个线程池),但没有说明为什么应该在 OpenMP 上使用它,OpenMP 是跨平台的,也适用于 Leopard。它们都非常易于使用并且在功能上看起来相似。那么,有什么想法吗?

4

3 回答 3

7

GCD 在运行时评估适当级别的资源以解决问题时要好得多 - OpenMP 根据环境变量等信息决定为一组并行任务调用多少线程。GCD 查看当前的系统负载和可用内核的数量,并允许适当数量的线程运行——随着资源使用情况的实时变化而向上和向后扩展。这意味着 GCD 程序应该在一般情况下获得更好的结果。当然,如果你已经购买了一组专用的机器来运行你的代码,那么这是没有意义的,因为你的代码几乎没有其他冲突。

于 2009-09-02T16:58:09.243 回答
2

现在 GCD 已经开源了,问题是把这两个工具并排放置,看看谁活到最后。

于 2009-09-11T23:29:10.797 回答
0

性能和操作系统级集成?

于 2009-09-02T16:51:23.720 回答