-
Notifications
You must be signed in to change notification settings - Fork 787
[UR] fix: synchronize resubmission of the same command buffer #18566
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
Conversation
unified-runtime/source/adapters/level_zero/v2/command_list_manager.cpp
Outdated
Show resolved
Hide resolved
ur_exp_command_buffer_desc_t desc{UR_STRUCTURE_TYPE_EXP_COMMAND_BUFFER_DESC, | ||
nullptr, false, false, false}; | ||
nullptr, false, true /* WAS: false */, false}; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why change the buffer to in order?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In order to extend the time of the buffer execution, but as @pbalcer mentioned, I'll revert this to out-of-order
@@ -112,6 +113,7 @@ struct urCommandBufferExpExecutionTest : uur::urKernelExecutionTest { | |||
} | |||
|
|||
ur_exp_command_buffer_handle_t cmd_buf_handle = nullptr; | |||
ur_exp_command_buffer_handle_t cmd_buf_in_order = nullptr; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Where is it used?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In the interest of time, and knowing that right now there's no difference between the two, I suggest not adding in order cmd buf here for now, and just testing out of order for now (both should exhibit the issue we are trying to solve).
unified-runtime/test/conformance/exp_command_buffer/enqueue.cpp
Outdated
Show resolved
Hide resolved
unified-runtime/test/conformance/exp_command_buffer/enqueue.cpp
Outdated
Show resolved
Hide resolved
0cc9c9e
to
f9c9545
Compare
f9c9545
to
d7bff7e
Compare
d7bff7e
to
b4f49fd
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm, just a few nits.
unified-runtime/source/adapters/level_zero/v2/queue_immediate_in_order.cpp
Outdated
Show resolved
Hide resolved
@@ -98,7 +98,7 @@ struct urCommandBufferExpExecutionTest : uur::urKernelExecutionTest { | |||
UUR_RETURN_ON_FATAL_FAILURE(checkCommandBufferSupport(device)); | |||
|
|||
ur_exp_command_buffer_desc_t desc{UR_STRUCTURE_TYPE_EXP_COMMAND_BUFFER_DESC, | |||
nullptr, false, false, false}; | |||
nullptr, false, false /* WAS: false */, false}; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nullptr, false, false /* WAS: false */, false}; | |
nullptr, false, false, false}; |
b4f49fd
to
277615b
Compare
277615b
to
0752cac
Compare
0752cac
to
e2b3ff4
Compare
unified-runtime/test/conformance/exp_command_buffer/enqueue.cpp
Outdated
Show resolved
Hide resolved
unified-runtime/test/conformance/exp_command_buffer/enqueue.cpp
Outdated
Show resolved
Hide resolved
unified-runtime/test/conformance/exp_command_buffer/enqueue.cpp
Outdated
Show resolved
Hide resolved
unified-runtime/test/conformance/exp_command_buffer/enqueue.cpp
Outdated
Show resolved
Hide resolved
unified-runtime/test/conformance/exp_command_buffer/enqueue.cpp
Outdated
Show resolved
Hide resolved
e2b3ff4
to
2aac6c4
Compare
2aac6c4
to
cb047e5
Compare
cb047e5
to
49dfd0a
Compare
49dfd0a
to
232146b
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
|
||
// Tests that the same command-buffer submitted across different in-order | ||
// queues has an implicit dependency on first submission | ||
TEST_P(urEnqueueCommandBufferExpTest, SerializeAcrossQueues) { | ||
// Execute command-buffer to first in-order queue (created by parent | ||
// urQueueTest fixture) | ||
// urQueueTestWithParam fixture) | ||
ASSERT_SUCCESS( | ||
urEnqueueCommandBufferExp(queue, cmd_buf_handle, 0, nullptr, nullptr)); | ||
|
||
// Execute command-buffer to second in-order queue, should have implicit |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
// Execute command-buffer to second in-order queue, should have implicit | |
// Execute command-buffer to second queue, should have implicit |
unified-runtime/source/adapters/level_zero/v2/queue_immediate_in_order.cpp
Outdated
Show resolved
Hide resolved
232146b
to
ae27d66
Compare
@intel/llvm-gatekeepers please merge |
Fixes #18610