Improve performance of experimental.resize
Category:
Refactoring
Description:
This PR improves experimental.resize operator to reduce the CPU overhead of the operator. It contains the following improvements (from most to least significant):
- using two workspace objects for the CV-CUDA op to get rid of synchronising between minibatches
- using custom allocator (taking memory from scratchpad) for the input/output TensorBatches
- improved method for creating input/output TensorBatch objects: moving all common parts out of the loop
- removed auxiliary TensorLists in favour of using the original i/os directly with PushFramesToBatch method
Additional information:
Affected modules and functionalities:
experimental.resize, nvcvop.h/cc
Key points relevant for the review:
Tests:
- [x] Existing tests apply
- [ ] New tests added
- [ ] Python tests
- [ ] GTests
- [ ] Benchmark
- [ ] Other
- [ ] N/A
Checklist
Documentation
- [x] Existing documentation applies
- [ ] Documentation updated
- [ ] Docstring
- [ ] Doxygen
- [ ] RST
- [ ] Jupyter
- [ ] Other
- [ ] N/A
DALI team only
Requirements
- [ ] Implements new requirements
- [ ] Affects existing requirements
- [ ] N/A
REQ IDs: N/A
JIRA TASK: N/A
!build
CI MESSAGE: [19099938]: BUILD STARTED
CI MESSAGE: [19099938]: BUILD FAILED
!build
CI MESSAGE: [19870509]: BUILD FAILED
!build
CI MESSAGE: [19871581]: BUILD STARTED
CI MESSAGE: [19871581]: BUILD PASSED
!build
CI MESSAGE: [29950877]: BUILD FAILED
CI MESSAGE: [29950877]: BUILD STARTED
CI MESSAGE: [29950877]: BUILD PASSED
!build
CI MESSAGE: [31003228]: BUILD STARTED
CI MESSAGE: [31003228]: BUILD FAILED
!build
CI MESSAGE: [31005410]: BUILD STARTED
CI MESSAGE: [31005410]: BUILD FAILED
!build
CI MESSAGE: [32390728]: BUILD STARTED
CI MESSAGE: [32390728]: BUILD FAILED
CI MESSAGE: [32390728]: BUILD PASSED
!build
CI MESSAGE: [32945037]: BUILD STARTED
CI MESSAGE: [32945037]: BUILD FAILED
!build
CI MESSAGE: [32949058]: BUILD STARTED
CI MESSAGE: [32949058]: BUILD FAILED
CI MESSAGE: [32949058]: BUILD PASSED
!build