-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Logarithm Kernel #102
Comments
Hi @aaron-bray You are very welcome to participate in any form you see fit, adding a new kernel function is a good starting point! The As I said here, I'm currently pushing a new version which change a bit some architecture and name aspect in the For adding a new kernel: Prior to anything, we need to have an OpenCL kernel code ready in the kernel repository. This is already the case here, so we can skip. Then, we need to create a Important, the the OpenCL parameter names must be identical to the // cpp side
auto
CopyKernel::SetInput(const Image & object) -> void
{
this->AddParameter("src", object);
}
auto
CopyKernel::SetOutput(const Image & object) -> void
{
this->AddParameter("dst", object);
}
// opencl kernel side
__kernel void copy(
IMAGE_src_TYPE src, // "src" tag name
IMAGE_dst_TYPE dst // "dst" tag name
) Then we would need to add the Finally, add a test which should run the new kernel for all accepted data type and dimensions, to make sure that the kernel is actually running correctly (both the cpp code but also the ocl code). Do not hesitate if some things are not clear or if you have more questions. If I were to summarized:
|
Thank you for the information @StRigaud This will be a slow burn effort for me, but I will keep you posted! |
Do not hesitate to ask me with questions if you need too! |
See this issues for more information on how to create a new kernel |
I know this is on your TODO list
I see there is a kernel for it already
I was wondering if we could work on this
Do you have any docs or examples of how to do this?
Thanks!
The text was updated successfully, but these errors were encountered: