ggerganov / whisper.cpp

Port of OpenAI's Whisper model in C/C++
MIT License
35.51k stars 3.61k forks source link

Cuda Make Error #2293

Open liferadioat opened 4 months ago

liferadioat commented 4 months ago

Hi,

I am using a nvidia cuda and the drivers are installed but the make process throws errors - has anyone an idea, what might be wrong?

root@ki /opt/whisper.cpp # GGML_CUDA=1 make -j I ccache not found. Consider installing it for faster compilation. expr: syntax error: unexpected argument ‘070100’ expr: syntax error: unexpected argument ‘080100’ I whisper.cpp build info: I UNAME_S: Linux I UNAME_P: x86_64 I UNAME_M: x86_64 I CFLAGS: -Iggml/include -Iggml/src -Iinclude -Isrc -Iexamples -D_XOPEN_SOURCE=600 -D_GNU_SOURCE -DNDEBUG -DGGML_USE_OPENMP -DGGML_USE_CUDA -I/usr/local/cuda/include -I/usr/local/cuda/targets/x86_64-linux/include -std=c11 -fPIC -O3 -Wall -Wextra -Wpedantic -Wcast-qual -Wno-unused-function -Wshadow -Wstrict-prototypes -Wpointer-arith -Wmissing-prototypes -Werror=implicit-int -Werror=implicit-function-declaration -pthread -march=native -mtune=native -fopenmp -Wdouble-promotion I CXXFLAGS: -std=c++11 -fPIC -O3 -Wall -Wextra -Wpedantic -Wcast-qual -Wno-unused-function -Wmissing-declarations -Wmissing-noreturn -pthread -fopenmp -march=native -mtune=native -Wno-array-bounds -Wno-format-truncation -Wextra-semi -Iggml/include -Iggml/src -Iinclude -Isrc -Iexamples -D_XOPEN_SOURCE=600 -D_GNU_SOURCE -DNDEBUG -DGGML_USE_OPENMP -DGGML_USE_CUDA -I/usr/local/cuda/include -I/usr/local/cuda/targets/x86_64-linux/include I NVCCFLAGS: -std=c++11 -O3 -use_fast_math --forward-unknown-to-host-compiler -arch=native -DGGML_CUDA_DMMV_X=32 -DGGML_CUDA_MMV_Y=1 -DK_QUANTS_PER_ITERATION=2 -DGGML_CUDA_PEER_MAX_BATCH_SIZE=128 I LDFLAGS: -lcuda -lcublas -lculibos -lcudart -lcublasLt -lpthread -ldl -lrt -L/usr/local/cuda/lib64 -L/usr/lib64 -L/usr/local/cuda/targets/x86_64-linux/lib -L/usr/local/cuda/lib64/stubs -L/usr/lib/wsl/lib I CC: cc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0 I CXX: c++ (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0 I NVCC: Build cuda_11.5.r11.5/compiler.30672275_0 Makefile:862: *** I ERROR: For CUDA versions < 11.7 a target CUDA architecture must be explicitly provided via environment variable CUDA_DOCKER_ARCH, e.g. by running "export CUDA_DOCKER_ARCH=compute_XX" on Unix-like systems, where XX is the minimum compute capability that the code needs to run on. A list with compute capabilities can be found here: https://developer.nvidia.com/cuda-gpus . Stop.

filloax commented 3 months ago

Having this issue too

YukiCoco commented 3 months ago

same issue with CUDA 12.4

laurentdebricon commented 3 months ago

find your card Compute Capability here https://developer.nvidia.com/cuda-gpus . For [GeForce RTX 3080 Ti] CUDA_DOCKER_ARCH=sm_86 GGML_CUDA=1 make -j

chandeldivyam commented 2 months ago

@laurentdebricon Thanks man, I was facing another similar issue where GGML_CUDA=1 make -j was failing.

CPU utilization went 100% and failed. I am using WSL and windows.

But using CUDA_DOCKER_ARCH=sm_86 GGML_CUDA=1 make -j worked. I am using RTX 3070

What does this do? And why did it work?