Skip to content

Conversation

antonmyagkov
Copy link
Contributor

It's not possible to use current "copy" functions with CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE option in command queue, because wait_list parameter is missing.

@keryell
Copy link
Contributor

keryell commented Oct 24, 2018

Quite pervasive but it looks good,

@jszuppe
Copy link
Contributor

jszuppe commented Oct 24, 2018

Wouldn't it be better if it was done only for copy_async? Because, honestly, what's the help if you use copy which does not give you an event with out-of-order queue?

@Ulfgard
Copy link

Ulfgard commented Oct 24, 2018 via email

@jszuppe
Copy link
Contributor

jszuppe commented Oct 25, 2018

Right, I just don't want to run into a situation where we have multiple different ways async API is done in Boost.Compute. That's why I am just wondering if it's maybe better to have only *_async functions to work with OoO queues for now. However, I'm not saying 'no' to this change. @kylelutz What do you think?

Anyway, I would need to revive our CI and test it on a few platforms (I think full coverage is: Mac, NV, AMD, Intel, and POCL; IMHO can be limited to 1.2) to make sure it's all right. If anyone can help with that I'll be grateful.

@jszuppe jszuppe changed the base branch from master to develop October 25, 2018 20:32
@Ulfgard
Copy link

Ulfgard commented Oct 26, 2018

Without a wait_list, synchronous operations are impossible to use safely in an OoO context. In OpenCL, all operations except copies are asynchronous and synchronous copies have to wait until those operations are done. This little detail is abstracted away in an in-order queue since there is an implicit ordering of events(i.e. wait_list=all currently unfinished operations). In OoO we have to make this ordering explicit, otherwise the copy takes place immediately once the memory bus is free.

@jszuppe jszuppe force-pushed the feature/copy-with-wait-list branch from 83159fa to 87fbbbb Compare December 27, 2018 11:23
@jszuppe jszuppe self-assigned this Dec 27, 2018
@coveralls
Copy link

coveralls commented Dec 27, 2018

Coverage Status

Coverage increased (+0.004%) to 84.024% when pulling 3de4bba on u-s:feature/copy-with-wait-list into 924ed68 on boostorg:develop.

@jszuppe jszuppe force-pushed the feature/copy-with-wait-list branch from 87fbbbb to 3de4bba Compare February 10, 2019 10:49
@jszuppe jszuppe merged commit c4d1a88 into boostorg:develop Feb 10, 2019
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.

5 participants