1
0
mirror of https://github.com/fumiama/gozel.git synced 2026-06-06 00:40:23 +08:00
Files
gozel/core_floatAtomics.go
2026-03-24 00:49:26 +08:00

60 lines
3.3 KiB
Go

// Code generated by cmd/gen. DO NOT EDIT.
/*
*
* Copyright (C) 2019-2025 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
* @file ze_api.h
* @version v1.15-r1.15.31
*
*/
package gozel
import (
"unsafe"
)
// ZE_FLOAT_ATOMICS_EXT_NAME Floating-Point Atomics Extension Name
const ZE_FLOAT_ATOMICS_EXT_NAME = "ZE_extension_float_atomics"
// ZeFloatAtomicsExtVersion (ze_float_atomics_ext_version_t) Floating-Point Atomics Extension Version(s)
type ZeFloatAtomicsExtVersion uintptr
const (
ZE_FLOAT_ATOMICS_EXT_VERSION_1_0 ZeFloatAtomicsExtVersion = /* ZE_MAKE_VERSION( 1, 0 ) */((( 1 << 16 )|( 0 & 0x0000ffff))) // ZE_FLOAT_ATOMICS_EXT_VERSION_1_0 version 1.0
ZE_FLOAT_ATOMICS_EXT_VERSION_CURRENT ZeFloatAtomicsExtVersion = /* ZE_MAKE_VERSION( 1, 0 ) */((( 1 << 16 )|( 0 & 0x0000ffff))) // ZE_FLOAT_ATOMICS_EXT_VERSION_CURRENT latest known version
ZE_FLOAT_ATOMICS_EXT_VERSION_FORCE_UINT32 ZeFloatAtomicsExtVersion = 0x7fffffff // ZE_FLOAT_ATOMICS_EXT_VERSION_FORCE_UINT32 Value marking end of ZE_FLOAT_ATOMICS_EXT_VERSION_* ENUMs
)
// ZeDeviceFpAtomicExtFlags (ze_device_fp_atomic_ext_flags_t) Supported floating-point atomic capability flags
type ZeDeviceFpAtomicExtFlags uint32
const (
ZE_DEVICE_FP_ATOMIC_EXT_FLAG_GLOBAL_LOAD_STORE ZeDeviceFpAtomicExtFlags = /* ZE_BIT(0) */(( 1 << 0 )) // ZE_DEVICE_FP_ATOMIC_EXT_FLAG_GLOBAL_LOAD_STORE Supports atomic load, store, and exchange
ZE_DEVICE_FP_ATOMIC_EXT_FLAG_GLOBAL_ADD ZeDeviceFpAtomicExtFlags = /* ZE_BIT(1) */(( 1 << 1 )) // ZE_DEVICE_FP_ATOMIC_EXT_FLAG_GLOBAL_ADD Supports atomic add and subtract
ZE_DEVICE_FP_ATOMIC_EXT_FLAG_GLOBAL_MIN_MAX ZeDeviceFpAtomicExtFlags = /* ZE_BIT(2) */(( 1 << 2 )) // ZE_DEVICE_FP_ATOMIC_EXT_FLAG_GLOBAL_MIN_MAX Supports atomic min and max
ZE_DEVICE_FP_ATOMIC_EXT_FLAG_LOCAL_LOAD_STORE ZeDeviceFpAtomicExtFlags = /* ZE_BIT(16) */(( 1 << 16 )) // ZE_DEVICE_FP_ATOMIC_EXT_FLAG_LOCAL_LOAD_STORE Supports atomic load, store, and exchange
ZE_DEVICE_FP_ATOMIC_EXT_FLAG_LOCAL_ADD ZeDeviceFpAtomicExtFlags = /* ZE_BIT(17) */(( 1 << 17 )) // ZE_DEVICE_FP_ATOMIC_EXT_FLAG_LOCAL_ADD Supports atomic add and subtract
ZE_DEVICE_FP_ATOMIC_EXT_FLAG_LOCAL_MIN_MAX ZeDeviceFpAtomicExtFlags = /* ZE_BIT(18) */(( 1 << 18 )) // ZE_DEVICE_FP_ATOMIC_EXT_FLAG_LOCAL_MIN_MAX Supports atomic min and max
ZE_DEVICE_FP_ATOMIC_EXT_FLAG_FORCE_UINT32 ZeDeviceFpAtomicExtFlags = 0x7fffffff // ZE_DEVICE_FP_ATOMIC_EXT_FLAG_FORCE_UINT32 Value marking end of ZE_DEVICE_FP_ATOMIC_EXT_FLAG_* ENUMs
)
// ZeFloatAtomicExtProperties (ze_float_atomic_ext_properties_t) Device floating-point atomic properties queried using
/// ::zeDeviceGetModuleProperties
///
/// @details
/// - This structure may be returned from ::zeDeviceGetModuleProperties, via
/// the `pNext` member of ::ze_device_module_properties_t.
type ZeFloatAtomicExtProperties struct {
Stype ZeStructureType // Stype [in] type of this structure
Pnext unsafe.Pointer // Pnext [in,out][optional] must be null or a pointer to an extension-specific structure (i.e. contains stype and pNext).
Fp16flags ZeDeviceFpAtomicExtFlags // Fp16flags [out] Capabilities for half-precision floating-point atomic operations
Fp32flags ZeDeviceFpAtomicExtFlags // Fp32flags [out] Capabilities for single-precision floating-point atomic operations
Fp64flags ZeDeviceFpAtomicExtFlags // Fp64flags [out] Capabilities for double-precision floating-point atomic operations
}