atomic add

I need to implement an atomic add in a kernel. I run a 8800 GTS which I have read does not support compute architecture 1.1 and thus does not support the built in atomic functions. I was wondering if this has changed or if anyone had a suggestion as to how I could implement my own atomic add in the kernel (i.e. with a lock and release). Thanks,


There are two versions of 8800 gts. The newer one supports it. The older one does not.

Assuming I have the older one, how can I add onto a single variable in several threads. There has to be a way to set a lock. Thanks

Check reduction sample in SDK, maybe it will fit your needs.

Thanks, this is exactly what I need. Cheers