autowarefoundation / autoware_ai

Apache License 2.0
23 stars 8 forks source link

[Bug] ndt_gpu not built using catkin_make_release/colcon_release on ros kinetic gpu desktop #599

Closed manikantarav closed 5 years ago

manikantarav commented 5 years ago

I git cloned the autoware recent release. at last step, after ./calcon_release, ndt_gpu package could not built, giving error. i posted log here. same issue, if even use catkin_make_release

Bug

Expected Behavior

Autoware should have been bulit successfully.

Actual Behavior

ptxas info : Used 56 registers, 144 bytes smem, 448 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu20computePointHessian0EPfS0_S0_iPiiPdS2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2S2' for 'sm_52' ptxas info : Function properties for _ZN3gpu20computePointHessian0EPfS0_S0_iPiiPdS2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2S2 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 56 registers, 144 bytes smem, 496 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu22computePointGradients1EPfS0_S0_iPiiPdS2_S2_S2S2' for 'sm_52' ptxas info : Function properties for _ZN3gpu22computePointGradients1EPfS0_S0_iPiiPdS2_S2_S2S2 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 40 registers, 96 bytes smem, 408 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu22computePointGradients0EPfS0_S0_iPiiPdS2_S2_S2_S2_S2_S2S2' for 'sm_52' ptxas info : Function properties for _ZN3gpu22computePointGradients0EPfS0_S0_iPiiPdS2_S2_S2_S2_S2_S2S2 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 40 registers, 96 bytes smem, 432 bytes cmem[0] /usr/include/pcl-1.7/pcl/point_cloud.h:586:100: error: template-id ‘getMapping’ used as a declarator friend boost::shared_ptr& detail::getMapping(pcl::PointCloud &p); ^ /usr/include/pcl-1.7/pcl/point_cloud.h:586:100: error: ‘getMapping’ is neither function nor member function; cannot be declared friend cc1plus: error: expected ‘;’ at end of member declaration /usr/include/pcl-1.7/pcl/point_cloud.h:586:111: error: expected ‘)’ before ‘&’ token CMake Error at ndt_gpu_generated_NormalDistributionsTransform.cu.o.cmake:266 (message): Error generating file /home/kpit/manikanta/Autoware/ros/build/ndt_gpu/CMakeFiles/ndt_gpu.dir/src/./ndt_gpu_generated_NormalDistributionsTransform.cu.o

make[2]: [CMakeFiles/ndt_gpu.dir/src/ndt_gpu_generated_NormalDistributionsTransform.cu.o] Error 1 CMakeFiles/ndt_gpu.dir/build.make:77: recipe for target 'CMakeFiles/ndt_gpu.dir/src/ndt_gpu_generated_NormalDistributionsTransform.cu.o' failed CMakeFiles/Makefile2:259: recipe for target 'CMakeFiles/ndt_gpu.dir/all' failed make[1]: [CMakeFiles/ndt_gpu.dir/all] Error 2 Makefile:138: recipe for target 'all' failed make: *** [all] Error 2

Steps to Reproduce the Problem

1.clone Autoware

  1. ./colcon_release or ./catkin_make_release

Specifications

sgermanserrano commented 5 years ago

@manikantarav colcon_release is supported from v1.11 and for the develop branch. For v1.10 you should build using catkin_make_release

manikantarav commented 5 years ago

Now i build using catkin_make_release. But same error. Here i shared the logs. please check and


[ 42%] Generating Javascript code from autoware_msgs/ImageRect.msg [ 42%] Generating Lisp code from vector_map_msgs/SideWalk.msg [ 42%] Generating Javascript code from vector_map_msgs/PointArray.msg [ 42%] Generating Python from MSG vector_map_msgs/RoadMark CMake Error at ndt_gpu_generated_NormalDistributionsTransform.cu.o.cmake:266 (message): Error generating file /home/kpit/manikanta/Autoware/ros/build/computing/perception/localization/lib/ndt_gpu/CMakeFiles/ndt_gpu.dir/src/./ndt_gpu_generated_NormalDistributionsTransform.cu.o

[ 42%] Generating EusLisp code from vector_map_msgs/Point.msg computing/perception/localization/lib/ndt_gpu/CMakeFiles/ndt_gpu.dir/build.make:77: recipe for target 'computing/perception/localization/lib/ndt_gpu/CMakeFiles/ndt_gpu.dir/src/ndt_gpu_generated_NormalDistributionsTransform.cu.o' failed make[2]: [computing/perception/localization/lib/ndt_gpu/CMakeFiles/ndt_gpu.dir/src/ndt_gpu_generated_NormalDistributionsTransform.cu.o] Error 1 CMakeFiles/Makefile2:2181: recipe for target 'computing/perception/localization/lib/ndt_gpu/CMakeFiles/ndt_gpu.dir/all' failed make[1]: [computing/perception/localization/lib/ndt_gpu/CMakeFiles/ndt_gpu.dir/all] Error 2 make[1]: *** Waiting for unfinished jobs.... [ 42%] Generating C++ code from vector_map_msgs/StreetLight.msg [ 42%] Generating C++ code from vector_map_msgs/FenceArray.msg [ 42%] Generating C++ code from autoware_msgs/BrakeCmd.msg [ 42%] Generating C++ code from vector_map_msgs/StreetLightArray.msg [ 42%] Generating C++ code from autoware_msgs/ICPStat.msg [ 42%] Generating C++ code from autoware_msgs/Signals.msg [ 42%] Generating C++ code from autoware_msgs/AdjustXY.msg [ 42%] Generating C++ code from autoware_msgs/StateCmd.msg [ 42%] Generating Javascript code from autoware_msgs/DetectedObject.msg [ 42%] Generating Javascript code from vector_map_msgs/CrossRoad.msg [ 42%] Generating Lisp code from vector_map_msgs/WhiteLineArray.msg [ 42%] Generating Python from MSG vector_map_msgs/CrossWalk [ 42%] Generating EusLisp code from vector_map_msgs/Pole.msg [ 42%] Generating Javascript code from vector_map_msgs/WhiteLine.msg [ 42%] Generating C++ code from vector_map_msgs/RailCrossing.msg [ 42%] Generating Lisp code from vector_map_msgs/Curb.msg [ 42%] Generating Javascript code from autoware_msgs/VscanTracked.msg [ 42%] Building CXX object sensing/drivers/lidar/packages/sick/ldmrs/sick_ldmrs_driver/src/driver/src/CMakeFiles/LDMRS_Example.dir/main.cpp.o [ 42%] Linking CXX shared library /home/kpit/manikanta/Autoware/ros/devel/lib/libsick_ldmrs.so [ 42%] Generating EusLisp code from vector_map_msgs/PointArray.msg [ 42%] Generating EusLisp code from vector_map_msgs/CrossRoad.msg [ 42%] Generating Javascript code from vector_map_msgs/WallArray.msg [ 42%] Generating C++ code from vector_map_msgs/SideWalk.msg


CMakeError.log CMakeOutput.log

sgermanserrano commented 5 years ago

we are currently resolving issues that arise with CUDA 10 (@amc-nu ) you need to use CUDA 9 for now

amc-nu commented 5 years ago

This is caused by your CUDA version. Downgrade to cuda 9.

manikantarav commented 5 years ago

CMakeError.log CMakeOutput.log

Thank you for quick reply. now i Downgraded it to CUDA 9. still couldnot build. can you check once. @amc-nu @sgermanserrano


