OpenMP的高级描述是什么?
Wikipedia article声明"OpenMP (开放多处理)是一种应用程序编程接口,它支持在许多体系结构上用C、C++和Fortran进行多平台共享内存多处理编程,包括Unix和Microsoft Windows平台。它由一组影响运行时行为的编译器指令、库例程和环境变量组成。“什么?
它与线程、线程池和工作窃取等其他并发方法相比如何?
发布于 2010-08-20 00:25:11
它是一组扩展,为C/C++提供了并行运行代码某些部分的能力,而无需显式地管理(创建、销毁、分配)线程。
它允许你以声明式的方式并行运行代码的某些部分,从而将你从管理线程的复杂性中抽象出来。代码示例总是有帮助的:
# pragma omp parallel \
shared ( n, x, y ) \
private ( i ) \
reduction ( + : xdoty )
# pragma omp for
for ( i = 0; i < n; i++ )
{
xdoty = xdoty + x[i] * y[i];
}https://stackoverflow.com/questions/3523863
复制相似问题