diff --git a/backends/xnnpack/third-party/XNNPACK b/backends/xnnpack/third-party/XNNPACK index ad0e62d698..d5d572e46e 160000 --- a/backends/xnnpack/third-party/XNNPACK +++ b/backends/xnnpack/third-party/XNNPACK @@ -1 +1 @@ -Subproject commit ad0e62d69815946be92134a56ed3ff688e2549e8 +Subproject commit d5d572e46ed3929fa3e67f6174192893943cf724 diff --git a/backends/xnnpack/third-party/cpuinfo b/backends/xnnpack/third-party/cpuinfo index fa1c679da8..1e83a2fdd3 160000 --- a/backends/xnnpack/third-party/cpuinfo +++ b/backends/xnnpack/third-party/cpuinfo @@ -1 +1 @@ -Subproject commit fa1c679da8d19e1d87f20175ae1ec10995cd3dd3 +Subproject commit 1e83a2fdd3102f65c6f1fb602c1b320486218a99 diff --git a/extension/llm/runner/stats.h b/extension/llm/runner/stats.h index 28abc41854..f9462d24cd 100644 --- a/extension/llm/runner/stats.h +++ b/extension/llm/runner/stats.h @@ -59,9 +59,16 @@ struct ET_EXPERIMENTAL Stats { aggregate_sampling_timer_start_timestamp = 0; } - void reset() { - model_load_start_ms = 0; - model_load_end_ms = 0; + void reset(bool all_stats = false) { + // Not resetting model_load_start_ms and model_load_end_ms because reset is + // typically called after warmup and before running the actual run. + // However, we don't load the model again during the actual run after + // warmup. So, we don't want to reset these timestamps unless we are + // resetting everything. + if (all_stats) { + model_load_start_ms = 0; + model_load_end_ms = 0; + } inference_start_ms = 0; prompt_eval_end_ms = 0; first_token_ms = 0;