x86 deformableconv2d packed unified elempack - #6567
Conversation
|
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #6567 +/- ##
==========================================
- Coverage 93.25% 93.15% -0.10%
==========================================
Files 860 846 -14
Lines 269010 265642 -3368
==========================================
- Hits 250857 247471 -3386
- Misses 18153 18171 +18 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
This PR refactors the x86 DeformableConv2D implementation to use a single unified “packed” kernel implementation, replacing many specialized packX/packXtoY variants.
Changes:
- Replace per-elempack/out-elempack dispatch (pack4/8/16 and conversions) with a single
deformableconv2d_packed()implementation. - Update the x86 forward path to call the unified packed kernel for all non-(pack1→pack1) cases.
- Remove the legacy specialized packed kernel header implementations that are no longer referenced.
Reviewed changes
Copilot reviewed 17 out of 17 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| src/layer/x86/deformableconv2d_x86.cpp | Switches to including deformableconv2d_packed.h and routes packed execution through a single unified call. |
| src/layer/x86/deformableconv2d_packed.h | Adds unified packed deformableconv2d kernel handling multiple elempack/out_elempack combinations. |
| src/layer/x86/deformableconv2d_pack8to4.h | Removes legacy specialized pack8→pack4 kernel. |
| src/layer/x86/deformableconv2d_pack8to16.h | Removes legacy specialized pack8→pack16 kernel. |
| src/layer/x86/deformableconv2d_pack8to1.h | Removes legacy specialized pack8→pack1 kernel. |
| src/layer/x86/deformableconv2d_pack8.h | Removes legacy specialized pack8 kernel. |
| src/layer/x86/deformableconv2d_pack4to8.h | Removes legacy specialized pack4→pack8 kernel. |
| src/layer/x86/deformableconv2d_pack4to16.h | Removes legacy specialized pack4→pack16 kernel. |
| src/layer/x86/deformableconv2d_pack4to1.h | Removes legacy specialized pack4→pack1 kernel. |
| src/layer/x86/deformableconv2d_pack4.h | Removes legacy specialized pack4 kernel. |
| src/layer/x86/deformableconv2d_pack1to8.h | Removes legacy specialized pack1→pack8 kernel. |
| src/layer/x86/deformableconv2d_pack1to4.h | Removes legacy specialized pack1→pack4 kernel. |
| src/layer/x86/deformableconv2d_pack1to16.h | Removes legacy specialized pack1→pack16 kernel. |
| src/layer/x86/deformableconv2d_pack16to8.h | Removes legacy specialized pack16→pack8 kernel. |
| src/layer/x86/deformableconv2d_pack16to4.h | Removes legacy specialized pack16→pack4 kernel. |
| src/layer/x86/deformableconv2d_pack16to1.h | Removes legacy specialized pack16→pack1 kernel. |
| src/layer/x86/deformableconv2d_pack16.h | Removes legacy specialized pack16 kernel. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
No description provided.