diff --git a/torch_npu/csrc/core/npu/sys_ctrl/npu_sys_ctrl.cpp b/torch_npu/csrc/core/npu/sys_ctrl/npu_sys_ctrl.cpp index 42d80b0792e29ec99afaba72f30554c2aca3c9c9..95dbf4177916668d1a4365182260c5ed53d9e161 100644 --- a/torch_npu/csrc/core/npu/sys_ctrl/npu_sys_ctrl.cpp +++ b/torch_npu/csrc/core/npu/sys_ctrl/npu_sys_ctrl.cpp @@ -177,7 +177,10 @@ NpuSysCtrl::SysStatus NpuSysCtrl::Initialize(int device_id) } NPU_CHECK_ERROR(at_npu::native::AclrtCtxSetSysParamOpt(aclSysParamOpt::ACL_OPT_DETERMINISTIC, 0)); - NPU_CHECK_SUPPORTED_OR_ERROR(c10_npu::acl::AclrtSetOpExecuteTimeOut(kMaxOpExecuteTimeOut)); + auto exec_timeout = c10_npu::option::OptionsManager::GetACLExecTimeout(); + exec_timeout = exec_timeout <=0 ? kMaxOpExecuteTimeOut : exec_timeout; + NPU_CHECK_SUPPORTED_OR_ERROR(c10_npu::acl::AclrtSetOpExecuteTimeOut(exec_timeout)); + ASCEND_LOGD("AclrtSetOpExecuteTimeOut set successfully. exec_timeout= %d s", exec_timeout); // lazy call for the setoption for (const auto &iter: lazy_fn_) {