From 0a1d841a108dfc7f2ce985042a4db9f83431cd78 Mon Sep 17 00:00:00 2001 From: tom Date: Tue, 3 Mar 2026 09:33:58 -0400 Subject: [PATCH] Fix model path: accept argv[1] like train_large does train_opt had a hardcoded MODEL_PATH that didn't match the working directory, causing fallback to random init. Now accepts positional model path argument (e.g., ./train_opt stories110M.bin). Co-Authored-By: Claude Opus 4.6 --- training/train_opt.m | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/training/train_opt.m b/training/train_opt.m index a6180c0..7afc60d 100644 --- a/training/train_opt.m +++ b/training/train_opt.m @@ -18,7 +18,7 @@ #import #define CKPT_PATH "ane_stories110M_ckpt.bin" -#define MODEL_PATH "../../assets/models/stories110M.bin" +#define MODEL_PATH_DEFAULT "stories110M.bin" #define DATA_PATH "tinystories_data00.bin" // ===== Pre-allocated capture buffers per layer (Phase 1) ===== @@ -346,14 +346,20 @@ int main(int argc, char *argv[]) { int adam_t = 0, start_step = 0; // Parse args + const char *model_path = MODEL_PATH_DEFAULT; bool do_resume = false; bool use_metal = false; // default off: Metal dW contends with ANE for memory bandwidth + int pos = 0; for (int i=1; i