Skip to content

[DoubleGrad PR #1] Decoupled code generation logics for Dygraph ForwardFunctions and GradNodes#40937

Merged
jim19930609 merged 5 commits intoPaddlePaddle:developfrom
jim19930609:separate_forward_and_node_gen
Mar 28, 2022
Merged

[DoubleGrad PR #1] Decoupled code generation logics for Dygraph ForwardFunctions and GradNodes#40937
jim19930609 merged 5 commits intoPaddlePaddle:developfrom
jim19930609:separate_forward_and_node_gen

Conversation

@jim19930609
Copy link
Contributor

PR types

New features

PR changes

Others

Describe

Refactored the original DygraphSingleFunctionGenerator class to decouple code generation logics for Forward Functions and GradNodes. After this patch, dygraph code generation will have 3 different classes involved:

  1. A base class "DygraphFunctionGeneratorBase", which is responsible for YamlParsing, ValidationCheck and Preprocessings for parsed contents.
  2. "DygraphForwardFunctionGenerator", which focus on generating dygraph_forward_functions only.
  3. "DygraphNodeGenerator", the recursion unit to generate 1st-order to higher-order GradNodes.

Copy link
Contributor

@JiabinYang JiabinYang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@jim19930609 jim19930609 merged commit 86554d9 into PaddlePaddle:develop Mar 28, 2022
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