[ 1%] Linking CXX executable /home/kpit/manikanta/Autoware/ros/devel/lib/adi_driver/adis16470_node [ 1%] Built target _lgsvl_msgs_generate_messages_check_deps_Detection2D [ 1%] Built target adxl345_node Scanning dependencies of target cuda_binary Scanning dependencies of target _autoware_can_msgs_generate_messages_check_deps_CANData Scanning dependencies of target _autoware_can_msgs_generate_messages_check_deps_CANPacket [ 1%] Generating GPU_function.cubin nvcc fatal : Value 'sm_75' is not defined for option 'gpu-architecture' computing/perception/detection/vision_detector/libs/dpm_ttic/CMakeFiles/cuda_binary.dir/build.make:60: recipe for target 'computing/perception/detection/vision_detector/libs/dpm_ttic/GPU_function.cubin' failed make[2]: [computing/perception/detection/vision_detector/libs/dpm_ttic/GPU_function.cubin] Error 1 CMakeFiles/Makefile2:15712: recipe for target 'computing/perception/detection/vision_detector/libs/dpm_ttic/CMakeFiles/cuda_binary.dir/all' failed make[1]: [computing/perception/detection/vision_detector/libs/dpm_ttic/CMakeFiles/cuda_binary.dir/all] Error 2 make[1]: * Waiting for unfinished jobs.... [ 1%] Built target _autoware_can_msgs_generate_messages_check_deps_CANData [ 1%] Built target _autoware_can_msgs_generate_messages_check_deps_CANPacket [ 1%] Built target adis16470_node [ 1%] Linking CXX executable /home/kpit/manikanta/Autoware/ros/devel/lib/hexacam/hexacam_node [ 1%] Built target hexacam_node [ 1%] Linking CXX executable /home/kpit/manikanta/Autoware/ros/devel/lib/fake_drivers/fake_camera [ 1%] Linking CXX shared library /home/kpit/manikanta/Autoware/ros/devel/lib/libfastvirtualscan.so [ 1%] Built target fastvirtualscan [ 1%] Linking CXX executable /home/kpit/manikanta/Autoware/ros/devel/lib/vectacam/vectacam_node [ 1%] Built target fake_camera [ 1%] Built target vectacam_node ptxas info : 0 bytes gmem ptxas info : Compiling entry function '_ZN3gpu12convertInputIN3pcl8PointXYZEEEvPT_PfS5_S5_i' for 'sm_52' ptxas info : Function properties for _ZN3gpu12convertInputIN3pcl8PointXYZEEEvPT_PfS5_S5_i 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 14 registers, 356 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu12convertInputIN3pcl9PointXYZIEEEvPT_PfS5_S5_i' for 'sm_52' ptxas info : Function properties for _ZN3gpu12convertInputIN3pcl9PointXYZIEEEvPT_PfS5_S5_i 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 14 registers, 356 bytes cmem[0] [ 1%] Linking CXX executable /home/kpit/manikanta/Autoware/ros/devel/lib/image_processor/image_rotator [ 1%] Built target image_rotator [ 1%] Linking CXX executable /home/kpit/manikanta/Autoware/ros/devel/lib/laser_scan_converter/laser_scan_converter_node [ 1%] Linking CXX executable /home/kpit/manikanta/Autoware/ros/devel/lib/image_processor/image_rectifier [ 1%] Built target laser_scan_converter_node [ 1%] Built target image_rectifier [ 1%] Linking CXX executable /home/kpit/manikanta/Autoware/ros/devel/lib/garmin/garmin_gps_18x_lvc [ 1%] Built target garmin_gps_18x_lvc [ 2%] Linking CXX executable /home/kpit/manikanta/Autoware/ros/devel/lib/hokuyo/hokuyo_3d [ 2%] Built target hokuyo_3d [ 2%] Linking CXX shared library /home/kpit/manikanta/Autoware/ros/devel/lib/libndt_cpu.so [ 2%] Built target ndt_cpu ptxas info : 0 bytes gmem ptxas info : Compiling entry function '_ZN3gpu6gpuSumIiEEvPT_ii' for 'sm_52' ptxas info : Function properties for _ZN3gpu6gpuSumIiEEvPT_ii 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 10 registers, 336 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu6gpuSumIdEEvPT_ii' for 'sm_52' ptxas info : Function properties for _ZN3gpu6gpuSumIdEEvPT_ii 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 10 registers, 336 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu12gpuTransformEPfS0_S0_S0_S0_S0_iNS_12MatrixDeviceE' for 'sm_52' ptxas info : Function properties for _ZN3gpu12gpuTransformEPfS0_S0_S0_S0_S0_iNS_12MatrixDeviceE 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 40 registers, 400 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu8sumScoreEPdii' for 'sm_52' ptxas info : Function properties for _ZN3gpu8sumScoreEPdii 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 12 registers, 336 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu9matrixSumEPdiiiii' for 'sm_52' ptxas info : Function properties for _ZN3gpu9matrixSumEPdiiiii 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 13 registers, 348 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu20computeHessianListS2EPfS0_S0_PiS1_S1_iPdS2_S2_dS2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_i' for 'sm_52' ptxas info : Function properties for _ZN3gpu20computeHessianListS2EPfS0_S0_PiS1_S1_iPdS2_S2_dS2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_i 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 40 registers, 508 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu20computeHessianListS1EPfS0_S0_PiS1_S1_iPdS2_S2_ddS2_S2_S2_S2_S2_i' for 'sm_52' ptxas info : Function properties for _ZN3gpu20computeHessianListS1EPfS0_S0_PiS1_S1_iPdS2_S2_ddS2_S2_S2_S2_S2_i 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 53 registers, 460 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu20computeHessianListS0EPfS0_S0_PiS1_S1_iPdS2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_i' for 'sm_52' ptxas info : Function properties for _ZN3gpu20computeHessianListS0EPfS0_S0_PiS1_S1_iPdS2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_i 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 32 registers, 492 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu15computeCovDxdPiEPiS0_S0_iPdiddS1_S1_i' for 'sm_52' ptxas info : Function properties for _ZN3gpu15computeCovDxdPiEPiS0_S0_iPdiddS1_S1_i 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 32 registers, 404 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu12updateExCovXEPddi' for 'sm_52' ptxas info : Function properties for _ZN3gpu12updateExCovXEPddi 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 8 registers, 340 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu13computeExCovXEPfS0_S0_PiS1_S1_iPdS2_S2_ddS2_S2_S2_S2_S2_S2_S2_S2_S2S2' for 'sm_52' ptxas info : Function properties for _ZN3gpu13computeExCovXEPfS0_S0_PiS1_S1_iPdS2_S2_ddS2_S2_S2_S2_S2_S2_S2_S2_S2S2 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 32 registers, 496 bytes cmem[0], 112 bytes cmem[2] ptxas info : Compiling entry function '_ZN3gpu24computeScoreGradientListEPfS0_S0_PiS1_S1_iPdS2_S2_iS2_S2diS2' for 'sm_52' ptxas info : Function properties for _ZN3gpu24computeScoreGradientListEPfS0_S0_PiS1_S1_iPdS2_S2_iS2_S2diS2 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 40 registers, 448 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu16computeScoreListEPiS0iPddS1' for 'sm_52' ptxas info : Function properties for _ZN3gpu16computeScoreListEPiS0iPddS1 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 32 registers, 368 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu20computePointHessian2EPfS0_S0_iPiiPdS2_S2S2' for 'sm_52' ptxas info : Function properties for _ZN3gpu20computePointHessian2EPfS0_S0_iPiiPdS2_S2S2 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 32 registers, 72 bytes smem, 400 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu20computePointHessian1EPfS0_S0_iPiiPdS2_S2_S2_S2_S2_S2_S2_S2S2' for 'sm_52' ptxas info : Function properties for _ZN3gpu20computePointHessian1EPfS0_S0_iPiiPdS2_S2_S2_S2_S2_S2_S2_S2S2 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 56 registers, 144 bytes smem, 448 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu20computePointHessian0EPfS0_S0_iPiiPdS2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2S2' for 'sm_52' ptxas info : Function properties for _ZN3gpu20computePointHessian0EPfS0_S0_iPiiPdS2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2_S2S2 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 56 registers, 144 bytes smem, 496 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu22computePointGradients1EPfS0_S0_iPiiPdS2_S2_S2S2' for 'sm_52' ptxas info : Function properties for _ZN3gpu22computePointGradients1EPfS0_S0_iPiiPdS2_S2_S2S2 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 40 registers, 96 bytes smem, 408 bytes cmem[0] ptxas info : Compiling entry function '_ZN3gpu22computePointGradients0EPfS0_S0_iPiiPdS2_S2_S2_S2_S2_S2S2' for 'sm_52' ptxas info : Function properties for _ZN3gpu22computePointGradients0EPfS0_S0_iPiiPdS2_S2_S2_S2_S2_S2S2 0 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads ptxas info : Used 40 registers, 96 bytes smem, 432 bytes cmem[0] [ 2%] Linking CXX shared library /home/kpit/manikanta/Autoware/ros/devel/lib/libpcl_omp_registration.so [ 2%] Built target pcl_omp_registration Scanning dependencies of target ndt_gpu [ 2%] Linking CXX shared library /home/kpit/manikanta/Autoware/ros/devel/lib/libndt_gpu.so [ 2%] Built target ndt_gpu Makefile:138: recipe for target 'all' failed make: * [all] Error 2 Invoking "make -j20 -l20" failed

