Apple 在 Snow Leopard 中引入了 Grand Central Dispatch(一个线程池),但还没有解释为什么应该在 OpenMP 上使用它,OpenMP 是跨平台的,也适用于 Leopard。它们都非常易于使用且功能相似。那么,有什么想法吗?
最佳答案
GCD 在运行时评估适当级别的资源以解决问题时要好得多 - OpenMP 根据环境变量等信息决定为一组并行任务调用多少线程。 GCD 查看当前系统负载和可用内核数量,并允许运行适当数量的线程 - 随着资源使用情况的实时变化而扩展和回缩。这意味着 GCD 程序应该在一般情况下获得更好的结果。当然,如果您已经购买了一组专用的机器来运行您的代码,那么这是没有实际意义的,因为您的代码几乎没有其他冲突。
关于macos - 为什么我应该通过 OpenMP 使用 Grand Central Dispatch?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1368875/