marella / ctransformers

Python bindings for the Transformer models implemented in C/C++ using GGML library.
MIT License
1.79k stars 135 forks source link

Unable to compile for ROCM on Ubuntu 22.04 #134

Open bugfixin opened 12 months ago

bugfixin commented 12 months ago

Using the command $ CC="/opt/rocm/llvm/bin/clang" CXX="/opt/rocm/llvm/bin/clang++" CT_HIPBLAS=1 pip install ctransformers --no-binary ctransformers I am unable to compile ctransformers for ROCM. I've tried with ROCM 5.5.3 as well as 5.6.1, and for ctransformers versions 0.2.26 and 0.2.27.

Each time I get an error: /models/ggml/ggml-cuda-ggllm.h:15:37: error: array has incomplete element type 'struct cudaDeviceProp'

Full error (2799 lines...) attached.

Am I doing something wrong or missing some dependencies? I've tried without the CC and CXX variables set, but that fails even earlier as it tries to compile with the standard gcc utilities.

ctransformers-error.txt

huotianyu commented 5 months ago

the below command worked well! CMAKE_ARGS="-DLLAMA_HIPBLAS=on -DLLAMA_CLBLAST=on -DCMAKE_C_COMPILER=/opt/rocm/llvm/bin/clang -DCMAKE_CXX_COMPILER=/opt/rocm/llvm/bin/clang++ -DCMAKE_PREFIX_PATH=/opt/rocm" FORCE_CMAKE=1 pip install ctransformers --no-binary ctransformers