Files
compute-runtime/opencl/source/program/printf_handler.h
Patryk Wrobel 9b2ad0c5df Detect GPU hangs in flushBcsTask()
This change introduces detection of GPU hangs in flushBcsTask()
function. The new code has been covered with ULTs.

Related-To: NEO-6681
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-05-12 16:17:16 +02:00

42 lines
947 B
C++

/*
* Copyright (C) 2018-2022 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#pragma once
#include "shared/source/command_stream/command_stream_receiver.h"
#include "opencl/source/kernel/kernel.h"
namespace NEO {
class ClDevice;
struct MultiDispatchInfo;
class PrintfHandler {
public:
static PrintfHandler *create(const MultiDispatchInfo &multiDispatchInfo, ClDevice &deviceArg);
MOCKABLE_VIRTUAL ~PrintfHandler();
void prepareDispatch(const MultiDispatchInfo &multiDispatchInfo);
void makeResident(CommandStreamReceiver &commandStreamReceiver);
MOCKABLE_VIRTUAL bool printEnqueueOutput();
GraphicsAllocation *getSurface() {
return printfSurface;
}
protected:
PrintfHandler(ClDevice &device);
std::unique_ptr<uint32_t> printfSurfaceInitialDataSizePtr;
ClDevice &device;
Kernel *kernel = nullptr;
GraphicsAllocation *printfSurface = nullptr;
};
} // namespace NEO