gcc
numaralı telefondan OpenMP
kaynağını öğrenmem gerekiyor. OpenMP
(3.0 ve 4.0) belgelerini okudum. Bildiğim kadarıyla OpenMP, work-sharing
mekanizmasını kullandı. work-sharing
mekanizmasını anladığım gibi, ileti dizileri arasındaki görevleri iletirken, iş parçacığı çalışıyor. Veya iş parçacıkları arasında veri dağıtımı, bu iş parçacıkları yürütmeden önce yürütüyor mu?İş paylaşımı mekanizması (OpenMP'de) iş parçacıkları yürütülürken iş parçacıkları arasındaki işlemleri iletiyor mu?
-2
A
cevap
1
görevleri ile OpenMP kullanıyorsanız görevleri bir veya daha fazla görev kuyruğunda depolanır. Bir iş parçacığı kendisini boşta bulursa, komşu bir sıradaki görevleri snoop yapar. Bu libgomp
iç.
için OpenMP paralel bir statik program ile kullanırsanız, hiçbir görev gözetimi gerçekleşmez. Bir dinamik zamanlama ile için OpenMP paralel kullanırsanız
, takımdaki ipler yüzden boşta evre takımın geri kalanından görevleri alacak dinamik işi böler. Genel olarak, iş parçacığı çalışma zamanında iletişim kurmaya ihtiyaç duyduğunda, döngüler işleme koyulmadan geçirilir.
+0
Çok teşekkürler! –
[İş paylaşımını kendiniz uygulayabilirsiniz çok öğrenebilirsiniz] (http://stackoverflow.com/a/30591616/2542702). –