fn
run_executable
→std::vector<TensorImplPtr>int run_executable(CompiledExecutable * exe, const int & input_feeds)Run a compiled executable.
Parameters
exeCompiledExecutable*Executable returned by
compile_trace; must be non-null.input_feedsconst std::vector<TensorImplPtr>&Inputs in the executable's
input_ids order. Each feed must live on the same device as the executable; the GPU path materialises the underlying MTLBuffer via the MLX bridge and binds it as an MPSGraphTensorData.Returns
std::vector<TensorImplPtr>Freshly-allocated output tensors in output_ids order. Each output's GpuStorage wraps a new MTLBuffer allocated by the executable run — no copy back to MLX.
Notes
Implementation lives in CompiledExecutable.mm (Objective-C++)
so all MPSGraph types stay in one translation unit.