Class VkCudaLaunchInfoNV
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
Description
Kernel parameters of function are specified via pParams, very much the same way as described in cuLaunchKernel
If function has N parameters, then pParams must be an array of N pointers and paramCount must be N. Each of kernelParams[0] through kernelParams[N-1] must point to a region of memory from which the actual kernel parameter will be copied. The number of kernel parameters and their offsets and sizes are not specified here as that information is stored in the VkCudaFunctionNV object.
The application-owned memory pointed to by pParams and kernelParams[0] through kernelParams[N-1] are consumed immediately, and may be altered or freed after CmdCudaLaunchKernelNV has returned.
Valid Usage
gridDimXmust be less than or equal toVkPhysicalDeviceLimits::maxComputeWorkGroupCount[0]gridDimYmust be less than or equal toVkPhysicalDeviceLimits::maxComputeWorkGroupCount[1]gridDimZmust be less than or equal toVkPhysicalDeviceLimits::maxComputeWorkGroupCount[2]paramCountmust be the total amount of parameters listed in thepParamstablepParamsmust be a pointer to a table ofparamCountparameters, corresponding to the arguments offunctionextraCountmust be 0pExtrasmust be NULL
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_CUDA_LAUNCH_INFO_NVpNextmust beNULLfunctionmust be a validVkCudaFunctionNVhandle
See Also
Layout
struct VkCudaLaunchInfoNV {
VkStructureType sType();
void const * pNext();
VkCudaFunctionNV function();
uint32_t gridDimX();
uint32_t gridDimY();
uint32_t gridDimZ();
uint32_t blockDimX();
uint32_t blockDimY();
uint32_t blockDimZ();
uint32_t sharedMemBytes();
size_t paramCount();
void const * const * pParams();
size_t extraCount();
void const * const * pExtras();
}-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class org.lwjgl.system.Struct
org.lwjgl.system.Struct.StructValidationNested classes/interfaces inherited from interface org.lwjgl.system.Pointer
org.lwjgl.system.Pointer.Default -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intThe struct alignment in bytes.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct size in bytes.static final intThe struct member offsets.Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE -
Constructor Summary
ConstructorsConstructorDescriptionVkCudaLaunchInfoNV(ByteBuffer container) Creates aVkCudaLaunchInfoNVinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptionintblock size in the X dimension.blockDimX(int value) Sets the specified value to theblockDimX()field.intblock size in the Y dimension.blockDimY(int value) Sets the specified value to theblockDimY()field.intblock size in the Z dimension.blockDimZ(int value) Sets the specified value to theblockDimZ()field.static VkCudaLaunchInfoNVcalloc()Returns a newVkCudaLaunchInfoNVinstance allocated withmemCalloc.static VkCudaLaunchInfoNV.Buffercalloc(int capacity) Returns a newVkCudaLaunchInfoNV.Bufferinstance allocated withmemCalloc.static VkCudaLaunchInfoNV.Buffercalloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkCudaLaunchInfoNV.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkCudaLaunchInfoNVcalloc(org.lwjgl.system.MemoryStack stack) Returns a newVkCudaLaunchInfoNVinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkCudaLaunchInfoNVcreate()Returns a newVkCudaLaunchInfoNVinstance allocated withBufferUtils.static VkCudaLaunchInfoNV.Buffercreate(int capacity) Returns a newVkCudaLaunchInfoNV.Bufferinstance allocated withBufferUtils.static VkCudaLaunchInfoNVcreate(long address) Returns a newVkCudaLaunchInfoNVinstance for the specified memory address.static VkCudaLaunchInfoNV.Buffercreate(long address, int capacity) Create aVkCudaLaunchInfoNV.Bufferinstance at the specified memory.static @Nullable VkCudaLaunchInfoNVcreateSafe(long address) static @Nullable VkCudaLaunchInfoNV.BuffercreateSafe(long address, int capacity) longreserved for future use.extraCount(long value) Sets the specified value to theextraCount()field.longfunction()the CUDA-Driver handle to the function being launched.function(long value) Sets the specified value to thefunction()field.intgridDimX()the number of local workgroups to dispatch in the X dimension.gridDimX(int value) Sets the specified value to thegridDimX()field.intgridDimY()the number of local workgroups to dispatch in the Y dimension.gridDimY(int value) Sets the specified value to thegridDimY()field.intgridDimZ()the number of local workgroups to dispatch in the Z dimension.gridDimZ(int value) Sets the specified value to thegridDimZ()field.static VkCudaLaunchInfoNVmalloc()Returns a newVkCudaLaunchInfoNVinstance allocated withmemAlloc.static VkCudaLaunchInfoNV.Buffermalloc(int capacity) Returns a newVkCudaLaunchInfoNV.Bufferinstance allocated withmemAlloc.static VkCudaLaunchInfoNV.Buffermalloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkCudaLaunchInfoNV.Bufferinstance allocated on the specifiedMemoryStack.static VkCudaLaunchInfoNVmalloc(org.lwjgl.system.MemoryStack stack) Returns a newVkCudaLaunchInfoNVinstance allocated on the specifiedMemoryStack.static intnblockDimX(long struct) Unsafe version ofblockDimX().static voidnblockDimX(long struct, int value) Unsafe version ofblockDimX.static intnblockDimY(long struct) Unsafe version ofblockDimY().static voidnblockDimY(long struct, int value) Unsafe version ofblockDimY.static intnblockDimZ(long struct) Unsafe version ofblockDimZ().static voidnblockDimZ(long struct, int value) Unsafe version ofblockDimZ.static longnextraCount(long struct) Unsafe version ofextraCount().static voidnextraCount(long struct, long value) Sets the specified value to theextraCountfield of the specifiedstruct.static longnfunction(long struct) Unsafe version offunction().static voidnfunction(long struct, long value) Unsafe version offunction.static intngridDimX(long struct) Unsafe version ofgridDimX().static voidngridDimX(long struct, int value) Unsafe version ofgridDimX.static intngridDimY(long struct) Unsafe version ofgridDimY().static voidngridDimY(long struct, int value) Unsafe version ofgridDimY.static intngridDimZ(long struct) Unsafe version ofgridDimZ().static voidngridDimZ(long struct, int value) Unsafe version ofgridDimZ.static longnparamCount(long struct) Unsafe version ofparamCount().static voidnparamCount(long struct, long value) Sets the specified value to theparamCountfield of the specifiedstruct.static @Nullable org.lwjgl.PointerBuffernpExtras(long struct) Unsafe version ofpExtras.static voidnpExtras(long struct, @Nullable org.lwjgl.PointerBuffer value) Unsafe version ofpExtras.static longnpNext(long struct) Unsafe version ofpNext().static voidnpNext(long struct, long value) Unsafe version ofpNext.static @Nullable org.lwjgl.PointerBuffernpParams(long struct) Unsafe version ofpParams.static voidnpParams(long struct, @Nullable org.lwjgl.PointerBuffer value) Unsafe version ofpParams.static intnsharedMemBytes(long struct) Unsafe version ofsharedMemBytes().static voidnsharedMemBytes(long struct, int value) Unsafe version ofsharedMemBytes.static intnsType(long struct) Unsafe version ofsType().static voidnsType(long struct, int value) Unsafe version ofsType.longthe length of thepParamstable.paramCount(long value) Sets the specified value to theparamCount()field.@Nullable org.lwjgl.PointerBufferpExtras()reserved for future use.pExtras(@Nullable org.lwjgl.PointerBuffer value) Sets the address of the specifiedPointerBufferto thepExtras()field.longpNext()NULLor a pointer to a structure extending this structure.pNext(long value) Sets the specified value to thepNext()field.@Nullable org.lwjgl.PointerBufferpParams()a pointer to an array ofparamCountpointers, corresponding to the arguments offunction.pParams(@Nullable org.lwjgl.PointerBuffer value) Sets the address of the specifiedPointerBufferto thepParams()field.set(int sType, long pNext, long function, int gridDimX, int gridDimY, int gridDimZ, int blockDimX, int blockDimY, int blockDimZ, int sharedMemBytes, long paramCount, @Nullable org.lwjgl.PointerBuffer pParams, long extraCount, @Nullable org.lwjgl.PointerBuffer pExtras) Initializes this struct with the specified values.set(VkCudaLaunchInfoNV src) Copies the specified struct data to this struct.intthe dynamic shared-memory size per thread block in bytes.sharedMemBytes(int value) Sets the specified value to thesharedMemBytes()field.intsizeof()intsType()aVkStructureTypevalue identifying this structure.sType(int value) Sets the specified value to thesType()field.Sets theSTRUCTURE_TYPE_CUDA_LAUNCH_INFO_NVvalue to thesType()field.Methods inherited from class org.lwjgl.system.Struct
clear, free, isNull, validate, validateMethods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toStringMethods inherited from interface org.lwjgl.system.NativeResource
close, free
-
Field Details
-
SIZEOF
public static final int SIZEOFThe struct size in bytes. -
ALIGNOF
public static final int ALIGNOFThe struct alignment in bytes. -
STYPE
public static final int STYPEThe struct member offsets. -
PNEXT
public static final int PNEXTThe struct member offsets. -
FUNCTION
public static final int FUNCTIONThe struct member offsets. -
GRIDDIMX
public static final int GRIDDIMXThe struct member offsets. -
GRIDDIMY
public static final int GRIDDIMYThe struct member offsets. -
GRIDDIMZ
public static final int GRIDDIMZThe struct member offsets. -
BLOCKDIMX
public static final int BLOCKDIMXThe struct member offsets. -
BLOCKDIMY
public static final int BLOCKDIMYThe struct member offsets. -
BLOCKDIMZ
public static final int BLOCKDIMZThe struct member offsets. -
SHAREDMEMBYTES
public static final int SHAREDMEMBYTESThe struct member offsets. -
PARAMCOUNT
public static final int PARAMCOUNTThe struct member offsets. -
PPARAMS
public static final int PPARAMSThe struct member offsets. -
EXTRACOUNT
public static final int EXTRACOUNTThe struct member offsets. -
PEXTRAS
public static final int PEXTRASThe struct member offsets.
-
-
Constructor Details
-
VkCudaLaunchInfoNV
Creates aVkCudaLaunchInfoNVinstance 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 Details
-
sizeof
public int sizeof()- Specified by:
sizeofin classorg.lwjgl.system.Struct<VkCudaLaunchInfoNV>
-
sType
public int sType()aVkStructureTypevalue identifying this structure. -
pNext
public long pNext()NULLor a pointer to a structure extending this structure. -
function
public long function()the CUDA-Driver handle to the function being launched. -
gridDimX
public int gridDimX()the number of local workgroups to dispatch in the X dimension. It must be less than or equal toVkPhysicalDeviceLimits::maxComputeWorkGroupCount[0] -
gridDimY
public int gridDimY()the number of local workgroups to dispatch in the Y dimension. It must be less than or equal toVkPhysicalDeviceLimits::maxComputeWorkGroupCount[1] -
gridDimZ
public int gridDimZ()the number of local workgroups to dispatch in the Z dimension. It must be less than or equal toVkPhysicalDeviceLimits::maxComputeWorkGroupCount[2] -
blockDimX
public int blockDimX()block size in the X dimension. -
blockDimY
public int blockDimY()block size in the Y dimension. -
blockDimZ
public int blockDimZ()block size in the Z dimension. -
paramCount
public long paramCount()the length of thepParamstable. -
pParams
public @Nullable org.lwjgl.PointerBuffer pParams()a pointer to an array ofparamCountpointers, corresponding to the arguments offunction. -
extraCount
public long extraCount()reserved for future use. -
pExtras
public @Nullable org.lwjgl.PointerBuffer pExtras()reserved for future use. -
sType
Sets the specified value to thesType()field. -
sType$Default
Sets theSTRUCTURE_TYPE_CUDA_LAUNCH_INFO_NVvalue to thesType()field. -
pNext
Sets the specified value to thepNext()field. -
function
Sets the specified value to thefunction()field. -
gridDimX
Sets the specified value to thegridDimX()field. -
gridDimY
Sets the specified value to thegridDimY()field. -
gridDimZ
Sets the specified value to thegridDimZ()field. -
blockDimX
Sets the specified value to theblockDimX()field. -
blockDimY
Sets the specified value to theblockDimY()field. -
blockDimZ
Sets the specified value to theblockDimZ()field. -
paramCount
Sets the specified value to theparamCount()field. -
pParams
Sets the address of the specifiedPointerBufferto thepParams()field. -
extraCount
Sets the specified value to theextraCount()field. -
pExtras
Sets the address of the specifiedPointerBufferto thepExtras()field. -
set
public VkCudaLaunchInfoNV set(int sType, long pNext, long function, int gridDimX, int gridDimY, int gridDimZ, int blockDimX, int blockDimY, int blockDimZ, int sharedMemBytes, long paramCount, @Nullable org.lwjgl.PointerBuffer pParams, long extraCount, @Nullable org.lwjgl.PointerBuffer pExtras) Initializes this struct with the specified values. -
set
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
Returns a newVkCudaLaunchInfoNVinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVkCudaLaunchInfoNVinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVkCudaLaunchInfoNVinstance allocated withBufferUtils. -
create
Returns a newVkCudaLaunchInfoNVinstance for the specified memory address. -
createSafe
-
malloc
Returns a newVkCudaLaunchInfoNV.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVkCudaLaunchInfoNV.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVkCudaLaunchInfoNV.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aVkCudaLaunchInfoNV.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
-
malloc
Returns a newVkCudaLaunchInfoNVinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newVkCudaLaunchInfoNVinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
Returns a newVkCudaLaunchInfoNV.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
Returns a newVkCudaLaunchInfoNV.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
nsType
public static int nsType(long struct) Unsafe version ofsType(). -
npNext
public static long npNext(long struct) Unsafe version ofpNext(). -
nfunction
public static long nfunction(long struct) Unsafe version offunction(). -
ngridDimX
public static int ngridDimX(long struct) Unsafe version ofgridDimX(). -
ngridDimY
public static int ngridDimY(long struct) Unsafe version ofgridDimY(). -
ngridDimZ
public static int ngridDimZ(long struct) Unsafe version ofgridDimZ(). -
nblockDimX
public static int nblockDimX(long struct) Unsafe version ofblockDimX(). -
nblockDimY
public static int nblockDimY(long struct) Unsafe version ofblockDimY(). -
nblockDimZ
public static int nblockDimZ(long struct) Unsafe version ofblockDimZ(). -
nparamCount
public static long nparamCount(long struct) Unsafe version ofparamCount(). -
npParams
public static @Nullable org.lwjgl.PointerBuffer npParams(long struct) Unsafe version ofpParams. -
nextraCount
public static long nextraCount(long struct) Unsafe version ofextraCount(). -
npExtras
public static @Nullable org.lwjgl.PointerBuffer npExtras(long struct) Unsafe version ofpExtras. -
nsType
public static void nsType(long struct, int value) Unsafe version ofsType. -
npNext
public static void npNext(long struct, long value) Unsafe version ofpNext. -
nfunction
public static void nfunction(long struct, long value) Unsafe version offunction. -
ngridDimX
public static void ngridDimX(long struct, int value) Unsafe version ofgridDimX. -
ngridDimY
public static void ngridDimY(long struct, int value) Unsafe version ofgridDimY. -
ngridDimZ
public static void ngridDimZ(long struct, int value) Unsafe version ofgridDimZ. -
nblockDimX
public static void nblockDimX(long struct, int value) Unsafe version ofblockDimX. -
nblockDimY
public static void nblockDimY(long struct, int value) Unsafe version ofblockDimY. -
nblockDimZ
public static void nblockDimZ(long struct, int value) Unsafe version ofblockDimZ. -
nparamCount
public static void nparamCount(long struct, long value) Sets the specified value to theparamCountfield of the specifiedstruct. -
npParams
public static void npParams(long struct, @Nullable org.lwjgl.PointerBuffer value) Unsafe version ofpParams. -
nextraCount
public static void nextraCount(long struct, long value) Sets the specified value to theextraCountfield of the specifiedstruct. -
npExtras
public static void npExtras(long struct, @Nullable org.lwjgl.PointerBuffer value) Unsafe version ofpExtras.
-