mirror-llvm-project/offload/plugins-nextgen/level_zero/include/L0Defs.h
blazej-smorawski cf08d4bc70
[offload] Align style of level zero plugin with llvm coding standard (#211762)
This patch does a small cleanup of level zero plugin. Mainly I changed
names of variables to use `CamelCase` whenever they relate to our
internal structures - not objects coming directly from level zero API
etc., so I left some variables and arguments like `zeDevice`, but only
if they are directly related to level zero APIs or structures.

Added a few `auto *` declarations, but again - only when they refer to
our internal objects and not to structures from level zero which might
be pointers underneath, but we use them as transparent objects.

Also did small cleanup of unused headers, making sure that we include
directly what we need rather than use transitive dependencies.

@adurang Please let me know if this patch is okay with you, if you think
this will cause more harm then it's worth I'll close it.

---------

Co-authored-by: Łukasz Plewa <lukasz.plewa@intel.com>
2026-07-27 11:48:47 +02:00

46 lines
1.7 KiB
C++

//===--- Level Zero Target RTL Implementation -----------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
//
// External and other auxilary definitions.
//
//===----------------------------------------------------------------------===//
#ifndef OPENMP_LIBOMPTARGET_PLUGINS_NEXTGEN_LEVEL_ZERO_L0DEFS_H
#define OPENMP_LIBOMPTARGET_PLUGINS_NEXTGEN_LEVEL_ZERO_L0DEFS_H
#include "OffloadError.h"
enum class AllocOptionTy : int32_t {
ALLOC_OPT_NONE = 0,
ALLOC_OPT_REDUCTION_SCRATCH = 1,
ALLOC_OPT_REDUCTION_COUNTER = 2,
ALLOC_OPT_HOST_MEM = 3,
ALLOC_OPT_SLM = 4,
};
namespace llvm::omp::target::plugin {
/// Default alignmnet for allocation.
constexpr size_t L0DefaultAlignment = 0;
/// Default staging buffer size for host to device copy (16KB).
constexpr size_t L0StagingBufferSize = (1 << 14);
/// Default staging buffer count.
constexpr size_t L0StagingBufferCount = 64;
/// USM allocation threshold where preallocation does not pay off (128MB).
constexpr size_t L0UsmPreAllocThreshold = (128 << 20);
/// Host USM allocation threshold where preallocation does not pay off (8MB).
constexpr size_t L0HostUsmPreAllocThreshold = (8 << 20);
/// Maximum wait time.
constexpr uint64_t L0DefaultTimeout = std::numeric_limits<uint64_t>::max();
/// Generic L0 handle type.
using ZeHandleTy = void *;
using error::ErrorCode;
} // namespace llvm::omp::target::plugin
#endif // OPENMP_LIBOMPTARGET_PLUGINS_NEXTGEN_LEVEL_ZERO_L0DEFS_H