Skip to content

Commit cc12d9b

Browse files
larryliu0820facebook-github-bot
authored andcommitted
Add MPS support to llama runner (#3464)
Summary: As titled. This let me easily test MPS delegate on llama runner. Commands: * Install ExecuTorch libraries: ``` cmake -DCMAKE_INSTALL_PREFIX=cmake-out \ -DCMAKE_BUILD_TYPE=Debug \ -DEXECUTORCH_BUILD_EXTENSION_MODULE=ON \ -DEXECUTORCH_BUILD_EXTENSION_DATA_LOADER=ON \ -DEXECUTORCH_BUILD_CUSTOM=ON \ -DEXECUTORCH_BUILD_OPTIMIZED=ON \ -DEXECUTORCH_BUILD_QUANTIZED=ON \ -DEXECUTORCH_BUILD_XNNPACK=ON \ -DEXECUTORCH_BUILD_MPS=ON \ -DPYTHON_EXECUTABLE=python \ -Bcmake-out . cmake --build cmake-out -j9 --target install --config Debug ``` * Install llama runner ``` cmake -DCMAKE_INSTALL_PREFIX=cmake-out \ -DCMAKE_BUILD_TYPE=Debug \ -DEXECUTORCH_BUILD_OPTIMIZED=ON \ -DPYTHON_EXECUTABLE=python \ -Bcmake-out/examples/models/llama2 \ examples/models/llama2 cmake --build cmake-out/examples/models/llama2 -j9 --config Debug ``` Pull Request resolved: #3464 Reviewed By: cccclai Differential Revision: D56856480 Pulled By: larryliu0820 fbshipit-source-id: 91d2c4fda4fda8b42bebd49a3be9f9b9226994d2
1 parent aee435d commit cc12d9b

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

examples/models/llama2/CMakeLists.txt

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -92,8 +92,7 @@ if(EXECUTORCH_USE_TIKTOKEN)
9292
# find RE2 for tokenizer
9393
set(ABSL_ENABLE_INSTALL ON)
9494
set(ABSL_PROPAGATE_CXX_STD ON)
95-
set(_pic_flag
96-
${CMAKE_POSITION_INDEPENDENT_CODE})
95+
set(_pic_flag ${CMAKE_POSITION_INDEPENDENT_CODE})
9796
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
9897
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/third-party/abseil-cpp)
9998
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/third-party/re2)
@@ -169,6 +168,19 @@ if(TARGET qnn_executorch_backend)
169168
target_link_options_shared_lib(qnn_executorch_backend)
170169
endif()
171170

171+
# MPS backend
172+
if(TARGET mpsdelegate)
173+
list(
174+
APPEND
175+
link_libraries
176+
mpsdelegate
177+
"-framework Foundation"
178+
"-weak_framework MetalPerformanceShaders"
179+
"-weak_framework MetalPerformanceShadersGraph"
180+
"-weak_framework Metal")
181+
target_link_options_shared_lib(mpsdelegate)
182+
endif()
183+
172184
# This one is needed for cpuinfo where it uses android specific log lib
173185
if(ANDROID)
174186
list(APPEND link_libraries log)

0 commit comments

Comments
 (0)