C Specification

The VkSemaphoreSciSyncPoolCreateInfoNV structure is defined as:

// Provided by VK_NV_external_sci_sync2
typedef struct VkSemaphoreSciSyncPoolCreateInfoNV {
    VkStructureType    sType;
    const void*        pNext;
    NvSciSyncObj       handle;
} VkSemaphoreSciSyncPoolCreateInfoNV;


  • sType is a VkStructureType value identifying this structure.

  • pNext is NULL or a pointer to a structure extending this structure.

  • handle is an external NvSciSyncObj to import.


During vkCreateSemaphoreSciSyncPoolNV, the external NvSciSyncObj is imported to VkSemaphoreSciSyncPoolNV. The import does not transfer the ownership of the NvSciSyncObj to the implementation, but will increment the reference count of that object. The application must delete other references of the original NvSciSyncObj using NvSciSync APIs when it is no longer needed.

Applications must not import the same NvSciSyncObj with signaler access permissions to multiple instances of VkSemaphoreSciSyncPoolNV.

Valid Usage
  • VUID-VkSemaphoreSciSyncPoolCreateInfoNV-handle-05152
    handle must be a valid NvSciSyncObj

Valid Usage (Implicit)
  • VUID-VkSemaphoreSciSyncPoolCreateInfoNV-sType-sType

  • VUID-VkSemaphoreSciSyncPoolCreateInfoNV-pNext-pNext
    pNext must be NULL

See Also

Document Notes

For more information, see the Vulkan Specification

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

Copyright 2014-2023 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0