Brad King
b7d8d80a62
Merge topic 'cmake_provide_include_dir_for_toolkit'
...
44f3acb2 CUDA: Detect the toolkit include directories
2017-02-14 08:30:30 -05:00
Robert Maynard
44f3acb202
CUDA: Detect the toolkit include directories
...
The `nvcc -v` output provides what include directories need to be added
to use the CUDA toolkit from other languages ( C/C++ ).
2017-02-10 16:08:06 -05:00
Pierre Moreau
166b339387
Tests/Cuda: Select a CUDA device supporting compute 3.0
2017-02-10 13:47:05 -05:00
Pierre Moreau
cbe4d5957b
Tests/Cuda: Return a non-zero code if errors occurred
2017-02-10 13:46:42 -05:00
Pierre Moreau
8731701cb6
Tests/Cuda: Use memory allocated on the GPU in the kernels
2017-02-10 13:46:08 -05:00
Pierre Moreau
0ae5386aa9
Tests/Cuda: Add missing separable compilation property
...
This resulted in `mixed_kernel()` returning an "invalid device function"
at runtime for `file1_func()`.
Suggested-by: Robert Maynard
2017-02-10 13:46:08 -05:00
Pierre Moreau
ce19607fed
Tests/Cuda: Fix missing CUDA static library at runtime on macOS
...
Suggested-by: Robert Maynard
2017-02-10 13:46:07 -05:00
Pierre Moreau
008ed80dcf
Tests/Cuda: Output error messages to std::cerr instead of std::cout
2017-02-10 13:46:07 -05:00
Pierre Moreau
c0d7bb8368
Tests/Cuda: Print asynchronous error messages, if any
...
As kernel launches are asynchronous, a `cudaGetLastError()` right after
the kernel launch might be executed while the kernel is still running.
Synchronizing the device will ensure that all the work is completed
before progressing further on, and allows to catch errors that were
previously missed.
The `cudaGetLastError()` after the `cudaDeviceSynchronize()` is there
to reset the error variable to `cudaSuccess`.
2017-02-10 13:46:07 -05:00
Pierre Moreau
21a125cdbf
Tests/Cuda: Print error message if mixed_kernel failed
2017-02-10 13:46:06 -05:00
Pierre Moreau
eebb2be8b0
Tests/Cuda: Add identifiers to error messages
2017-02-10 13:46:06 -05:00
Pierre Moreau
84f3c87b03
Tests/Cuda: Print error message if an error occurred
...
Fixes c59811a2 "CUDA: Tests now state why they are failing when no CUDA card is found."
2017-02-10 13:46:06 -05:00
Robert Maynard
dc5051f1c1
CUDA: Test that CUDA flags are used when device linking executables.
2017-01-12 15:13:31 -05:00
Brad King
5599d858c7
CUDA: Port test cases to Windows with MSVC host compiler
2017-01-12 10:39:04 -05:00
Robert Maynard
1ce39a1e73
CUDA: ConsumeCompileFeatures use cxx_nullptr for wider compiler support
...
We need to use a C++11 feature that is supported by the widest
range of compilers, so we chose nullptr instead of constexpr.
2017-01-11 10:40:38 -05:00
Robert Maynard
c59811a233
CUDA: Tests now state why they are failing when no CUDA card is found.
2016-12-15 15:57:01 -05:00
Brad King
c1a5507917
CUDA: Fix Cuda.Complex test case extern function signatures
...
Make the return types of the extern function declared in `main.cpp`
match those in the method implementations.
2016-12-09 14:19:22 -05:00
Robert Maynard
7b9131da64
CUDA: Add tests to verify CUDA compiler works properly.
2016-11-14 16:40:50 -05:00