| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Sorry, something went wrong.
There was a problem hiding this comment.
Looks great. Excellent documentation of the new functions. Can't wait to get rid of the old OpenCL kernel lookups.
Sorry, something went wrong.
* Moved common code required by CUDA and OpenCL caching algorithm into
kernel_cache.[hpp|cpp]
* Added common/compile_kernel.hpp header that defines the signature
of the function, compileKernel, that each backend has to implement.
* Each backend has to implement/satisfy the following requirements:
- Provide compile_kernel.cpp source with compileKernel function that is
used by common::findKernel
- Provide Kernel.hpp/cpp that implements KernelInterface from
common/KernelInterface.hpp
- Kernel.hpp also provides a functor than helps launch backend kernels.
* Moved kernel utility helpers into separate header(s)/source:
- TemplateArg.hpp/cpp contains the TemplateArg struct and some helper macros
to convert template arguments to strings.
- TemplateTypename.hpp contains the templated TemplateTypename struct that
helps to convert backend kernel paramters to TemplateArg object.
* Refactored all CUDA kernels to use the new caching API
* Refactored only transpose, morph and canny to use new caching API from OpenCL
* Reduced lot of unnecessary instantiations for morphological functions
| Back | FazBrowse Home | New Git URL |
Partially addresses tasks from #2857