Я заинтересован в реализации / закулисной работе директив #pragma omp flush
и #pragma omp flush(list)
. В частности, я хочу знать
1), как это заставляет частную память / временное представление памяти записывать обратно в основную память.
2), как это предотвращает пересечение чтения / записи через нее, когда они оптимизируются компилятором.
Ответ здесь касается topi c, но немного больше глубины было бы неплохо.