@@ -8,6 +8,7 @@ REM cpu-localllm CPU with llama.cpp embeddings (BYOM)
88REM cpu-bge CPU with llama.cpp + BGE model embedded
99REM cuda CUDA with llama.cpp embeddings (BYOM)
1010REM cuda-bge CUDA with llama.cpp + BGE model embedded
11+ REM vulkan Vulkan GPU acceleration (cross-platform)
1112REM
1213REM Usage:
1314REM build.bat cpu Build CPU-only (no embeddings)
@@ -49,6 +50,7 @@ if "%VARIANT%"=="cpu-localllm" goto :build_cpu_localllm
4950if " %VARIANT% " == " cpu-bge" goto :build_cpu_bge
5051if " %VARIANT% " == " cuda" goto :build_cuda
5152if " %VARIANT% " == " cuda-bge" goto :build_cuda_bge
53+ if " %VARIANT% " == " vulkan" goto :build_vulkan
5254
5355echo ERROR: Unknown variant '%VARIANT% '
5456echo Run 'build.bat help' for usage
@@ -199,6 +201,42 @@ if defined HEADLESS (
199201)
200202if errorlevel 1 goto :build_failed
201203
204+ REM Copy model alongside binary
205+ copy " %MODELS_DIR% \bge-m3.gguf" " %BIN_DIR% \" > nul 2 >& 1
206+ echo .
207+ echo ✓ Build successful!
208+ echo Model embedded: %BIN_DIR% \bge-m3.gguf
209+ echo Ready to run - GPU-accelerated embeddings!
210+ goto :eof
211+
212+ :build_vulkan
213+ echo ===============================================================
214+ echo Building: NornicDB Vulkan GPU (cross-platform)
215+ echo Output: %BIN_DIR% \nornicdb-vulkan.exe
216+ echo ===============================================================
217+ call :check_go
218+ if not exist " %BIN_DIR% " mkdir " %BIN_DIR% "
219+
220+ set " BUILD_TAGS = vulkan"
221+ if defined HEADLESS set " BUILD_TAGS = vulkan noui"
222+
223+ set CGO_ENABLED = 1
224+ set GOOS = windows
225+ set GOARCH = amd64
226+
227+ if defined HEADLESS (
228+ go build -tags=" %BUILD_TAGS% " -ldflags=" -s -w" -o " %BIN_DIR% \nornicdb-vulkan-headless.exe" .\cmd\nornicdb
229+ ) else (
230+ go build -tags=" %BUILD_TAGS% " -ldflags=" -s -w" -o " %BIN_DIR% \nornicdb-vulkan.exe" .\cmd\nornicdb
231+ )
232+ if errorlevel 1 goto :build_failed
233+ echo .
234+ echo ✓ Build successful!
235+ echo Vulkan GPU acceleration enabled
236+ echo Works with NVIDIA, AMD, Intel GPUs
237+ echo Requires Vulkan SDK: https://vulkan.lunarg.com/
238+ echo Set VULKAN_SDK environment variable if needed
239+
202240REM Copy model alongside binary
203241copy " %MODELS_DIR% \bge-m3.gguf" " %BIN_DIR% \" > nul 2 >& 1
204242echo .
@@ -378,6 +416,10 @@ echo.
378416echo cuda-bge CUDA + llama.cpp + BGE model (~430MB)
379417echo GPU-accelerated with embedded model
380418echo .
419+ echo vulkan Vulkan GPU acceleration (~20MB)
420+ echo Works with NVIDIA, AMD, Intel GPUs
421+ echo Requires Vulkan SDK from LunarG
422+ echo .
381423echo OPTIONS:
382424echo headless Build without web UI (add as second argument)
383425echo .
0 commit comments