2017-03-22 7 views
0

do-whileループでatomicCASを使用していて、最初の並列プログラムで必要なときにさまざまな算術演算を実行しています。 do-whileatomicCASを使用してインクリメントするのと同じことになるatomicIncのような他の操作があることがわかりますか?これは(クロックサイクルの点で)より効率的でしょうか、またはatomicCASの過度使用から移行する際のポイントはありませんか?atomicCASを使用するよりも、より具体的なアトミック操作をいつ好むべきですか?

+0

T Willy、@ talonmiesの回答を受け入れることを検討してください。 – einpoklum

答えて

3

この質問に対する唯一の賢明な答えは、「同じ操作を実行するための基本原始プリミティブが構築されているすべてのシナリオ」です。

nVIDIA GPUの場合、算術演算のまわりの擬似ミューテックスにatomicCASを使用すると、他の方法がない場合にのみ意味があります。 PTX命令に変換される原子プリミティブを使用することで、パフォーマンスの差が現時点でない場合でも、将来のハードウェアや将来のツールチェーンでパフォーマンスを向上させることが可能になります。

関連する問題