clEsperanto / clij-opencl-kernels

Other
14 stars 4 forks source link

clesperanto kernel convertion effort #16 #17

Open StRigaud opened 2 years ago

StRigaud commented 2 years ago

Related to #16 Checked one are either under process or finished. Once processed remove _xd and _x

StRigaud commented 2 years ago

@haesleinhuepf Can you remove the kernels that cannot be nd form that list and kernel which are not relevant for now. thanks!

haesleinhuepf commented 2 years ago

Hi @StRigaud ,

I just updated the list in your post above. I'm keeping two sub-lists here. The first should be done, but those are no filters, those are matrix operations and fancy stuff. The entries in the second list may be dropped:

Special but cool to have (no real 2D/3D filters)

Potentially to drop entirely

StRigaud commented 2 years ago

Question on kernel to be dropped

slice_by_slice kernels: cons: They are redundant with classic operation applied at dimension n-1 in a loop so can be dropped pros: They avoid host code from user and speed up some development are they useful or not?

watershed: is it because the algorithm is not optimized? is there a way to make it relevant to keep in GPU?

haesleinhuepf commented 2 years ago

watershed: is it because the algorithm is not optimized? is there a way to make it relevant to keep in GPU?

It doesn't work well. See here:

slice_by_slice kernels: cons: They are redundant with classic operation applied at dimension n-1 in a loop so can be dropped pros: They avoid host code from user and speed up some development are they useful or not?

I think we can have the same functionality, e.g. by setting sigma_z=0, e.g. in the Gaussian blur. Plus, this would also work with X and Y, without having to maintain extra kernels

StRigaud commented 2 years ago

I think we can have the same functionality, e.g. by setting sigma_z=0, e.g. in the Gaussian blur. Plus, this would also work with X and Y, without having to maintain extra kernels

indeed, though i will need to update kernels already pushed. ToDo later then :smile:

StRigaud commented 2 years ago

Continuing on the slice_by_slice kernels:

StRigaud commented 2 years ago

From top post list

Raising the interest of keep the following kernels:

Raising interest of keeping, or renaming and extend to all axis (x,y,z) the following kernels:

:question: kernels:

There are other kernels left in the list, a quick discussion about them could be nice to see how to extend them to clEsperanto standards.