diff --git a/frontier/execution_time_predictor/sklearn_moe_execution_time_predictor.py b/frontier/execution_time_predictor/sklearn_moe_execution_time_predictor.py
--- a/frontier/execution_time_predictor/sklearn_moe_execution_time_predictor.py
+++ b/frontier/execution_time_predictor/sklearn_moe_execution_time_predictor.py
@@ -1,4 +1,5 @@
 from typing import Any, Dict, List, Optional, TYPE_CHECKING, Union
+from functools import lru_cache
 import os
 
 import numpy as np
@@ -384,6 +385,7 @@
             allocation_ratios=allocation_ratios,
         )
 
+    @lru_cache(maxsize=None)
     def _get_critical_prefill_ep_lane_tokens(
         self,
         total_routed_tokens: int,
