Skip to content
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

Add OpenCL event management #70

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from
Draft

Conversation

isuruf
Copy link

@isuruf isuruf commented May 1, 2022

Here we create a chain of events that starts with a marker event that is started when VkFFTAppend is called and each opencl kernel invocation depends on the previous event. If the user gives an address for an event, the last event is returned to the user.

cc @zachjweiner, @yves-surrel, @inducer

Fixes #39

@isuruf isuruf marked this pull request as draft May 1, 2022 23:59
@DTolm
Copy link
Owner

DTolm commented May 5, 2022

Hello,

Thanks for your effort, this is a start on event implementation, but your pull request won't work as of now:

  • There is a missing first part of the conditional on the line 27806
  • &app->configuration.event = new_event; on the line 27805 won't work as &app->configuration.event is cl_event**. You need to allocate memory on that pointer with malloc and free it when the app is deleted because when the function exits new_event is deallocated.
  • User's events pointer is not propagated into the application local configuration during initialization. All launch parameters should be possible to set through configuration.
  • If we start to add events, we need to check that VkFFT kernels are executed in order, as I was told that was not always the case. Similar to what I do with pipeline memory barriers in Vulkan.

I will look into this more thoroughly later.

Best regards,
Dmitrii

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Find a way to set OpenCL events
2 participants