2013-02-13 63 views
2

在OpenMP中,我可以刷新指定的一组变量或整个缓存。OpenMP flush与flush(列表)

有没有人有这个操作的性能的想法?只刷新真正已经改变的变量或者“快速冲洗”这些变量是否有意义,我不应该担心?

我有链接列表,我需要刷新我的线程不时。我是否应该遍历列表并单独刷新每个元素,或者直接刷新所有内容?

回答

1

给出的建议中的OpenMP 3.1标准:

使用的冲洗构建一个列表是非常容易出错, 用户强烈尝试这样做。

和下面的句子:

实现可以通过忽略 列表,对待它同样作为冲洗没有一个列表实现冲洗一个列表。

我会实施第一个解决方案pragma omp flush(没有任何列表)。

然后,我真的会仔细考虑,然后再尝试优化这个实现,添加一个清单来刷新构造,因为代码不会是性能便携的