Skip to content

Conversation

@SigureMo
Copy link
Member

@SigureMo SigureMo commented Mar 24, 2025

PaddlePaddle/Paddle#71837 重构了 prim flag 体系,删掉了 C++ flag FLAGS_prim_all,因此导致了 set_flags({"FLAGS_prim_all": with_prim}) 形式不再被允许(但环境变量 FLAGS_prim_all 仍然有效,仅仅只是 FLAGS_prim_all 通过 set_flags 形式设置有问题而已)

本 PR 进行了如下两种转写:

使用 API 代替设置 flag:

-paddle.set_flags({'FLAGS_prim_all': with_prim})
+paddle.base.core._set_prim_all_enabled(with_prim)

FLAGS_prim_all 转发到 FLAGS_prim_forwardFLAGS_prim_backward 设置

 def SetEnvVar(env_var2value):
     for env_var, value in env_var2value.items():
         os.environ[env_var] = str(value)
+    if env_var2value.get("FLAGS_prim_all") is not None:
+        prim_all_value = env_var2value.pop("FLAGS_prim_all")
+        env_var2value["FLAGS_prim_forward"] = prim_all_value
+        env_var2value["FLAGS_prim_backward"] = prim_all_value
     paddle.set_flags({
         env_var:value
         for env_var, value in env_var2value.items()
         if env_var.startswith('FLAGS_')
     })

本 PR 需在 PaddlePaddle/Paddle#71837 前合入

@Zeref996 Zeref996 merged commit 8ec3183 into PaddlePaddle:develop Mar 24, 2025
1 check passed
@SigureMo SigureMo deleted the use-api-to-instead-of-set-prim-all-cpp-flag branch March 24, 2025 08:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants