Questa domanda è strettamente correlata a this one, ma la mia appartiene al mondo CUDA.Diversi thread che scrivono lo stesso valore nella stessa posizione di memoria globale
Ho diversi thread nel mio kernel che potrebbero scrivere lo stesso valore nella stessa posizione di memoria globale. Questo ha funzionato bene, ma temo che potrebbe essere potenzialmente fasullo, e che finora sono stato solo fortunato.
C'è qualche possibilità di danneggiamento della memoria o comportamento imprevisto nel mio flusso di lavoro (a causa di dati razziali, sincronizzazione della cache, ecc.)?
La risposta breve è sì. Ridisegnare il proprio algoritmo o utilizzare gli operatori di accesso alla memoria atomica se si deve assolutamente scrivere più thread sulla stessa memoria. – talonmies
Avrei dovuto fare questa domanda prima di avere i miei algoritmi quasi pronti per andare :(Va bene, è tempo per qualche ripensamento e refactoring! Sarebbe bello sapere il motivo, però. – Auron
check out: http://stackoverflow.com/ questions/5953955/threads-concurrent-write – jkysam