2017-12-21 07:45:38 +08:00
|
|
|
/*
|
2023-01-24 19:15:03 +08:00
|
|
|
* Copyright (C) 2018-2023 Intel Corporation
|
2017-12-21 07:45:38 +08:00
|
|
|
*
|
2018-09-18 15:11:08 +08:00
|
|
|
* SPDX-License-Identifier: MIT
|
2017-12-21 07:45:38 +08:00
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
#pragma once
|
2019-02-27 18:39:32 +08:00
|
|
|
|
2023-01-27 20:37:09 +08:00
|
|
|
#include "shared/source/command_stream/submission_status.h"
|
2022-11-22 21:53:59 +08:00
|
|
|
#include "shared/source/command_stream/task_count_helper.h"
|
|
|
|
|
2017-12-21 07:45:38 +08:00
|
|
|
#include <cstdint>
|
2022-11-22 21:53:59 +08:00
|
|
|
#include <limits>
|
2017-12-21 07:45:38 +08:00
|
|
|
|
2019-03-26 18:59:46 +08:00
|
|
|
namespace NEO {
|
2022-05-18 03:04:23 +08:00
|
|
|
using FlushStamp = uint64_t;
|
2017-12-21 07:45:38 +08:00
|
|
|
struct CompletionStamp {
|
2022-11-22 21:53:59 +08:00
|
|
|
static TaskCountType getTaskCountFromSubmissionStatusError(SubmissionStatus submissionStatus);
|
2022-11-05 01:02:46 +08:00
|
|
|
|
2022-11-22 21:53:59 +08:00
|
|
|
TaskCountType taskCount;
|
|
|
|
TaskCountType taskLevel;
|
2017-12-21 07:45:38 +08:00
|
|
|
FlushStamp flushStamp;
|
2020-01-23 18:57:37 +08:00
|
|
|
|
2022-11-22 21:53:59 +08:00
|
|
|
static constexpr TaskCountType notReady = std::numeric_limits<TaskCountType>::max() - 0xF;
|
2023-06-29 02:05:36 +08:00
|
|
|
static constexpr TaskCountType unsupported = std::numeric_limits<TaskCountType>::max() - 0xE;
|
2023-03-13 10:56:47 +08:00
|
|
|
static constexpr TaskCountType failed = std::numeric_limits<TaskCountType>::max() - 0x6;
|
2022-11-22 21:53:59 +08:00
|
|
|
static constexpr TaskCountType gpuHang = std::numeric_limits<TaskCountType>::max() - 0x5;
|
|
|
|
static constexpr TaskCountType outOfDeviceMemory = std::numeric_limits<TaskCountType>::max() - 0x4;
|
|
|
|
static constexpr TaskCountType outOfHostMemory = std::numeric_limits<TaskCountType>::max() - 0x3;
|
2017-12-21 07:45:38 +08:00
|
|
|
};
|
2020-01-23 18:57:37 +08:00
|
|
|
|
2019-03-26 18:59:46 +08:00
|
|
|
} // namespace NEO
|