I agree, I also don’t think that atomic operations are a requirement, but it is of possible utility in aggregating final results in some reductions. Since I noticed the issue with the current set of make files, I just wanted to let others know about it so as to avoid some potential frustration. To make atomics work requires more effort in reworking the compile and link parameters in the current make configuration (which goes a bit beyond the scope of the lab exercises). It did work in some earlier versions of the lab.
Understood. It did work in a previous version of the labs. It takes wading through the makefile tree to find all of the appropriate flag definitions. I believe that the issue arises from changes that to the common/platform makefiles. I was not able to get it to work just manipulating the local src makefiles.
There is no fundamental
limitation in parboil for atomics. If you would like to use atomics in a
particular benchmark, you should be able to change the Makefile for that
benchmark (benchmarks/<app>/src/<cuda>/Makefile) and add the
appropriate application-specific compiler flags to a EXTRA_CUDACFLAGS