SWDEV-290160 - Don't send notification for batch markers
Batch marker already has a barrier with HSA signal callback Change-Id: I69fc63d72320c2e9cc2d2e59ebd3f07c0bd0e3b5
This commit is contained in:
committed by
Maneesh Gupta
parent
83ca0821af
commit
c49f1069ab
@@ -1239,7 +1239,8 @@ void VirtualGPU::profilingEnd(amd::Command& command) {
|
||||
timestamp_->end();
|
||||
}
|
||||
command.setData(timestamp_);
|
||||
if (AMD_DIRECT_DISPATCH) {
|
||||
// Update HW event only for batches
|
||||
if ((AMD_DIRECT_DISPATCH) && (command.GetBatchHead() != nullptr)) {
|
||||
command.SetHwEvent(timestamp_->Signals().back());
|
||||
}
|
||||
timestamp_ = nullptr;
|
||||
|
||||
@@ -259,15 +259,9 @@ bool Event::notifyCmdQueue() {
|
||||
HostQueue* queue = command().queue();
|
||||
if ((status() > CL_COMPLETE) && (nullptr != queue) &&
|
||||
(!AMD_DIRECT_DISPATCH ||
|
||||
// Don't need to notify any marker with direct dispatch,
|
||||
// because all markers are blocking.
|
||||
((command().type() != CL_COMMAND_MARKER) &&
|
||||
(command().type() != 0)) ||
|
||||
// Don't need to notify if the current batch is empty,
|
||||
// because that means the command was processed and extra notification
|
||||
// will cause a stall on the host.
|
||||
(queue->GetSubmittionBatch() != nullptr)) &&
|
||||
!notified_.test_and_set()) {
|
||||
// If HW event was assigned, then notification can be ignored, since a barrier was issued
|
||||
(HwEvent() == nullptr)) &&
|
||||
!notified_.test_and_set()) {
|
||||
// Make sure the queue is draining the enqueued commands.
|
||||
amd::Command* command = new amd::Marker(*queue, false, nullWaitList, this);
|
||||
if (command == NULL) {
|
||||
|
||||
Reference in New Issue
Block a user