Merge branch 'shawnz_bugs_fix' into 'master'

Bug fix for 5241914, 5164417 and 5097376

See merge request cuda-samples/cuda-samples!107
This commit is contained in:
Rob Armstrong 2025-04-28 08:53:11 -07:00
commit ee15cc0fe2
3 changed files with 7 additions and 3 deletions

View File

@ -380,7 +380,7 @@ To set up GLFW on a Windows system, Download the pre-built binaries from [GLFW w
#### OpenMP #### OpenMP
OpenMP is an API for multiprocessing programming. OpenMP can be installed using your Linux distribution's package manager system. It usually comes preinstalled with GCC. It can also be found at the [OpenMP website](http://openmp.org/). OpenMP is an API for multiprocessing programming. OpenMP can be installed using your Linux distribution's package manager system. It usually comes preinstalled with GCC. It can also be found at the [OpenMP website](http://openmp.org/). For compilers such as clang, `libomp.so` and other components for LLVM must be installed separated. You will also need to set additional flags in your CMake configuration files, such as: `-DOpenMP_CXX_FLAGS="-fopenmp=libomp" -DOpenMP_CXX_LIB_NAMES="omp" -DOpenMP_omp_LIBRARY="/path/to/libomp.so"`.
#### Screen #### Screen

View File

@ -20,7 +20,11 @@ endif()
include_directories(../../../Common) include_directories(../../../Common)
# Source file # Source file
find_package(OpenMP REQUIRED) if(CMAKE_GENERATOR MATCHES "Visual Studio")
find_package(OpenMP REQUIRED C CXX)
else()
find_package(OpenMP REQUIRED)
endif()
if(${OpenMP_FOUND}) if(${OpenMP_FOUND})
# Add target for UnifiedMemoryStreams # Add target for UnifiedMemoryStreams

View File

@ -260,7 +260,7 @@ int linearSolverQR(cusolverDnHandle_t handle, int n, const double *Acopy, int ld
checkCudaErrors(cudaMemcpy(&h_info, info, sizeof(int), cudaMemcpyDeviceToHost)); checkCudaErrors(cudaMemcpy(&h_info, info, sizeof(int), cudaMemcpyDeviceToHost));
if (0 != h_info) { if (0 != h_info) {
fprintf(stderr, "Error: LU factorization failed\n"); fprintf(stderr, "Error: QR factorization failed\n");
} }
checkCudaErrors(cudaMemcpy(x, b, sizeof(double) * n, cudaMemcpyDeviceToDevice)); checkCudaErrors(cudaMemcpy(x, b, sizeof(double) * n, cudaMemcpyDeviceToDevice));