瀏覽代碼

pack in cuda libs

Bruce MacDonald 1 年之前
父節點
當前提交
4e8be787c7
共有 3 個文件被更改,包括 10 次插入2 次删除
  1. 1 1
      docs/development.md
  2. 8 0
      llm/llama.cpp/generate_linux.go
  3. 1 1
      llm/llama.go

+ 1 - 1
docs/development.md

@@ -35,5 +35,5 @@ Now you can run `ollama`:
 ## Building on Linux with GPU support
 ## Building on Linux with GPU support
 
 
 - Install cmake and nvidia-cuda-toolkit
 - Install cmake and nvidia-cuda-toolkit
-- run `CUDA_VERSION=$(nvcc --version | sed -n 's/^.*release \([0-9]\+\)\.\([0-9]\+\).*$/\1/p') go generate ./...`
+- run `CUDA_VERSION=11 CUDA_PATH=/path/to/libcuda.so CUBLAS_PATH=/path/to/libcublas.so CUDART_PATH=/path/to/libcudart.so CUBLASLT_PATH=/path/to/libcublasLt.so go generate ./...`
 - run `go build .`
 - run `go build .`

+ 8 - 0
llm/llama.cpp/generate_linux.go

@@ -19,3 +19,11 @@ package llm
 //go:generate cmake --build ggml/build/cuda-${CUDA_VERSION} --target server --config Release
 //go:generate cmake --build ggml/build/cuda-${CUDA_VERSION} --target server --config Release
 //go:generate cmake -S gguf -B gguf/build/cuda-${CUDA_VERSION} -DLLAMA_CUBLAS=on -DLLAMA_ACCELERATE=on -DLLAMA_K_QUANTS=on
 //go:generate cmake -S gguf -B gguf/build/cuda-${CUDA_VERSION} -DLLAMA_CUBLAS=on -DLLAMA_ACCELERATE=on -DLLAMA_K_QUANTS=on
 //go:generate cmake --build gguf/build/cuda-${CUDA_VERSION} --target server --config Release
 //go:generate cmake --build gguf/build/cuda-${CUDA_VERSION} --target server --config Release
+//go:generate cp --dereference ${CUDA_PATH} ggml/build/cuda-${CUDA_VERSION}/bin/libcuda.so
+//go:generate cp --dereference ${CUDA_PATH} gguf/build/cuda-${CUDA_VERSION}/bin/libcuda.so
+//go:generate cp --dereference ${CUBLAS_PATH} ggml/build/cuda-${CUDA_VERSION}/bin/libcublas.so.11
+//go:generate cp --dereference ${CUBLAS_PATH} gguf/build/cuda-${CUDA_VERSION}/bin/libcublas.so.11
+//go:generate cp --dereference ${CUDART_PATH} ggml/build/cuda-${CUDA_VERSION}/bin/libcudart.so.11.0
+//go:generate cp --dereference ${CUDART_PATH} gguf/build/cuda-${CUDA_VERSION}/bin/libcudart.so.11.0
+//go:generate cp --dereference ${CUBLASLT_PATH} ggml/build/cuda-${CUDA_VERSION}/bin/libcublasLt.so.11
+//go:generate cp --dereference ${CUBLASLT_PATH} gguf/build/cuda-${CUDA_VERSION}/bin/libcublasLt.so.11

+ 1 - 1
llm/llama.go

@@ -353,7 +353,7 @@ func newLlama(model string, adapters []string, runners []ModelRunner, opts api.O
 			runner.Path,
 			runner.Path,
 			append(params, "--port", strconv.Itoa(port))...,
 			append(params, "--port", strconv.Itoa(port))...,
 		)
 		)
-
+		cmd.Env = append(os.Environ(), fmt.Sprintf("LD_LIBRARY_PATH=%s", filepath.Dir(runner.Path)))
 		cmd.Stdout = os.Stderr
 		cmd.Stdout = os.Stderr
 		cmd.Stderr = os.Stderr
 		cmd.Stderr = os.Stderr