Last active
May 10, 2023 14:38
-
-
Save edp1096/a1a137b3dd34aa754008526860a239fd to your computer and use it in GitHub Desktop.
llama.cpp build /w clblast on windows & msvc. names before openblast_cmake is directory.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@echo off | |
curl --progress-bar -Lo clblast.zip "https://github.com/CNugteren/CLBlast/releases/download/1.5.3/CLBlast-1.5.3-Windows-x64.zip" | |
curl --progress-bar -Lo opencl.zip "https://github.com/KhronosGroup/OpenCL-SDK/releases/download/v2023.04.17/OpenCL-SDK-v2023.04.17-Win-x64.zip" | |
md openclblast | |
tar -xf clblast.zip -C openclblast | |
tar -xf opencl.zip -C openclblast | |
xcopy openclblast\OpenCL-SDK-v2023.04.17-Win-x64 openclblast /E /Y | |
copy openclblast_cmake\*.cmake openclblast\lib\cmake\CLBlast /Y >nul 2>&1 | |
rmdir openclblast\OpenCL-SDK-v2023.04.17-Win-x64 /s /q >nul 2>&1 | |
md build >nul 2>&1 | |
cd build | |
cmake .. -DCMAKE_PREFIX_PATH='openclblast' -DLLAMA_CLBLAST=1 | |
cmake --build . --config Release | |
cd .. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@echo off | |
curl --progress-bar -Lo clblast.zip "https://github.com/CNugteren/CLBlast/releases/download/1.5.3/CLBlast-1.5.3-Windows-x64.zip" | |
curl --progress-bar -Lo opencl.zip "https://github.com/KhronosGroup/OpenCL-SDK/releases/download/v2023.04.17/OpenCL-SDK-v2023.04.17-Win-x64.zip" | |
md openclblast | |
tar -xf clblast.zip -C openclblast | |
tar -xf opencl.zip -C openclblast | |
xcopy openclblast\OpenCL-SDK-v2023.04.17-Win-x64 openclblast /E /Y | |
copy openclblast_cmake\*.cmake openclblast\lib\cmake\CLBlast /Y >nul 2>&1 | |
rmdir openclblast\OpenCL-SDK-v2023.04.17-Win-x64 /s /q >nul 2>&1 | |
mingw32-make.exe LLAMA_CLBLAST=1 CC=gcc CFLAGS='-Iopenclblast/include' LDFLAGS="-Lopenclblast/lib -lclblast -lOpenCL" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@echo off | |
rmdir build /s /q >nul 2>&1 | |
rmdir openclblast /s /q >nul 2>&1 | |
del /s /q clblast.zip >nul 2>&1 | |
del /s /q opencl.zip >nul 2>&1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#---------------------------------------------------------------- | |
# Generated CMake target import file for configuration "Release". | |
#---------------------------------------------------------------- | |
# Commands may need to know the format version. | |
set(CMAKE_IMPORT_FILE_VERSION 1) | |
# Import target "clblast" for configuration "Release" | |
set_property(TARGET clblast APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) | |
set_target_properties(clblast PROPERTIES | |
IMPORTED_IMPLIB_RELEASE "${_IMPORT_PREFIX}/lib/clblast.lib" | |
IMPORTED_LINK_INTERFACE_LIBRARIES_RELEASE "${_IMPORT_PREFIX}/lib/OpenCL.lib" | |
IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/clblast.dll" | |
) | |
list(APPEND _IMPORT_CHECK_TARGETS clblast ) | |
list(APPEND _IMPORT_CHECK_FILES_FOR_clblast "${_IMPORT_PREFIX}/lib/clblast.lib" "${_IMPORT_PREFIX}/lib/clblast.dll" ) | |
# Commands beyond this point should not need to know the version. | |
set(CMAKE_IMPORT_FILE_VERSION) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Generated by CMake | |
if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.5) | |
message(FATAL_ERROR "CMake >= 2.6.0 required") | |
endif() | |
cmake_policy(PUSH) | |
cmake_policy(VERSION 2.6) | |
#---------------------------------------------------------------- | |
# Generated CMake target import file. | |
#---------------------------------------------------------------- | |
# Commands may need to know the format version. | |
set(CMAKE_IMPORT_FILE_VERSION 1) | |
# Protect against multiple inclusion, which would fail when already imported targets are added once more. | |
set(_targetsDefined) | |
set(_targetsNotDefined) | |
set(_expectedTargets) | |
foreach(_expectedTarget clblast) | |
list(APPEND _expectedTargets ${_expectedTarget}) | |
if(NOT TARGET ${_expectedTarget}) | |
list(APPEND _targetsNotDefined ${_expectedTarget}) | |
endif() | |
if(TARGET ${_expectedTarget}) | |
list(APPEND _targetsDefined ${_expectedTarget}) | |
endif() | |
endforeach() | |
if("${_targetsDefined}" STREQUAL "${_expectedTargets}") | |
unset(_targetsDefined) | |
unset(_targetsNotDefined) | |
unset(_expectedTargets) | |
set(CMAKE_IMPORT_FILE_VERSION) | |
cmake_policy(POP) | |
return() | |
endif() | |
if(NOT "${_targetsDefined}" STREQUAL "") | |
message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_targetsDefined}\nTargets not yet defined: ${_targetsNotDefined}\n") | |
endif() | |
unset(_targetsDefined) | |
unset(_targetsNotDefined) | |
unset(_expectedTargets) | |
# Compute the installation prefix relative to this file. | |
get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH) | |
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH) | |
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH) | |
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH) | |
if(_IMPORT_PREFIX STREQUAL "/") | |
set(_IMPORT_PREFIX "") | |
endif() | |
# Create imported target clblast | |
add_library(clblast SHARED IMPORTED) | |
set_target_properties(clblast PROPERTIES | |
INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include" | |
) | |
# Load information for each installed configuration. | |
get_filename_component(_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) | |
file(GLOB CONFIG_FILES "${_DIR}/CLBlastConfig-*.cmake") | |
foreach(f ${CONFIG_FILES}) | |
include(${f}) | |
endforeach() | |
# Cleanup temporary variables. | |
set(_IMPORT_PREFIX) | |
# Loop over all imported files and verify that they actually exist | |
foreach(target ${_IMPORT_CHECK_TARGETS} ) | |
foreach(file ${_IMPORT_CHECK_FILES_FOR_${target}} ) | |
if(NOT EXISTS "${file}" ) | |
message(FATAL_ERROR "The imported target \"${target}\" references the file | |
\"${file}\" | |
but this file does not exist. Possible reasons include: | |
* The file was deleted, renamed, or moved to another location. | |
* An install or uninstall procedure did not complete successfully. | |
* The installation package was faulty and contained | |
\"${CMAKE_CURRENT_LIST_FILE}\" | |
but not all the files it references. | |
") | |
endif() | |
endforeach() | |
unset(_IMPORT_CHECK_FILES_FOR_${target}) | |
endforeach() | |
unset(_IMPORT_CHECK_TARGETS) | |
# This file does not depend on other imported targets which have | |
# been exported from the same project but in a separate export set. | |
# Commands beyond this point should not need to know the version. | |
set(CMAKE_IMPORT_FILE_VERSION) | |
cmake_policy(POP) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment