Support of conv/linear oneDNN param cache for TorchInductor #7
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR aims to provide oneDNN param cache support for conv/linear OPs in TorchInductor.
Additional OPs are added in pytorch to provide conv/linear param generation based on input tensors and other parameters, which will return a param handler that been stored into a param cache sitting in TorchInductor generated sub-graph code. Conv/linear OPs in the generated sub-graph code will then query the cache to get the param and use it directly instead of initializing a conv param everytime been invoked.
TorchDynamo will guard the input shape change and invoke TorchInductor to re-generate new sub-graph code which will then include a new param cache for conv/linears with new shape.
conv+unary is supported currently, while conv+binary not fully yet as that need latest ideep which is under merging.