Skip to content

[Operator][Graph][Regression] CNN optimizations#356

Merged
hjjq merged 33 commits intohidet-org:mainfrom
hjjq:conv-reg
Sep 8, 2023
Merged

[Operator][Graph][Regression] CNN optimizations#356
hjjq merged 33 commits intohidet-org:mainfrom
hjjq:conv-reg

Conversation

@hjjq
Copy link
Copy Markdown
Collaborator

@hjjq hjjq commented Sep 6, 2023

This PR aims to improve the performance of CNNs. The main changes include:

  1. Add a graph pass that converts and maintains image tensors to channel last format throughout the graph as long as possible.
  2. Move the padding operation into the schedule of conv2d. Also get rid of register writeback to global memory and force shared memory writeback.
  3. Add various torchvision models to regression.

@hjjq hjjq requested review from Aalanli and yaoyaoding September 6, 2023 19:17
Copy link
Copy Markdown
Member

@yaoyaoding yaoyaoding left a comment

Choose a reason for hiding this comment

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

Thanks @hjjq, the PR looks good to me. Good job!

@hjjq hjjq merged commit f206735 into hidet-org:main Sep 8, 2023
yaoyaoding pushed a commit to yaoyaoding/hidet that referenced this pull request Sep 25, 2023
This PR aims to improve the performance of CNNs. The main changes
include:

1. Add a graph pass that converts and maintains image tensors to channel
last format throughout the graph as long as possible.
2. Move the padding operation into the schedule of conv2d. Also get rid
of register writeback to global memory and force shared memory
writeback.
3. Add various torchvision models to regression.
vadiklyutiy added a commit that referenced this pull request Jul 22, 2024
When we used `__builtin_unreachable()` for hint the info about bounds
lost after some code. There was an introduced workaround that added
additional hints after loops.

After switching to `__builtin_assume()` the issue disappeared. 
This PR removes the workaround. 

No performance changes. 
http://10.24.10.108:8868/Build_History 
66fd65c after
3f955de before
vadiklyutiy added a commit that referenced this pull request Jul 23, 2024
When we used `__builtin_unreachable()` for hint the info about bounds
lost after some code. There was an introduced workaround that added
additional hints after loops.

After switching to `__builtin_assume()` the issue disappeared. 
This PR removes the workaround. 

No performance changes. 
http://10.24.10.108:8868/Build_History 
66fd65c after
3f955de before
vadiklyutiy added a commit that referenced this pull request Dec 26, 2024
When we used `__builtin_unreachable()` for hint the info about bounds
lost after some code. There was an introduced workaround that added
additional hints after loops.

After switching to `__builtin_assume()` the issue disappeared. 
This PR removes the workaround. 

No performance changes. 
http://10.24.10.108:8868/Build_History 
66fd65c after
3f955de before
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