-
Notifications
You must be signed in to change notification settings - Fork 97
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Expose conv2d weight/bias preparation as ops #14049
Conversation
@pavlejosipovic As for your question in the previous PR. If by c/p code you mean is the logic in that function copy/pasted then yes. All of the code is copy pasted since I'm just encapsulating existing logic in their own ops. |
I meant this function is not used internally and we have same logic inside other functions (instead of using the function)? |
This function does get used in |
e623ace
to
20668df
Compare
Added new weight and bias preparation ops, and new conv op that can only take pre-prepared weights. Working conv test with pre-prepared weights added return weight/output dims kwargs Only auto-shard if shard_layout not specified Pass input memory config to prepare functions Organize utility functions into their own files
Added new weight and bias preparation ops, and new conv op that can only take pre-prepared weights. Working conv test with pre-prepared weights added return weight/output dims kwargs Only auto-shard if shard_layout not specified Pass input memory config to prepare functions Organize utility functions into their own files
) Revert "Expose conv2d weight/bias preparation as ops (tenstorrent#14049)" This reverts commit 09fd48c. Force-merging to fix perf pipelines.
Added new weight and bias preparation ops, and new conv op that can only take pre-prepared weights. Working conv test with pre-prepared weights added return weight/output dims kwargs Only auto-shard if shard_layout not specified Pass input memory config to prepare functions Organize utility functions into their own files
Added new weight and bias preparation ops, and new conv op that can only take pre-prepared weights. Working conv test with pre-prepared weights added return weight/output dims kwargs Only auto-shard if shard_layout not specified Pass input memory config to prepare functions Organize utility functions into their own files
Added new weight and bias preparation ops, and new conv op that can only take pre-prepared weights. Working conv test with pre-prepared weights added return weight/output dims kwargs Only auto-shard if shard_layout not specified Pass input memory config to prepare functions Organize utility functions into their own files
Added new weight and bias preparation ops, and new conv op that can only take pre-prepared weights. Working conv test with pre-prepared weights added return weight/output dims kwargs Only auto-shard if shard_layout not specified Pass input memory config to prepare functions Organize utility functions into their own files
Added new weight and bias preparation ops, and new conv op that can only take pre-prepared weights. Working conv test with pre-prepared weights added return weight/output dims kwargs Only auto-shard if shard_layout not specified Pass input memory config to prepare functions Organize utility functions into their own files
Added new weight and bias preparation ops, and new conv op that can only take pre-prepared weights. Working conv test with pre-prepared weights added return weight/output dims kwargs Only auto-shard if shard_layout not specified Pass input memory config to prepare functions Organize utility functions into their own files
Added new weight and bias preparation ops, and new conv op that can only take pre-prepared weights. Working conv test with pre-prepared weights added return weight/output dims kwargs Only auto-shard if shard_layout not specified Pass input memory config to prepare functions Organize utility functions into their own files
Added new weight and bias preparation ops, and new conv op that can only take pre-prepared weights. Working conv test with pre-prepared weights added return weight/output dims kwargs Only auto-shard if shard_layout not specified Pass input memory config to prepare functions Organize utility functions into their own files
Added new weight and bias preparation ops, and new conv op that can only take pre-prepared weights. Working conv test with pre-prepared weights added return weight/output dims kwargs Only auto-shard if shard_layout not specified Pass input memory config to prepare functions Organize utility functions into their own files
Added new weight and bias preparation ops, and new conv op that can only take pre-prepared weights. Working conv test with pre-prepared weights added return weight/output dims kwargs Only auto-shard if shard_layout not specified Pass input memory config to prepare functions Organize utility functions into their own files
Added new weight and bias preparation ops, and new conv op that can only take pre-prepared weights. Working conv test with pre-prepared weights added return weight/output dims kwargs Only auto-shard if shard_layout not specified Pass input memory config to prepare functions Organize utility functions into their own files
Tickets
#13219, #12793
Problem description
Modelling convolutions in MLIR is difficult when you need to execute conv2d once in order to get the proper inputs for the next iteration.
What's changed
Moving weight and bias preparation to dedicated ops. The logic that prepared the ops on host already exists and is functional. The issue is that it is done within
conv2d
. Most of the code changes is copy/pasted.Checklist