amc-nu commented 5 years ago

@manikantarav Your GPU architecture (sm_75) RTX20x0, is not supported by CUDA 9.0. In this case you'll need to use CUDA 10.0. However, we will support it until the release of autowarefoundation/autoware#2032

In the meantime, probably you can try to use nvidia-docker. Please have a look at the docker version of Autoware. I don't have an RTX to test, so I can'T be sure if the virtualization will work, if you can test and report us back, that would be awesome.

manikantarav commented 5 years ago

@amc-nu now i switched to Cuda 10, and compiled using catkin_make_release. Now everything working fine.

About docker, i tried it one week back. i didnt save any logs. But rviz was not working that time, then i switched to source installation.

Thank you for help anyway.

amc-nu commented 5 years ago

@manikantarav very probably you were using nvidia-docker 2, the docker image for Autoware <= v1.10 requires nvidia-docker v1. autowarefoundation/autoware#1946 will bring support for it on 1.11.

Thanks for reporting back the result.

leon0417 commented 5 years ago

@manikantarav I met the same problem, and now, I use RTX 2080ti. Please tell me which branch you used in Autoware, and which version for the nvidia driver and CUDA.

gbiggs commented 5 years ago

Thanks for using Autoware and for your question. However the issue tracker is for posting confirmed bugs and feature requests.

We ask that you please ask questions on the Autoware Discourse category following our support guidelines: https://github.com/CPFL/Autoware/wiki/Support-guidelines. Please pay particular attention to the information we ask you to provide.

valgur commented 4 years ago

I also encountered this bug in melodic with PCL 1.8 and CUDA 10.1. It's not ideal, but I found that as a temporary workaround you can simply comment out / remove the

friend boost::shared_ptr& detail::getMapping(pcl::PointCloud &p);

line and make _mapping public in pcl/point_cloud.h.