Package org.lwjgl.vulkan
Class VkPhysicalDeviceShaderCorePropertiesAMD
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkPhysicalDeviceShaderCorePropertiesAMD
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkPhysicalDeviceShaderCorePropertiesAMD extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceStructure describing shader core properties that can be supported by an implementation.Description
If the
VkPhysicalDeviceShaderCorePropertiesAMDstructure is included in thepNextchain ofVkPhysicalDeviceProperties2, it is filled with the implementation-dependent limits.Valid Usage (Implicit)
Member documentation
sType– the type of this structure.pNext–NULLor a pointer to an extension-specific structure.shaderEngineCount– an unsigned integer value indicating the number of shader engines found inside the shader core of the physical device.shaderArraysPerEngineCount– an unsigned integer value indicating the number of shader arrays inside a shader engine. Each shader array has its own scan converter, set of compute units, and a render back end (color and depth buffers). Shader arrays within a shader engine share shader processor input (wave launcher) and shader export (export buffer) units. Currently, a shader engine can have one or two shader arrays.computeUnitsPerShaderArray– an unsigned integer value indicating the physical number of compute units within a shader array. The active number of compute units in a shader array may be lower. A compute unit houses a set of SIMDs along with a sequencer module and a local data store.simdPerComputeUnit– an unsigned integer value indicating the number of SIMDs inside a compute unit. Each SIMD processes a single instruction at a time.wavefrontSize– an unsigned integer value indicating the maximum size of a subgroup.sgprsPerSimd– an unsigned integer value indicating the number of physical Scalar General Purpose Registers (SGPRs) per SIMD.minSgprAllocation– an unsigned integer value indicating the minimum number of SGPRs allocated for a wave.maxSgprAllocation– an unsigned integer value indicating the maximum number of SGPRs allocated for a wave.sgprAllocationGranularity– an unsigned integer value indicating the granularity of SGPR allocation for a wave.vgprsPerSimd– an unsigned integer value indicating the number of physical Vector General Purpose Registers (VGPRs) per SIMD.minVgprAllocation– an unsigned integer value indicating the minimum number of VGPRs allocated for a wave.maxVgprAllocation– an unsigned integer value indicating the maximum number of VGPRs allocated for a wave.vgprAllocationGranularity– an unsigned integer value indicating the granularity of VGPR allocation for a wave.
Layout
struct VkPhysicalDeviceShaderCorePropertiesAMD { VkStructureType sType; void * pNext; uint32_t shaderEngineCount; uint32_t shaderArraysPerEngineCount; uint32_t computeUnitsPerShaderArray; uint32_t simdPerComputeUnit; uint32_t wavefrontsPerSimd; uint32_t wavefrontSize; uint32_t sgprsPerSimd; uint32_t minSgprAllocation; uint32_t maxSgprAllocation; uint32_t sgprAllocationGranularity; uint32_t vgprsPerSimd; uint32_t minVgprAllocation; uint32_t maxVgprAllocation; uint32_t vgprAllocationGranularity; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkPhysicalDeviceShaderCorePropertiesAMD.BufferAn array ofVkPhysicalDeviceShaderCorePropertiesAMDstructs.
-
Field Summary
Fields Modifier and Type Field Description static intALIGNOFThe struct alignment in bytes.static intCOMPUTEUNITSPERSHADERARRAY
MAXSGPRALLOCATION
MAXVGPRALLOCATION
MINSGPRALLOCATION
MINVGPRALLOCATION
PNEXT
SGPRALLOCATIONGRANULARITY
SGPRSPERSIMD
SHADERARRAYSPERENGINECOUNT
SHADERENGINECOUNT
SIMDPERCOMPUTEUNITThe struct member offsets.static intSIZEOFThe struct size in bytes.static intSTYPE
VGPRALLOCATIONGRANULARITY
VGPRSPERSIMD
WAVEFRONTSIZE
WAVEFRONTSPERSIMDThe struct member offsets.
-
Constructor Summary
Constructors Constructor Description VkPhysicalDeviceShaderCorePropertiesAMD(java.nio.ByteBuffer container)Creates aVkPhysicalDeviceShaderCorePropertiesAMDinstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkPhysicalDeviceShaderCorePropertiesAMDcalloc()Returns a newVkPhysicalDeviceShaderCorePropertiesAMDinstance allocated withmemCalloc.static VkPhysicalDeviceShaderCorePropertiesAMD.Buffercalloc(int capacity)Returns a newVkPhysicalDeviceShaderCorePropertiesAMD.Bufferinstance allocated withmemCalloc.static VkPhysicalDeviceShaderCorePropertiesAMDcallocStack()Returns a newVkPhysicalDeviceShaderCorePropertiesAMDinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.static VkPhysicalDeviceShaderCorePropertiesAMD.BuffercallocStack(int capacity)Returns a newVkPhysicalDeviceShaderCorePropertiesAMD.Bufferinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.static VkPhysicalDeviceShaderCorePropertiesAMD.BuffercallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkPhysicalDeviceShaderCorePropertiesAMD.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkPhysicalDeviceShaderCorePropertiesAMDcallocStack(org.lwjgl.system.MemoryStack stack)Returns a newVkPhysicalDeviceShaderCorePropertiesAMDinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.intcomputeUnitsPerShaderArray()Returns the value of thecomputeUnitsPerShaderArrayfield.static VkPhysicalDeviceShaderCorePropertiesAMDcreate()Returns a newVkPhysicalDeviceShaderCorePropertiesAMDinstance allocated withBufferUtils.static VkPhysicalDeviceShaderCorePropertiesAMD.Buffercreate(int capacity)Returns a newVkPhysicalDeviceShaderCorePropertiesAMD.Bufferinstance allocated withBufferUtils.static VkPhysicalDeviceShaderCorePropertiesAMDcreate(long address)Returns a newVkPhysicalDeviceShaderCorePropertiesAMDinstance for the specified memory address.static VkPhysicalDeviceShaderCorePropertiesAMD.Buffercreate(long address, int capacity)Create aVkPhysicalDeviceShaderCorePropertiesAMD.Bufferinstance at the specified memory.static VkPhysicalDeviceShaderCorePropertiesAMDcreateSafe(long address)static VkPhysicalDeviceShaderCorePropertiesAMD.BuffercreateSafe(long address, int capacity)static VkPhysicalDeviceShaderCorePropertiesAMDmalloc()Returns a newVkPhysicalDeviceShaderCorePropertiesAMDinstance allocated withmemAlloc.static VkPhysicalDeviceShaderCorePropertiesAMD.Buffermalloc(int capacity)Returns a newVkPhysicalDeviceShaderCorePropertiesAMD.Bufferinstance allocated withmemAlloc.static VkPhysicalDeviceShaderCorePropertiesAMDmallocStack()Returns a newVkPhysicalDeviceShaderCorePropertiesAMDinstance allocated on the thread-localMemoryStack.static VkPhysicalDeviceShaderCorePropertiesAMD.BuffermallocStack(int capacity)Returns a newVkPhysicalDeviceShaderCorePropertiesAMD.Bufferinstance allocated on the thread-localMemoryStack.static VkPhysicalDeviceShaderCorePropertiesAMD.BuffermallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkPhysicalDeviceShaderCorePropertiesAMD.Bufferinstance allocated on the specifiedMemoryStack.static VkPhysicalDeviceShaderCorePropertiesAMDmallocStack(org.lwjgl.system.MemoryStack stack)Returns a newVkPhysicalDeviceShaderCorePropertiesAMDinstance allocated on the specifiedMemoryStack.intmaxSgprAllocation()Returns the value of themaxSgprAllocationfield.intmaxVgprAllocation()Returns the value of themaxVgprAllocationfield.intminSgprAllocation()Returns the value of theminSgprAllocationfield.intminVgprAllocation()Returns the value of theminVgprAllocationfield.static intncomputeUnitsPerShaderArray(long struct)Unsafe version ofcomputeUnitsPerShaderArray().static intnmaxSgprAllocation(long struct)Unsafe version ofmaxSgprAllocation().static intnmaxVgprAllocation(long struct)Unsafe version ofmaxVgprAllocation().static intnminSgprAllocation(long struct)Unsafe version ofminSgprAllocation().static intnminVgprAllocation(long struct)Unsafe version ofminVgprAllocation().static longnpNext(long struct)Unsafe version ofpNext().static voidnpNext(long struct, long value)Unsafe version ofpNext.static intnsgprAllocationGranularity(long struct)Unsafe version ofsgprAllocationGranularity().static intnsgprsPerSimd(long struct)Unsafe version ofsgprsPerSimd().static intnshaderArraysPerEngineCount(long struct)Unsafe version ofshaderArraysPerEngineCount().static intnshaderEngineCount(long struct)Unsafe version ofshaderEngineCount().static intnsimdPerComputeUnit(long struct)Unsafe version ofsimdPerComputeUnit().static intnsType(long struct)Unsafe version ofsType().static voidnsType(long struct, int value)Unsafe version ofsType.static intnvgprAllocationGranularity(long struct)Unsafe version ofvgprAllocationGranularity().static intnvgprsPerSimd(long struct)Unsafe version ofvgprsPerSimd().static intnwavefrontSize(long struct)Unsafe version ofwavefrontSize().static intnwavefrontsPerSimd(long struct)Unsafe version ofwavefrontsPerSimd().longpNext()Returns the value of thepNextfield.VkPhysicalDeviceShaderCorePropertiesAMDpNext(long value)Sets the specified value to thepNextfield.VkPhysicalDeviceShaderCorePropertiesAMDset(int sType, long pNext)Initializes this struct with the specified values.VkPhysicalDeviceShaderCorePropertiesAMDset(VkPhysicalDeviceShaderCorePropertiesAMD src)Copies the specified struct data to this struct.intsgprAllocationGranularity()Returns the value of thesgprAllocationGranularityfield.intsgprsPerSimd()Returns the value of thesgprsPerSimdfield.intshaderArraysPerEngineCount()Returns the value of theshaderArraysPerEngineCountfield.intshaderEngineCount()Returns the value of theshaderEngineCountfield.intsimdPerComputeUnit()Returns the value of thesimdPerComputeUnitfield.intsizeof()intsType()Returns the value of thesTypefield.VkPhysicalDeviceShaderCorePropertiesAMDsType(int value)Sets the specified value to thesTypefield.intvgprAllocationGranularity()Returns the value of thevgprAllocationGranularityfield.intvgprsPerSimd()Returns the value of thevgprsPerSimdfield.intwavefrontSize()Returns the value of thewavefrontSizefield.intwavefrontsPerSimd()Returns the value of thewavefrontsPerSimdfield.
-
-
-
Field Detail
-
SIZEOF
The struct size in bytes.
-
ALIGNOF
The struct alignment in bytes.
-
STYPE, PNEXT, SHADERENGINECOUNT, SHADERARRAYSPERENGINECOUNT, COMPUTEUNITSPERSHADERARRAY, SIMDPERCOMPUTEUNIT, WAVEFRONTSPERSIMD, WAVEFRONTSIZE, SGPRSPERSIMD, MINSGPRALLOCATION, MAXSGPRALLOCATION, SGPRALLOCATIONGRANULARITY, VGPRSPERSIMD, MINVGPRALLOCATION, MAXVGPRALLOCATION, VGPRALLOCATIONGRANULARITY
The struct member offsets.
-
-
Constructor Detail
-
VkPhysicalDeviceShaderCorePropertiesAMD
public VkPhysicalDeviceShaderCorePropertiesAMD(java.nio.ByteBuffer container)
Creates aVkPhysicalDeviceShaderCorePropertiesAMDinstance at the current position of the specifiedByteBuffercontainer. Changes to the buffer's content will be visible to the struct instance and vice versa.The created instance holds a strong reference to the container object.
-
-
Method Detail
-
sizeof
public int sizeof()
- Specified by:
sizeofin classorg.lwjgl.system.Struct
-
sType
public int sType()
Returns the value of thesTypefield.
-
pNext
public long pNext()
Returns the value of thepNextfield.
-
shaderEngineCount
public int shaderEngineCount()
Returns the value of theshaderEngineCountfield.
-
shaderArraysPerEngineCount
public int shaderArraysPerEngineCount()
Returns the value of theshaderArraysPerEngineCountfield.
-
computeUnitsPerShaderArray
public int computeUnitsPerShaderArray()
Returns the value of thecomputeUnitsPerShaderArrayfield.
-
simdPerComputeUnit
public int simdPerComputeUnit()
Returns the value of thesimdPerComputeUnitfield.
-
wavefrontsPerSimd
public int wavefrontsPerSimd()
Returns the value of thewavefrontsPerSimdfield.
-
wavefrontSize
public int wavefrontSize()
Returns the value of thewavefrontSizefield.
-
sgprsPerSimd
public int sgprsPerSimd()
Returns the value of thesgprsPerSimdfield.
-
minSgprAllocation
public int minSgprAllocation()
Returns the value of theminSgprAllocationfield.
-
maxSgprAllocation
public int maxSgprAllocation()
Returns the value of themaxSgprAllocationfield.
-
sgprAllocationGranularity
public int sgprAllocationGranularity()
Returns the value of thesgprAllocationGranularityfield.
-
vgprsPerSimd
public int vgprsPerSimd()
Returns the value of thevgprsPerSimdfield.
-
minVgprAllocation
public int minVgprAllocation()
Returns the value of theminVgprAllocationfield.
-
maxVgprAllocation
public int maxVgprAllocation()
Returns the value of themaxVgprAllocationfield.
-
vgprAllocationGranularity
public int vgprAllocationGranularity()
Returns the value of thevgprAllocationGranularityfield.
-
sType
public VkPhysicalDeviceShaderCorePropertiesAMD sType(int value)
Sets the specified value to thesTypefield.
-
pNext
public VkPhysicalDeviceShaderCorePropertiesAMD pNext(long value)
Sets the specified value to thepNextfield.
-
set
public VkPhysicalDeviceShaderCorePropertiesAMD set(int sType, long pNext)
Initializes this struct with the specified values.
-
set
public VkPhysicalDeviceShaderCorePropertiesAMD set(VkPhysicalDeviceShaderCorePropertiesAMD src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static VkPhysicalDeviceShaderCorePropertiesAMD malloc()
Returns a newVkPhysicalDeviceShaderCorePropertiesAMDinstance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkPhysicalDeviceShaderCorePropertiesAMD calloc()
Returns a newVkPhysicalDeviceShaderCorePropertiesAMDinstance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkPhysicalDeviceShaderCorePropertiesAMD create()
Returns a newVkPhysicalDeviceShaderCorePropertiesAMDinstance allocated withBufferUtils.
-
create
public static VkPhysicalDeviceShaderCorePropertiesAMD create(long address)
Returns a newVkPhysicalDeviceShaderCorePropertiesAMDinstance for the specified memory address.
-
createSafe
@Nullable public static VkPhysicalDeviceShaderCorePropertiesAMD createSafe(long address)
-
malloc
public static VkPhysicalDeviceShaderCorePropertiesAMD.Buffer malloc(int capacity)
Returns a newVkPhysicalDeviceShaderCorePropertiesAMD.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkPhysicalDeviceShaderCorePropertiesAMD.Buffer calloc(int capacity)
Returns a newVkPhysicalDeviceShaderCorePropertiesAMD.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkPhysicalDeviceShaderCorePropertiesAMD.Buffer create(int capacity)
Returns a newVkPhysicalDeviceShaderCorePropertiesAMD.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkPhysicalDeviceShaderCorePropertiesAMD.Buffer create(long address, int capacity)
Create aVkPhysicalDeviceShaderCorePropertiesAMD.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkPhysicalDeviceShaderCorePropertiesAMD.Buffer createSafe(long address, int capacity)
-
mallocStack
public static VkPhysicalDeviceShaderCorePropertiesAMD mallocStack()
Returns a newVkPhysicalDeviceShaderCorePropertiesAMDinstance allocated on the thread-localMemoryStack.
-
callocStack
public static VkPhysicalDeviceShaderCorePropertiesAMD callocStack()
Returns a newVkPhysicalDeviceShaderCorePropertiesAMDinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.
-
mallocStack
public static VkPhysicalDeviceShaderCorePropertiesAMD mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceShaderCorePropertiesAMDinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
callocStack
public static VkPhysicalDeviceShaderCorePropertiesAMD callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceShaderCorePropertiesAMDinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
mallocStack
public static VkPhysicalDeviceShaderCorePropertiesAMD.Buffer mallocStack(int capacity)
Returns a newVkPhysicalDeviceShaderCorePropertiesAMD.Bufferinstance allocated on the thread-localMemoryStack.- Parameters:
capacity- the buffer capacity
-
callocStack
public static VkPhysicalDeviceShaderCorePropertiesAMD.Buffer callocStack(int capacity)
Returns a newVkPhysicalDeviceShaderCorePropertiesAMD.Bufferinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacity
-
mallocStack
public static VkPhysicalDeviceShaderCorePropertiesAMD.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceShaderCorePropertiesAMD.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
callocStack
public static VkPhysicalDeviceShaderCorePropertiesAMD.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceShaderCorePropertiesAMD.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
nsType
public static int nsType(long struct)
Unsafe version ofsType().
-
npNext
public static long npNext(long struct)
Unsafe version ofpNext().
-
nshaderEngineCount
public static int nshaderEngineCount(long struct)
Unsafe version ofshaderEngineCount().
-
nshaderArraysPerEngineCount
public static int nshaderArraysPerEngineCount(long struct)
Unsafe version ofshaderArraysPerEngineCount().
-
ncomputeUnitsPerShaderArray
public static int ncomputeUnitsPerShaderArray(long struct)
Unsafe version ofcomputeUnitsPerShaderArray().
-
nsimdPerComputeUnit
public static int nsimdPerComputeUnit(long struct)
Unsafe version ofsimdPerComputeUnit().
-
nwavefrontsPerSimd
public static int nwavefrontsPerSimd(long struct)
Unsafe version ofwavefrontsPerSimd().
-
nwavefrontSize
public static int nwavefrontSize(long struct)
Unsafe version ofwavefrontSize().
-
nsgprsPerSimd
public static int nsgprsPerSimd(long struct)
Unsafe version ofsgprsPerSimd().
-
nminSgprAllocation
public static int nminSgprAllocation(long struct)
Unsafe version ofminSgprAllocation().
-
nmaxSgprAllocation
public static int nmaxSgprAllocation(long struct)
Unsafe version ofmaxSgprAllocation().
-
nsgprAllocationGranularity
public static int nsgprAllocationGranularity(long struct)
Unsafe version ofsgprAllocationGranularity().
-
nvgprsPerSimd
public static int nvgprsPerSimd(long struct)
Unsafe version ofvgprsPerSimd().
-
nminVgprAllocation
public static int nminVgprAllocation(long struct)
Unsafe version ofminVgprAllocation().
-
nmaxVgprAllocation
public static int nmaxVgprAllocation(long struct)
Unsafe version ofmaxVgprAllocation().
-
nvgprAllocationGranularity
public static int nvgprAllocationGranularity(long struct)
Unsafe version ofvgprAllocationGranularity().
-
nsType
public static void nsType(long struct, int value)Unsafe version ofsType.
-
npNext
public static void npNext(long struct, long value)Unsafe version ofpNext.
-
-