加快程序速度的多种方法
您可以使用Parallelware Analyzer检测可以分配到加速器设备(例如 GPU)的计算。此外,它还提供了针对PWR009和PWR015等 GPU 的优化建议。还可以通过生成将工作负载分配到 GPU 所需的 OpenMP 和 OpenACC 指令来提供帮助。
使用CPU的矢量化功能
现代 CPU 包含在固定长度向量上工作的向量单元(例如,四个双精度数的向量或八个整数的向量),并且可以在一条指令中对一个向量执行单个操作。如果向量化可用,CPU 可以例如从内存中加载四个双精度数,执行四次加法并将四个结果存储回内存,同时在一个双精度数上执行相同的操作。