Skip to content

Tons of warnings when use Eigen and CUDA concurrently.

Hi, I used both CUDA (version 11) and Eigen (the latest version) concurrently on Linux. I used Eigen in the host side. I just included Eigen and cuda in my main.cu file, like:

#include <Eigen/Dense>

#include <cuda_runtime.h>

My cmakelist file is like:

cmake_minimum_required (VERSION 3.5)

project (demo)

FIND_PACKAGE(CUDA REQUIRED)

if (NOT CUDA_FOUND)

message(STATUS "CUDA not found. Project will not be built.")

endif(NOT CUDA_FOUND)

##include and link to other libraries

INCLUDE_DIRECTORIES(Eigen path)

CUDA_ADD_EXECUTABLE(main ${PROJECT_SOURCE_DIR}/src/main.cu OPTIONS -arch=sm_60)

target_link_libraries (main otherlibraries)

if ( CMAKE_COMPILER_IS_GNUCC )

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Wmaybe-uninitialized")

endif()

if ( MSVC )

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4 -Wmaybe-uninitialized")

endif()

The compile is successful but tons of warnings occur, like Eigen/src/Geometry/Quaternion.h(448): warning: __device__ annotation is ignored on a function("Map") that is explicitly defaulted on its first declaration

How can I silence these warnings? I think they do not yield negative effects since I just use Eigen in host side.