Este era o código que eu estava tentando executar no meu computador quando encontrei esse erro.
./l
[Vector addition of 10 elements]
Bus error (core dumped)
eu tentei isso
>>>> nvcc -o l vectorAdd.cu -v
#$ _SPACE_=
#$ _CUDART_=cudart
#$ _HERE_=/usr/lib/nvidia-cuda-toolkit/bin
#$ _THERE_=/usr/lib/nvidia-cuda-toolkit/bin
#$ _TARGET_SIZE_=
#$ _TARGET_DIR_=
#$ _TARGET_SIZE_=64
#$ NVVMIR_LIBRARY_DIR=/usr/lib/nvidia-cuda-toolkit/libdevice
#$ PATH=/usr/lib/nvidia-cuda-toolkit/bin:/home/anshuman/Downloads/bin:/home/anshuman/anaconda3/bin:/usr/class/cs143/cool/bin:~/get-shit-done/:/home/anshuman/.local/bin:/home/anshuman/bin:/usr/local/cuda-10.1/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/anshuman/Documents/PCAP/.openmpi/bin:/home/anshuman/Documents/PCAP/bin:/usr/local/m4/bin/:/home/anshuman/bin:/usr/local/cuda-10.1/bin:/usr/lib/x86_64-linux-gnu/libcublas.so.10:/usr/local/bin/
#$ LIBRARIES= -L/usr/lib/x86_64-linux-gnu/stubs
#$ gcc -std=c++14 -D__CUDA_ARCH__=300 -E -x c++ -DCUDA_DOUBLE_MATH_FUNCTIONS -D__CUDACC__ -D__NVCC__ -D"__CUDACC_VER_BUILD__=85" -D"__CUDACC_VER_MINOR__=1" -D"__CUDACC_VER_MAJOR__=9" -include "cuda_runtime.h" -m64 "vectorAdd.cu" > "/tmp/tmpxft_00000213_00000000-8_vectorAdd.cpp1.ii"
#$ cicc --c++14 --gnu_version=70300 --allow_managed -arch compute_30 -m64 -ftz=0 -prec_div=1 -prec_sqrt=1 -fmad=1 --include_file_name "tmpxft_00000213_00000000-2_vectorAdd.fatbin.c" -tused -nvvmir-library "/usr/lib/nvidia-cuda-toolkit/libdevice/libdevice.10.bc" --gen_module_id_file --module_id_file_name "/tmp/tmpxft_00000213_00000000-3_vectorAdd.module_id" --orig_src_file_name "vectorAdd.cu" --gen_c_file_name "/tmp/tmpxft_00000213_00000000-5_vectorAdd.cudafe1.c" --stub_file_name "/tmp/tmpxft_00000213_00000000-5_vectorAdd.cudafe1.stub.c" --gen_device_file_name "/tmp/tmpxft_00000213_00000000-5_vectorAdd.cudafe1.gpu" "/tmp/tmpxft_00000213_00000000-8_vectorAdd.cpp1.ii" -o "/tmp/tmpxft_00000213_00000000-5_vectorAdd.ptx"
#$ ptxas -arch=sm_30 -m64 "/tmp/tmpxft_00000213_00000000-5_vectorAdd.ptx" -o "/tmp/tmpxft_00000213_00000000-9_vectorAdd.sm_30.cubin"
#$ fatbinary --create="/tmp/tmpxft_00000213_00000000-2_vectorAdd.fatbin" -64 --cmdline="" "--image=profile=sm_30,file=/tmp/tmpxft_00000213_00000000-9_vectorAdd.sm_30.cubin" "--image=profile=compute_30,file=/tmp/tmpxft_00000213_00000000-5_vectorAdd.ptx" --embedded-fatbin="/tmp/tmpxft_00000213_00000000-2_vectorAdd.fatbin.c" --cuda
#$ rm /tmp/tmpxft_00000213_00000000-2_vectorAdd.fatbin
#$ gcc -std=c++14 -E -x c++ -D__CUDACC__ -D__NVCC__ -D"__CUDACC_VER_BUILD__=85" -D"__CUDACC_VER_MINOR__=1" -D"__CUDACC_VER_MAJOR__=9" -include "cuda_runtime.h" -m64 "vectorAdd.cu" > "/tmp/tmpxft_00000213_00000000-4_vectorAdd.cpp4.ii"
#$ cudafe++ --c++14 --gnu_version=70300 --allow_managed --m64 --parse_templates --gen_c_file_name "/tmp/tmpxft_00000213_00000000-5_vectorAdd.cudafe1.cpp" --stub_file_name "tmpxft_00000213_00000000-5_vectorAdd.cudafe1.stub.c" --module_id_file_name "/tmp/tmpxft_00000213_00000000-3_vectorAdd.module_id" "/tmp/tmpxft_00000213_00000000-4_vectorAdd.cpp4.ii"
#$ gcc -std=c++14 -D__CUDA_ARCH__=300 -c -x c++ -DCUDA_DOUBLE_MATH_FUNCTIONS -m64 -o "/tmp/tmpxft_00000213_00000000-10_vectorAdd.o" "/tmp/tmpxft_00000213_00000000-5_vectorAdd.cudafe1.cpp"
#$ nvlink --arch=sm_30 --register-link-binaries="/tmp/tmpxft_00000213_00000000-6_l_dlink.reg.c" -m64 -L/usr/lib/x86_64-linux-gnu/stubs -cpu-arch=X86_64 "/tmp/tmpxft_00000213_00000000-10_vectorAdd.o" -o "/tmp/tmpxft_00000213_00000000-11_l_dlink.sm_30.cubin"
#$ fatbinary --create="/tmp/tmpxft_00000213_00000000-7_l_dlink.fatbin" -64 --cmdline="" -link "--image=profile=sm_30,file=/tmp/tmpxft_00000213_00000000-11_l_dlink.sm_30.cubin" --embedded-fatbin="/tmp/tmpxft_00000213_00000000-7_l_dlink.fatbin.c"
#$ rm /tmp/tmpxft_00000213_00000000-7_l_dlink.fatbin
#$ gcc -std=c++14 -c -x c++ -DFATBINFILE="\"/tmp/tmpxft_00000213_00000000-7_l_dlink.fatbin.c\"" -DREGISTERLINKBINARYFILE="\"/tmp/tmpxft_00000213_00000000-6_l_dlink.reg.c\"" -I. -D__NV_EXTRA_INITIALIZATION= -D__NV_EXTRA_FINALIZATION= -D"__CUDACC_VER_BUILD__=85" -
D"__CUDACC_VER_MINOR__=1" -D"__CUDACC_VER_MAJOR__=9" -m64 -o "/tmp/tmpxft_00000213_00000000-12_l_dlink.o" "/usr/lib/nvidia-cuda-toolkit/bin/crt/link.stub"
#$ g++ -m64 -o "l" -std=c++14 -Wl,--start-group "/tmp/tmpxft_00000213_00000000-12_l_dlink.o" "/tmp/tmpxft_00000213_00000000-10_vectorAdd.o" -L/usr/lib/x86_64-linux-gnu/stubs -lcudadevrt -lcudart_static -lrt -lpthread -ldl -Wl,--end-group
No entanto, não tenho certeza do que está errado aqui. Alguém pode ajudar.
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2017 NVIDIA Corporation
Built on Fri_Nov__3_21:07:56_CDT_2017
Cuda compilation tools, release 9.1, V9.1.85
nvidia-smi
Sat Apr 6 15:58:15 2019
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 390.116 Driver Version: 390.116 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce 940MX Off | 00000000:01:00.0 Off | N/A |
| N/A 51C P5 N/A / N/A | 842MiB / 4046MiB | 12% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 1341 G /usr/lib/xorg/Xorg 293MiB |
| 0 1708 G /usr/bin/gnome-shell 311MiB |
| 0 2282 G ...uest-channel-token=10764068675564210353 181MiB |
| 0 29177 G ...uest-channel-token=10528584851110459654 52MiB |
Minha GPU é 940MX, tenho certeza de que o código não está errado, pois executei isso em outra máquina onde foi executado perfeitamente. Além disso, é do repositório de código oficial do CUDA. Encontrar coisas online tem sido realmente infrutífero, pois a maior parte está relacionada a Python e Tensorflow, que não tenho usado neste caso. No entanto, recebi outra sugestão do Reddit dizendo que:
É bem provável que sua fonte de alimentação não seja suficiente. Eu estava enfrentando esse problema ao portar alguns modelos de aprendizado profundo da tocha para computadores industriais. As fontes de alimentação das máquinas que usamos para construir e testar os modelos eram significativamente mais potentes do que as das caixas de implantação, e acabei vendo esse erro bastante.
Agora eu não estou realmente certo sobre o que isso significa. Eu tenho um laptop HP Pavilion para o qual tenho usado o carregador original e uma bateria original (que foi substituída em novembro passado devido a um defeito na original). O problema parece ter começado somente depois que tentei atualizar para CUDA 10.0 [sem sucesso] Além disso, se alguém tiver sugestões de GPUs baseadas em nuvem que eu possa usar temporariamente, pois preciso disso para um projeto. Eu estava pensando na AWS, mas isso parece muito caro.
Como você disse que o problema só apareceu após a instalação malsucedida do CUDA 10.0, isso pode significar que essa instalação não foi totalmente desfeita, de modo que agora você tem uma mistura não funcional das duas versões.
Talvez seja melhor desinstalar todos os produtos NVIDIA, exceto o driver de vídeo, limpar todas as pastas e reinstalar o CUDA 9.1. A documentação lista este comando:
No Windows, eu teria aconselhado o uso de um desinstalador como o freeware Revo Uninstaller para obter todos os bits e peças que sobraram, mas no Linux você pode precisar procurar a substring "cuda" no disco para obter essas sobras .
O que harrymc disse estava correto e segui as etapas neste link exatamente para corrigir esse problema. Achei que talvez o arquivo antigo do CUDA 10.0 estivesse corrompido e limpei tudo, incluindo o 9.0 e o 10.0, depois refiz tudo.