Thanks for all the help,I have removed Cuda12.6 and installed cuda12.8. Weird that the website took me to 12.6 over 12.8 in the first place,For the second part, is the openmp directives simply these lines in the CMAKELists.txt file?# ----------------------------------------
# locate OpenMP
find_package( OpenMP )
if (OPENMP_FOUND)
message( STATUS "Found OpenMP" )
message( STATUS " OpenMP_C_FLAGS ${OpenMP_C_FLAGS}" )
message( STATUS " OpenMP_CXX_FLAGS ${OpenMP_CXX_FLAGS}" )
set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}" )
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}" )
endif()Also do I need to specify the intel C/C++ compiler? I included these in the CMAKE GUICheersOn Sat, Jan 25, 2025 at 7:03 PM Andrew Cunningham <ad...@a-cunningham.com> wrote:
- "first from the build output it seems like there are some missing parenthesis in some of the files"
- Remove all your existing CUDA installs and upgrade to CUDA 12.8 ( the latest)
- max': requires '-openmp:llvm' command line option(s)" like 10 or 20 instances
- This is the problem as the Microsoft CL compiler only supports openmp 2.0
- You can fix them manually by commenting out the openmp directives.
- Or reconfiguring with CMake from scratch to use the Intel C++ Compiler.
I just went through the whole process from beginning to end and I was able to build everything ( except for the openmp issue which required manual commenting of the #pragma)Note that the LAPACK_LIBRARIES was filled by CMakeMicrosoft Visual Studio Professional 2022 (64-bit) Version 17.12.3On Jan 25, 2025, at 8:22 AM, justin greige (GreigeJ) <julietg...@gmail.com> wrote:Looking at the errors,first from the build output it seems like there are some missing parenthesis in some of the files"1>C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.6/include\cuda/std/detail/libcxx/include/limits(155): error : expected an identifier1> __declspec(__host__) __declspec(__device__) static constexpr type (() < () ? () : ()) noexcept"as well as some errors like this"1>C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.6/include\cuda/std/detail/libcxx/include/limits(155): error : attribute "__host__" does not apply here1> __declspec(__host__) __declspec(__device__) static constexpr type (() < () ? () : ()) noexcept""C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.6/include\cuda/std/detail/libcxx/include/limits(155): error : memory qualifier on data member is not allowed1> __declspec(__host__) __declspec(__device__) static constexpr type (() < () ? () : ()) noexcept"In the error list there errors show up multiple times"Error MSB6006 "link.exe" exited with code 1181" 3 instances"Error C7660 'max': requires '-openmp:llvm' command line option(s)" like 10 or 20 instances"Error LNK1181 cannot open input file 'lib\Release\magma.lib'" the other 610 instancesYes I have CUDA 12.6 installed, CMAKE 3.24.1, and OneAPI 2025Although I have noticed that I also had CUDA 11.2 installedI am cleaning that up and trying againCheers
On Jan 26, 2025, at 10:17 AM, justin greige <julietg...@gmail.com> wrote:
Sorry Another thing I noticed is in the CMAKE_INSTALL_PREFIX entry, it calls the folder "C:/Program Files (x86)/MAGMA" but that does not exist.I am missing some files?
On Sun, Jan 26, 2025 at 1:22 PM justin greige <julietg...@gmail.com> wrote:
Thanks for all the help,I have removed Cuda12.6 and installed cuda12.8. Weird that the website took me to 12.6 over 12.8 in the first place,For the second part, is the openmp directives simply these lines in the CMAKELists.txt file?# ----------------------------------------
# locate OpenMP
find_package( OpenMP )
if (OPENMP_FOUND)
message( STATUS "Found OpenMP" )
message( STATUS " OpenMP_C_FLAGS ${OpenMP_C_FLAGS}" )
message( STATUS " OpenMP_CXX_FLAGS ${OpenMP_CXX_FLAGS}" )
set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}" )
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}" )
endif()Also do I need to specify the intel C/C++ compiler? I included these in the CMAKE GUI
<CMAKE_SC3.PNG>Cheers
On Sat, Jan 25, 2025 at 7:03 PM Andrew Cunningham <ad...@a-cunningham.com> wrote:
- "first from the build output it seems like there are some missing parenthesis in some of the files"
- Remove all your existing CUDA installs and upgrade to CUDA 12.8 ( the latest)
- max': requires '-openmp:llvm' command line option(s)" like 10 or 20 instances
- This is the problem as the Microsoft CL compiler only supports openmp 2.0
- You can fix them manually by commenting out the openmp directives.
- Or reconfiguring with CMake from scratch to use the Intel C++ Compiler.
I just went through the whole process from beginning to end and I was able to build everything ( except for the openmp issue which required manual commenting of the #pragma)Note that the LAPACK_LIBRARIES was filled by CMake
- "first from the build output it seems like there are some missing parenthesis in some of the files"
- Remove all your existing CUDA installs and upgrade to CUDA 12.8 ( the latest)
- max': requires '-openmp:llvm' command line option(s)" like 10 or 20 instances
- This is the problem as the Microsoft CL compiler only supports openmp 2.0
- You can fix them manually by commenting out the openmp directives.
- Or reconfiguring with CMake from scratch to use the Intel C++ Compiler.
I just went through the whole process from beginning to end and I was able to build everything ( except for the openmp issue which required manual commenting of the #pragma)Note that the LAPACK_LIBRARIES was filled by CMake
Microsoft Visual Studio Professional 2022 (64-bit) Version 17.12.3
On Jan 25, 2025, at 8:22 AM, justin greige (GreigeJ) <julietg...@gmail.com> wrote:
The C compiler identification is MSVC 19.36.32535.0
The CXX compiler identification is MSVC 19.36.32535.0
Detecting C compiler ABI info
Detecting C compiler ABI info - done
Check for working C compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.36.32532/bin/Hostx64/x64/cl.exe - skipped
Detecting C compile features
Detecting C compile features - done
Detecting CXX compiler ABI info
Detecting CXX compiler ABI info - done
Check for working CXX compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.36.32532/bin/Hostx64/x64/cl.exe - skipped
Detecting CXX compile features
Detecting CXX compile features - done
CMake Warning at CMakeLists.txt:76 (message):
The compiler C:/Program Files/Microsoft Visual
Studio/2022/Community/VC/Tools/MSVC/14.36.32532/bin/Hostx64/x64/cl.exe
doesn't support the -std=c++11 flag. Some code may not compile.
CMake Warning at CMakeLists.txt:83 (message):
The compiler C:/Program Files/Microsoft Visual
Studio/2022/Community/VC/Tools/MSVC/14.36.32532/bin/Hostx64/x64/cl.exe
doesn't support the -std=c99 flag. Some code may not compile.
Building without Fortran compiler
Using -DADD_ for Fortran calling convention
Found OpenMP
OpenMP_C_FLAGS -openmp
OpenMP_CXX_FLAGS -openmp
The CUDA compiler identification is NVIDIA 12.8.61
Detecting CUDA compiler ABI info
Detecting CUDA compiler ABI info - done
Check for working CUDA compiler: C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.8/bin/nvcc.exe - skipped
Detecting CUDA compile features
Detecting CUDA compile features - done
Found CUDA
CUDA_CUDART_LIBRARY: CUDA::cudart
compile for CUDA arch 8.0 (Ampere)
Define -DMAGMA_HAVE_CUDA -DMAGMA_CUDA_ARCH_MIN=800
Searching for BLAS and LAPACK. To override, set LAPACK_LIBRARIES using ccmake.
Could NOT find BLAS (missing: BLAS_LIBRARIES)
Could NOT find LAPACK (missing: LAPACK_LIBRARIES)
Reason given by package: LAPACK could not be found because dependency BLAS could not be found.
CMake Deprecation Warning at CMakeLists.txt:752 (cmake_policy):
The OLD behavior for policy CMP0037 will be removed from a future version
of CMake.
The cmake-policies(7) manual explains that the OLD behaviors of all
policies are deprecated and that a policy should be set to OLD only under
specific short-term circumstances. Projects should be ported to the NEW
behavior and not rely on setting a policy to OLD.
pkgconfig lib/pkgconfig/magma.pc
Flags
CMAKE_INSTALL_PREFIX: C:\MAGMA
CFLAGS: /DWIN32 /D_WINDOWS -DADD_ -openmp -W4 -MP -DMAGMA_NOAFFINITY
CXXFLAGS: /DWIN32 /D_WINDOWS /GR /EHsc -DADD_ -openmp -W4 -MP -DMAGMA_NOAFFINITY
NVCCFLAGS:
FFLAGS:
LIBS: -LC:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.8/lib/x64 -lcudart -lcublas -lcusparse
blas_fix: (MacOS Accelerate only)
LAPACK_LIBRARIES:
INCLUDE_DIRECTORIES: -IC:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.8/include -IC:/Users/julie/Documents/GitHub/Windows_PCIE/hardware_acceleration/magma-2.8.0/build/include -IC:/Users/julie/Documents/GitHub/Windows_PCIE/hardware_acceleration/magma-2.8.0/include -IC:/Users/julie/Documents/GitHub/Windows_PCIE/hardware_acceleration/magma-2.8.0/control -IC:/Users/julie/Documents/GitHub/Windows_PCIE/hardware_acceleration/magma-2.8.0/magmablas -IC:/Users/julie/Documents/GitHub/Windows_PCIE/hardware_acceleration/magma-2.8.0/sparse/include -IC:/Users/julie/Documents/GitHub/Windows_PCIE/hardware_acceleration/magma-2.8.0/sparse/control -IC:/Users/julie/Documents/GitHub/Windows_PCIE/hardware_acceleration/magma-2.8.0/testing
CUDA_CUDART_LIBRARY: CUDA::cudart
CUDA_CUBLAS_LIBRARIES: CUDA::cublas
CUDA_cusparse_LIBRARY: CUDA::cusparse
Fortran modules:
On Jan 25, 2025, at 8:22 AM, justin greige (GreigeJ) <julietg...@gmail.com> wrote:
![]() | |
Absolutely using clang-cl is a solution, but I wanted to keep things simple.
YOU
The C compiler identification is MSVC 19.36.32535.0
The CXX compiler identification is MSVC 19.36.32535.0
On Jan 29, 2025, at 5:58 AM, justin greige <julietg...@gmail.com> wrote:
On Jan 27, 2025, at 8:26 AM, Andrew Cunningham <ad...@a-cunningham.com> wrote:
Hi Justin,- The location of the “Install”. It is irrelevant to the build. That location is only used by the INSTALL step ( or project) that you run manually when you have a successful build of MAGMA- The CMake errors in “red” are nothing to be concerned about. I get them and they have NO effect on the build.
- Something is wrong with your Intel MKL installation. CMake should find MKL ( and the BLAS and LAPACK) automatically and set up MKLROOT correctly. That needs to work before you try anything else. Download and install the latest MKL
On Jan 27, 2025, at 8:32 AM, Mark Gates <mga...@icl.utk.edu> wrote:
On Jan 29, 2025, at 9:59 AM, justin greige <julietg...@gmail.com> wrote:Very much appreciated!OK that's good to know, truth be told I was losing my mind a bit here.I'm in no real rush so take your timeThanks againOn Wed, Jan 29, 2025 at 12:52 PM Andrew Cunningham <ad...@a-cunningham.com> wrote:Hi Justin,OK, I know what the issue is. The MAGMA source has a VERY,VERY unfortunate use of a min/max C++ macro (macros are evil, as they say) that breaks the compilation when used with newer versions of CUDA headers. This causes the "expected _ expression” error.I dealt with the same issue months ago and basically have had a brain fart and forgot I had hacked the source locally to fix it. Sorry about that!So, I will get back to you later. Probably the best thing is for me to send you a .zip of “my” version of the MAGMA source which I know works.Then I will go back and check if I submitted a bug report to the MAGMA team.AndrewOn Jan 29, 2025, at 7:45 AM, justin greige <julietg...@gmail.com> wrote:To clarify, I had LLVM 10.whatever and downloaded 18.8, but like you said that does not matter, it was just weird that it popped up in the lapack librariesas for libomp5md.lib, that was a result of me messing around with paths in MKLROOT, i have set it back to just be C:/Program Files (x86)/Intel/oneAPI/mkl/latest.At this point I am at a loss as to what I am missingI have CUDA 12.8MKL 2025.0.1CMAKE 3.24.1Latest VS
"The C compiler identification is MSVC 19.42.34435.0The CXX compiler identification is MSVC 19.42.34435.0"
I am still getting the same "expected _ expression" from 1>C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.8\include\cuda/std/detail/libcxx/include/limitsand the cannot open file 'lib\Debug\magma.lib' error.When is that file supposed to be created in the build process?<CMAKE_SC4.PNG>Also just to cover all my bases, are these all correct in the VS project properties?<VS_settings.PNG>Is there anything else that I am supposed to have installed prior to attempting to build this that I am missing?Cheers
On Jan 30, 2025, at 6:52 AM, justin greige <julietg...@gmail.com> wrote:
It worked!with the couple of testing files that I know would not build I just want to confirm that "Build: 624 succeeded, 12 failed, 0 up-to-date, 5 skipped" is expectedAlso for peace of mind these are all the files I would expect in the build/lib/debug folder
<lib_direct.PNG>Thanks again for all the help!
On Wed, Jan 29, 2025 at 2:45 PM Andrew Cunningham <ad...@a-cunningham.com> wrote:
OK, problems with build is resolved, have a look at