Releases: clEsperanto/CLIc
Releases · clEsperanto/CLIc
v0.6.2
What's Changed
- Add custom kernel operation by @StRigaud in #119
- Add convolve filter by @thawn in #124
- Use CMake fetchcontent to git clone ocl header by @StRigaud in #121
- Use CMake fetchcontent to git clone ocl kernel by @StRigaud in #122
- FIX: CMakePresets.json configuration file by @StRigaud in #126
- Build(deps): bump lukka/get-cmake from 3.24.3 to 3.25.1 by @dependabot in #127
Full Changelog: 0.6.1...0.6.2
v0.6.1
What's Changed
- Create dependabot.yml by @StRigaud in #97
- Bump lukka/get-cmake from 3.21.2 to 3.24.3 by @dependabot in #105
- Bump jidicula/clang-format-action from 4.8.0 to 4.9.0 by @dependabot in #108
- Bump actions/checkout from 2 to 3 by @dependabot in #110
- Bump thirdparty/opencl/ocl-clhpp from
0af4767
to4a11574
by @dependabot in #109 - Bump thirdparty/opencl/ocl-headers from
def8be9
to8f33fba
by @dependabot in #106 - Add gradient y by @thawn in #117
- added gradient-x by @jo-mueller in #113
- gradient_z support by @pr4deepr in #118
New Contributors
- @dependabot made their first contribution in #105
- @thawn made their first contribution in #117
- @jo-mueller made their first contribution in #113
- @pr4deepr made their first contribution in #118
Full Changelog: 0.6.0...0.6.1
v0.6.0
v0.5.4
0.5.3
0.5.2
0.5.2 - April 1st 2022
New features
- add new kernel operations [#71]
- binary operation and, or, xor, not, subtract
- histogram
- threshold otsu
- mask
- masked voronoi labeling
- Add Constant variable declaration.
- This allows to define a constant value accessible by all threads executing the same kernel.
Miscellaneous
- Fixing some warning [#71]
- Rename thirdparty submodules
- clij-opencl-kernels => clesperanto-kernels
- add opencl-headers
- regroupe opencl submodules into opencl folder
- Consolidation of CMakeList.txt
- Renaming
labelling
intolabeling
Contributors: @StRigaud
v0.5.0
Enhancement
- Improve error management
- try/catch blocks for OpenCL error management.
- throw runtime_error if fail during execution.
- OpenCL error code to string translation, improve debuging.
- Rework of GPU branch (#52).
- Remove all Manager classes into single GPU class.
- Force 1 Platform - 1 Device - 1 Context - 1 Command Queue instance. If dealing with multiple GPUs, the current usage is to declare multiple instance of CLE.
Push
,Pull
,Create
, and other low-level operation are now done at the GPU class level.
- Rework of data branch
- Creation of
Object
which replaceBuffer
orImage
class. Object
class hold acl::Memory
which can be acl::Buffer
,cl::Image1D
,cl::Image2D
,cl::Image3D
.- Kernel I/O is now
Object
, no matter if its holding a Buffer or an Image. - Remove
shared_ptr
usage in favor of reference/copy. Object
holdingBuffer
orImage
can swapped seamlessly, at user will.- Reset method, allow to free memory hold in
Object
, to be handle carefully.
- Creation of
- Extension of buffer to 1d compatibility (#57)
- Extension of CLIJ kernels to nd clEsperanto kernels (#16).
- Rework how
GlobalNDRange
is defined (#69).- Default, is set to
dst.Shape()
beforeenqueueNDRange()
is call. SetGlobalNDRange()
methods is available at kernel class level for defining specific range.
- Default, is set to
- Rework of kernels test to cover as much as possible usage (shape, data-type, object-type, etc.).
New features
- Introduce library core class unity test.
- Introduce new data class
Object
holding a cl::Memory, generic OpenCL holder for (cl_buffer
,cl_image1d
,cl_image2d
,cl_image3d
) (#52).
Miscellaneous
- Replace
gcovr
bylcov
for coverage report generation to code-cov. - Consolidation of CMake code (#53)
- Fixing MSVC warning (#54, #56)
- Increase project OpenCL-CLHPP flexibility (#55)
- Add documentation comments in core classes.
Known issues
- Incompatiblity using Image with kernel cleBlockEnumerateKernel.
- Kernel must use Buffer memory object or will fail, possible issue in kernel code.
Object::Image
only works withfloat
data type for now.- Possible multiple MSCV warning remaining.
Bug fixes
- Remove extra context manager class left in Tier1 folder.