Conversation
alalek
left a comment
There was a problem hiding this comment.
It would be nice to document used math and used order of dimensions for blobs with their size constraints (input/weights/output, like NCHW).
| float* rowbuf = rowbuf0; | ||
| for( ofs = ofs0; ofs < ofs1; out_j = 0, ++out_i ) | ||
|
|
||
| for( ofs = ofs0; ofs < ofs1; out_d += (out_i + 1) / outH, out_i = (out_i + 1) % outH, out_j = 0 ) |
There was a problem hiding this comment.
Can you please explain this changes?
I mean I just wanted just to understand them. Previously we had at least one dimension which were incremented by 1 every iteration but now all the dimensions are computed.
There was a problem hiding this comment.
for( ofs = ofs0; ofs < ofs1; out_j = 0, ++out_i ) {
if (out_i == outH) {
out_i = 0;
++out_d;
}
// do something
}
|
|
|
@l-bat, please test this patch: dkurt@fdb1530. Make sure that hyperthreading and Intel Boost Technology are disabled in BIOS (not auto but explicitly disabled). Please also provide the details about CPU and it's frequency. |
|
Intel(R) Core(TM) i5-6500 CPU
|
|
This PR looks good as for me. @alalek, What do you think, can we merge it now? |
* Support Conv3D on OCV backend * Add header * Add perf tests * Support pool3d * Enable Resnet34_kinetics on OCV backend * Add test * Fix conv * Optimize Conv2D
Related: #13933
Merge with extra: opencv/opencv_extra#630