diff --git a/csrc/core/batch_invariant.hpp b/csrc/core/batch_invariant.hpp index 19e422e4b80cd..e769e1a25ac0e 100644 --- a/csrc/core/batch_invariant.hpp +++ b/csrc/core/batch_invariant.hpp @@ -8,9 +8,12 @@ namespace vllm { // vllm_kernel_override_batch_invariant(); returns true // if env VLLM_KERNEL_OVERRIDE_BATCH_INVARIANT=1 inline bool vllm_kernel_override_batch_invariant() { - std::string env_key = "VLLM_KERNEL_OVERRIDE_BATCH_INVARIANT"; - const char* val = std::getenv(env_key.c_str()); - return (val && std::atoi(val) != 0) ? 1 : 0; + static bool cached = []() { + std::string env_key = "VLLM_KERNEL_OVERRIDE_BATCH_INVARIANT"; + const char* val = std::getenv(env_key.c_str()); + return (val && std::atoi(val) != 0) ? 1 : 0; + }(); + return cached; } } // namespace vllm