0
考慮到openmp使用simd模型,即每條指令都由所有線程執行的事實,所以在編寫openmp並行應用程序時應該小心,爲什麼我們應該更喜歡openmp而不是多線程版本的相同算法?OpenMP SIMD vs多線程
考慮到openmp使用simd模型,即每條指令都由所有線程執行的事實,所以在編寫openmp並行應用程序時應該小心,爲什麼我們應該更喜歡openmp而不是多線程版本的相同算法?OpenMP SIMD vs多線程
從3.0開始,OpenMP不再是SiMD了。
而且常見的原因有:
由於OpenMP遠遠更易於編寫。讓我問:編寫OpenMP並行應用程序時爲什麼要小心? – Nobody 2012-01-29 13:45:09
由於虛假共享,避免條件語句(因爲SIMD) – peeyush 2012-01-29 13:49:15
我不是openMP專家,但據我的理解,只需通過添加雜注並將其轉換爲單個核心應用程序,就可以輕鬆創建多線程應用程序,只需通過更改編譯標誌。 OpenMp根據cpus創建確切的線程數。 – sherif 2012-01-29 13:53:42