在C++中使用MLX#
你可以在使用CMake的C++项目中使用MLX。
注意
本指南基于以下使用C++中的MLX的示例
首先安装MLX:
pip install -U mlx
你也可以从源代码安装MLX Python包或仅安装C++库。更多信息请参见安装MLX的文档。
接下来在 example.cpp 中创建一个示例程序:
#include <iostream>
#include "mlx/mlx.h"
namespace mx = mlx::core;
int main() {
auto x = mx::array({1, 2, 3});
auto y = mx::array({1, 2, 3});
std::cout << x + y << std::endl;
return 0;
}
下一步是在 CMakeLists.txt 中设置一个 CMake 文件:
cmake_minimum_required(VERSION 3.27)
project(example LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
根据你安装MLX的方式,你可能需要告诉CMake在哪里找到它。
如果您使用Python安装了MLX,则将以下内容添加到CMake文件中:
find_package(
Python 3.9
COMPONENTS Interpreter Development.Module
REQUIRED)
execute_process(
COMMAND "${Python_EXECUTABLE}" -m mlx --cmake-dir
OUTPUT_STRIP_TRAILING_WHITESPACE
OUTPUT_VARIABLE MLX_ROOT)
如果您将MLX C++包安装到系统路径中,那么CMake应该能够找到它。如果您将其安装到非标准位置或CMake无法找到MLX,请将MLX_ROOT设置为MLX的安装位置:
set(MLX_ROOT "/path/to/mlx/")
接下来,指示CMake查找MLX:
find_package(MLX CONFIG REQUIRED)
最后,将example.cpp程序添加为可执行文件并链接MLX。
add_executable(example example.cpp)
target_link_libraries(example PRIVATE mlx)
你可以使用以下命令构建示例:
cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build
并使用以下命令运行它:
./build/example
注意 find_package(MLX CONFIG REQUIRED) 设置了以下变量:
变量 |
描述 |
|---|---|
MLX_FOUND |
|
MLX_INCLUDE_DIRS |
包含目录 |
MLX_LIBRARIES |
要链接的库 |
MLX_CXX_FLAGS |
额外的编译器标志 |
MLX_BUILD_ACCELERATE |
|
MLX_BUILD_METAL |
|