ISCE install with CUDA support

Added by Teguh Purnama Sidiq about 2 years ago

Dear all,

I want to install ISCE with the CUDA support. After struggling on NVIDIA drivers, finally I am finished installing CUDA on my computer. However, when I run scons install, it get error message as below,

=====================================================================================================================================

Install file: "components/zerodop/GPUtopozero/include/Topozero.h" as "build_3/isce/components/zerodop/GPUtopozero/src/Topozero.h"
Install file: "components/zerodop/GPUtopozero/include/Topo.h" as "build_3/isce/components/zerodop/GPUtopozero/src/Topo.h"
Install file: "components/zerodop/GPUtopozero/include/Orbit.h" as "build_3/isce/components/zerodop/GPUtopozero/src/Orbit.h"
/usr/bin/g++ -o build_3/isce/components/zerodop/GPUtopozero/src/GPUtopozero.os -c -std=c++11 -O2 -m64 -fopenmp -O3 -fPIC -pthread -Wno-unused-result -Wsign-compare -g -fwrapv -Wall -Wstrict-prototypes -fPIC -DGPU_ACC_ENABLED -I/usr/include/python3.6m -I/usr/include -I/usr/include/hdf5/serial -I/usr/include/gdal -I/usr/lib/x86_64-linux-gnu -I/usr/lib -I/usr/lib/x86_64-linux-gnu/hdf5/serial -Ibuild_3/isce/components/iscesys/ImageApi/include -Ibuild_3/isce/components/iscesys/ImageApi/DataCaster/include -Ibuild_3/isce/components/isceobj/LineAccessor/include -Ibuild_3/isce/components/iscesys/StdOE/include -Ibuild_3/isce/components/isceobj/Util/include -I/usr/local/cuda/include build_3/isce/components/zerodop/GPUtopozero/src/GPUtopozero.cpp
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
Install file: "components/zerodop/GPUtopozero/include/Constants.h" as "build_3/isce/components/zerodop/GPUtopozero/src/Constants.h"
Install file: "components/zerodop/GPUtopozero/include/Ellipsoid.h" as "build_3/isce/components/zerodop/GPUtopozero/src/Ellipsoid.h"
Install file: "components/zerodop/GPUtopozero/include/LinAlg.h" as "build_3/isce/components/zerodop/GPUtopozero/src/LinAlg.h"
/usr/bin/g++ -o build_3/isce/components/zerodop/GPUtopozero/src/Ellipsoid.os -c -std=c++11 -O2 -m64 -fopenmp -O3 -fPIC -pthread -Wno-unused-result -Wsign-compare -g -fwrapv -Wall -Wstrict-prototypes -fPIC -DGPU_ACC_ENABLED -I/usr/include/python3.6m -I/usr/include -I/usr/include/hdf5/serial -I/usr/include/gdal -I/usr/lib/x86_64-linux-gnu -I/usr/lib -I/usr/lib/x86_64-linux-gnu/hdf5/serial -Ibuild_3/isce/components/iscesys/ImageApi/include -Ibuild_3/isce/components/iscesys/ImageApi/DataCaster/include -Ibuild_3/isce/components/isceobj/LineAccessor/include -Ibuild_3/isce/components/iscesys/StdOE/include -Ibuild_3/isce/components/isceobj/Util/include -I/usr/local/cuda/include build_3/isce/components/zerodop/GPUtopozero/src/Ellipsoid.cpp
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
Install file: "components/zerodop/GPUtopozero/include/AkimaLib.h" as "build_3/isce/components/zerodop/GPUtopozero/src/AkimaLib.h"
/usr/bin/g++ -o build_3/isce/components/zerodop/GPUtopozero/src/AkimaLib.os -c -std=c++11 -O2 -m64 -fopenmp -O3 -fPIC -pthread -Wno-unused-result -Wsign-compare -g -fwrapv -Wall -Wstrict-prototypes -fPIC -DGPU_ACC_ENABLED -I/usr/include/python3.6m -I/usr/include -I/usr/include/hdf5/serial -I/usr/include/gdal -I/usr/lib/x86_64-linux-gnu -I/usr/lib -I/usr/lib/x86_64-linux-gnu/hdf5/serial -Ibuild_3/isce/components/iscesys/ImageApi/include -Ibuild_3/isce/components/iscesys/ImageApi/DataCaster/include -Ibuild_3/isce/components/isceobj/LineAccessor/include -Ibuild_3/isce/components/iscesys/StdOE/include -Ibuild_3/isce/components/isceobj/Util/include -I/usr/local/cuda/include build_3/isce/components/zerodop/GPUtopozero/src/AkimaLib.cpp
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
build_3/isce/components/zerodop/GPUtopozero/src/AkimaLib.cpp: In member function ‘void AkimaLib::printAkiNaN(int, int, std::vector<std::vector<float> >&, int, int, double, double, double)’:
build_3/isce/components/zerodop/GPUtopozero/src/AkimaLib.cpp:32:19: error: ‘isnan’ was not declared in this scope
if (isnan(slpx) || isnan(slpy) || isnan(slpxy)) {
^
build_3/isce/components/zerodop/GPUtopozero/src/AkimaLib.cpp:32:19: note: suggested alternative:
In file included from build_3/isce/components/zerodop/GPUtopozero/src/AkimaLib.cpp:12:0:
/usr/include/c++/6/cmath:662:5: note: ‘std::isnan’
isnan(_Tp __x)
^~~
scons: * [build_3/isce/components/zerodop/GPUtopozero/src/AkimaLib.os] Error 1
scons: done reading SConscript files.
scons: Building targets ...
scons: *
Do not know how to make File target `install' (/home/teguh/Software/isce-2.1.0/install). Stop.
scons: building terminated because of errors.

=====================================================================================================================================

I tried installing CUDA version 9.2 and 9.0. Both give the same error. I also tried using gcc, g++ and gfortran version 6 and 7. And again give me the same error. My system is Ubuntu 18.04
My VGA is NVIDIA GTX 750 Ti, is this compatible? Or should I use more advance graphic card like Quadro or Tesla series?

Best Regards,

- teguh -

SConfigISCE (1.7 kB)

config.log (17.7 kB)


Replies (3)

RE: ISCE install with CUDA support - Added by Piyush Agram about 2 years ago

In "isce/components/zerodop/GPUtopozero/src/AkimaLib.cpp"

try commenting out the part that says:

//#if __cplusplus >= 201103L
using std::isnan;
//#endif

What version of gcc are you using?

gcc -v

RE: ISCE install with CUDA support - Added by Teguh Purnama Sidiq about 2 years ago

Thank You for the solution. It works.
I use gcc version 6.4.0 20180424 (Ubuntu 6.4.0-17ubuntu1).

Best Regards,

- teguh -

RE: ISCE install with CUDA support - Added by Vitaliy 4erg 2 months ago

Hi,
I am faced with the same issue. But i can't find the code listed above.
Is there any solution?

isce distrib from the lastest github build (>2.3.3)
gcc version - 7.5 (Ubuntu 18.07)

Thx

Install file: "components/zerodop/GPUtopozero/include/AkimaLib.h" as "build/components/zerodop/GPUtopozero/src/AkimaLib.h"
/usr/bin/g++ -o build/components/zerodop/GPUtopozero/src/AkimaLib.os -c -std=c++11 -O2 -m64 -fopenmp -O3 -fPIC -pthread -Wno-unused-result -Wsign-compare -g -fwrapv -Wall -Wstrict-prototypes -fPIC -DGPU_ACC_ENABLED -I/usr/local/include -I/usr/include/x86_64-linux-gnu -I/usr/include/python3.6m -I/usr/include/hdf5/serial -I/usr/include/gdal -Ibuild/components/iscesys/ImageApi/include -Ibuild/components/iscesys/ImageApi/DataCaster/include -Ibuild/components/isceobj/LineAccessor/include -Ibuild/components/iscesys/StdOE/include -Ibuild/components/isceobj/Util/include -I/usr/local/cuda-9.2/include build/components/zerodop/GPUtopozero/src/AkimaLib.cpp
cc1plus: warning: command line option '-Wstrict-prototypes' is valid for C/ObjC but not for C++
build/components/zerodop/GPUtopozero/src/AkimaLib.cpp: In member function 'void AkimaLib::printAkiNaN(int, int, std::vector<std::vector<float> >&, int, int, double, double, double)':
build/components/zerodop/GPUtopozero/src/AkimaLib.cpp:28:9: error: 'isnan' was not declared in this scope
if (isnan(slpx) || isnan(slpy) || isnan(slpxy)) {
^~~
build/components/zerodop/GPUtopozero/src/AkimaLib.cpp:28:9: note: suggested alternative:
In file included from build/components/zerodop/GPUtopozero/src/AkimaLib.cpp:12:0:
/usr/include/c++/7/cmath:639:5: note: 'std::isnan'
isnan(_Tp __x)
^~~
scons: *** [build/components/zerodop/GPUtopozero/src/AkimaLib.os] Error 1

(1-3/3)