Thank you both for your help. More information:
I downloaded the very latest CUDA from NVidia, and installed it on a virgin installation of VS 2013. I open up VS 2013, click on “new project”, select “NVIDIA CUDA 7.5 Project”, and give it a name. It creates a new project, with a file called “kernel.cu” that has some basic CUDA Sample code in it.
If I simply click on “run”, it builds, and runs fine. Does some simple demo and a printf. Works OK.
If, however, I select all in this .cu file, and cut/paste in ANY of the Thrust examples (from the Thrust GitHub location), what I describe happens. It builds to completion., although there is a flurry of warnings from within Thrust that say “decorated name length exceeded, name was truncated”. I haven’t a clue what that means, yet the names involved are “yuge”. For example, here’s one:
‘thrust::detail::cons<T0,thrust::detail::cons<thrust::zip_iterator<thrust::tuple<thrust::detail::normal_iterator<thrust::pointer<int,thrust::system::cuda::detail::tag,thrust::use_default,thrust::use_default>>,thrust::permutation_iterator<thrust::detail::normal_iterator<thrust::device_ptr>,thrust::detail::normal_iterator<thrust::pointer<int,thrust::system::cuda::detail::tag,thrust::use_default,thrust::use_default>>>,thrust::transform_iterator<thrust::system::cuda::detail::reduce_by_key_detail::tuple_and,thrust::zip_iterator<thrust::tuple<thrust::transform_iterator<thrust::detail::tail_flags<thrust::zip_iterator<thrust::tuple<thrust::detail::normal_iterator<thrust::pointer<int,thrust::system::cuda::detail::tag,thrust::use_default,thrust::use_default>>,thrust::detail::normal_iterator<thrust::pointer<bool,thrust::system::cuda::detail::tag,thrust::use_default,thrust::use_default>>,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type>>,thrust::equal_to<thrust::tuple<int,bool,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type>>,bool,int>::tail_flag_functor,thrust::counting_iterator<IndexType,thrust::use_default,thrust::use_default,thrust::use_default>,thrust::use_default,thrust::use_default>,thrust::detail::normal_iterator<thrust::pointer<bool,thrust::system::cuda::detail::tag,thrust::use_default,thrust::use_default>>,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type>>,thrust::use_default,thrust::use_default>,thrust::permutation_iterator<thrust::detail::normal_iterator<thrust::device_ptr>,thrust::detail::normal_iterator<thrust::pointer<int,thrust::system::cuda::detail::tag,thrust::use_default,thrust::use_default>>>,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type>>,thrust::detail::cons<thrust::detail::wrapped_function<thrust::detail::binary_transform_if_functor<thrust::plus,thrust::identity>,void>,thrust::detail::cons<int,thrust::detail::map_tuple_to_consthrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type,thrust::null_type::type>>>>::cons’
Again, lord only knows what that all means.
TXBob, this is, apparently, a 32-bit debug version of the app (I tried a 64-bit version, no change). I’m running the latest Win10 updates, Win10 Pro 64-bit OS on an x64 processor. It is on a good sized machine with an i7, 16gb of memory and two EVGA GeForce GTX 980s in it. I’m not specifying the GPU architecture, it’s the default, and the gencode string is "-gencode=arch=compute_20,code="sm_20,compute_20" which appears to match this architecture.
Thanks for any help.
Chris