From 23ea6b4b013fa981e973f5e311b2e4a01f411d50 Mon Sep 17 00:00:00 2001 From: m0nsky Date: Wed, 19 Jun 2024 16:28:19 +0200 Subject: [PATCH 1/4] Add build actions for Vulkan LLaVa --- .github/workflows/compile.yml | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/.github/workflows/compile.yml b/.github/workflows/compile.yml index a1057646b..aa8952bad 100644 --- a/.github/workflows/compile.yml +++ b/.github/workflows/compile.yml @@ -158,20 +158,30 @@ jobs: # if we ever want to pull libvulkan.so back into the packages, just uncomment this line, and the one below for the upload # cp $(ldconfig -p | grep libvulkan.so | tail -n 1 | cut -d ' ' -f 4) ./ ls -R - - name: Upload artifacts (Windows) + - name: Upload llama artifacts (Windows) if: ${{ matrix.os == 'windows-latest' }} uses: actions/upload-artifact@v4 with: - path: | - .\build\bin\Release\llama.dll + path: .\build\bin\Release\llama.dll name: llama-bin-win-vulkan-x64.dll - - name: Upload artifacts (linux) + - name: Upload llava artifacts (Windows) + if: ${{ matrix.os == 'windows-latest' }} + uses: actions/upload-artifact@v4 + with: + path: .\build\bin\Release\llava_shared.dll + name: llama-bin-win-vulkan-x64.dll + - name: Upload llama artifacts (Linux) if: ${{ matrix.os == 'ubuntu-22.04' }} uses: actions/upload-artifact@v4 with: - path: | - ./build/libllama.so + path: ./build/libllama.so name: llama-bin-linux-vulkan-x64.so + - name: Upload llava artifacts (Linux) + if: ${{ matrix.os == 'ubuntu-22.04' }} + uses: actions/upload-artifact@v4 + with: + path: ./build/examples/llava/libllava_shared.so + name: llama-bin-win-vulkan-x64.dll compile-cublas: name: Compile (cublas) @@ -353,8 +363,11 @@ jobs: cp artifacts/llama-bin-linux-cublas-cu12.2.0-x64.so/libllama.so deps/cu12.2.0/libllama.so cp artifacts/llava-bin-linux-cublas-cu12.2.0-x64.so/libllava_shared.so deps/cu12.2.0/libllava_shared.so - cp artifacts/llama-bin-win-vulkan-x64.dll/llama.dll deps/vulkan/ - cp artifacts/llama-bin-linux-vulkan-x64.so/libllama.so deps/vulkan/ + cp artifacts/llama-bin-win-vulkan-x64.dll/llama.dll deps/vulkan/llama.dll + cp artifacts/llama-bin-win-vulkan-x64.dll/llava_shared.dll deps/vulkan/llava_shared.dll + + cp artifacts/llama-bin-linux-vulkan-x64.so/libllama.so deps/vulkan/libllama.so + cp artifacts/llama-bin-linux-vulkan-x64.so/libllava_shared.so deps/vulkan/libllava_shared.so - name: Upload artifacts uses: actions/upload-artifact@v4 From 09bbdebb1b57056d9c628097008cdc9458934b48 Mon Sep 17 00:00:00 2001 From: m0nsky Date: Wed, 19 Jun 2024 16:40:20 +0200 Subject: [PATCH 2/4] Fix build path (llama -> llava) --- .github/workflows/compile.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/compile.yml b/.github/workflows/compile.yml index aa8952bad..0acd9e4a8 100644 --- a/.github/workflows/compile.yml +++ b/.github/workflows/compile.yml @@ -169,7 +169,7 @@ jobs: uses: actions/upload-artifact@v4 with: path: .\build\bin\Release\llava_shared.dll - name: llama-bin-win-vulkan-x64.dll + name: llava-bin-win-vulkan-x64.dll - name: Upload llama artifacts (Linux) if: ${{ matrix.os == 'ubuntu-22.04' }} uses: actions/upload-artifact@v4 @@ -181,7 +181,7 @@ jobs: uses: actions/upload-artifact@v4 with: path: ./build/examples/llava/libllava_shared.so - name: llama-bin-win-vulkan-x64.dll + name: llava-bin-win-vulkan-x64.dll compile-cublas: name: Compile (cublas) @@ -364,10 +364,10 @@ jobs: cp artifacts/llava-bin-linux-cublas-cu12.2.0-x64.so/libllava_shared.so deps/cu12.2.0/libllava_shared.so cp artifacts/llama-bin-win-vulkan-x64.dll/llama.dll deps/vulkan/llama.dll - cp artifacts/llama-bin-win-vulkan-x64.dll/llava_shared.dll deps/vulkan/llava_shared.dll + cp artifacts/llava-bin-win-vulkan-x64.dll/llava_shared.dll deps/vulkan/llava_shared.dll cp artifacts/llama-bin-linux-vulkan-x64.so/libllama.so deps/vulkan/libllama.so - cp artifacts/llama-bin-linux-vulkan-x64.so/libllava_shared.so deps/vulkan/libllava_shared.so + cp artifacts/llava-bin-linux-vulkan-x64.so/libllava_shared.so deps/vulkan/libllava_shared.so - name: Upload artifacts uses: actions/upload-artifact@v4 From 1bcc191f22561ade0f44b9588f3082ce739de83a Mon Sep 17 00:00:00 2001 From: m0nsky Date: Wed, 19 Jun 2024 17:01:52 +0200 Subject: [PATCH 3/4] Fix Linux LLaVa path --- .github/workflows/compile.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/compile.yml b/.github/workflows/compile.yml index 0acd9e4a8..1ca666865 100644 --- a/.github/workflows/compile.yml +++ b/.github/workflows/compile.yml @@ -181,7 +181,7 @@ jobs: uses: actions/upload-artifact@v4 with: path: ./build/examples/llava/libllava_shared.so - name: llava-bin-win-vulkan-x64.dll + name: llava-bin-linux-vulkan-x64.so compile-cublas: name: Compile (cublas) From 66dc9bbd412c63ae734041787f391af756c238f3 Mon Sep 17 00:00:00 2001 From: m0nsky Date: Wed, 19 Jun 2024 17:34:13 +0200 Subject: [PATCH 4/4] Remove leftover comments (old opencl/libvulkan) --- .github/workflows/compile.yml | 7 ------- 1 file changed, 7 deletions(-) diff --git a/.github/workflows/compile.yml b/.github/workflows/compile.yml index 1ca666865..e19625f86 100644 --- a/.github/workflows/compile.yml +++ b/.github/workflows/compile.yml @@ -142,11 +142,6 @@ jobs: cd build cmake .. ${{ env.COMMON_DEFINE }} -DLLAMA_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DLLAMA_VULKAN=ON -DBUILD_SHARED_LIBS=ON -DCMAKE_PREFIX_PATH="$env:RUNNER_TEMP/vulkan" cmake --build . --config Release -j ${env:NUMBER_OF_PROCESSORS} - #copy $env:RUNNER_TEMP/clblast/lib/clblast.dll .\bin\Release\clblast.dll - # # We should probably generate a sha256 sum in a file, and use that. - # echo "78a8c98bcb2efe1a63318d901ab204d9ba96c3b29707b4ce0c4240bdcdc698d6 ./bin/Release/clblast.dll" >> tmp - # sha256sum -c tmp || exit 255 - # rm tmp ls -R - name: Build if: ${{ matrix.os == 'ubuntu-22.04' }} @@ -155,8 +150,6 @@ jobs: cd build cmake .. ${{ env.COMMON_DEFINE }} -DLLAMA_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DLLAMA_VULKAN=ON -DBUILD_SHARED_LIBS=ON cmake --build . --config Release -j ${env:NUMBER_OF_PROCESSORS} - # if we ever want to pull libvulkan.so back into the packages, just uncomment this line, and the one below for the upload - # cp $(ldconfig -p | grep libvulkan.so | tail -n 1 | cut -d ' ' -f 4) ./ ls -R - name: Upload llama artifacts (Windows) if: ${{ matrix.os == 'windows-latest' }}