Registered Extension Number

490

Revision

1

Ratification Status

Not ratified

Extension and Version Dependencies

API Interactions

  • Interacts with VKSC_VERSION_1_0 == Contact

  • Kai Zhang kazhang

Other Extension Metadata

Last Modified Date

2022-09-07

Contributors
  • Kai Zhang, NVIDIA

  • Jeff Bolz, NVIDIA

  • Jonathan McCaffrey, NVIDIA

  • Daniel Koch, NVIDIA

Description

An application using external memory may wish to synchronize access to that memory using semaphores and fences. This extension enables an application to import semaphore and import/export fence payloads to and from NvSciSync objects. To import a NvSciSyncObj to a VkSemaphore or VkFence, applications need to:

To import/export a NvSciSyncFence to a VkFence object, that VkFence object must already have a NvSciSyncObj previously imported.

This extension does not support exporting semaphores from NvSciSync objects.

For details of the NvSciSync APIs and data structures, see the NvStreams Documentation.

New Object Types

New Commands

New Structures

New Enums

New Enum Constants

  • VK_NV_EXTERNAL_SCI_SYNC_2_EXTENSION_NAME

  • VK_NV_EXTERNAL_SCI_SYNC_2_SPEC_VERSION

  • Extending VkExternalFenceHandleTypeFlagBits:

    • VK_EXTERNAL_FENCE_HANDLE_TYPE_SCI_SYNC_FENCE_BIT_NV

    • VK_EXTERNAL_FENCE_HANDLE_TYPE_SCI_SYNC_OBJ_BIT_NV

  • Extending VkObjectType:

    • VK_OBJECT_TYPE_SEMAPHORE_SCI_SYNC_POOL_NV

  • Extending VkStructureType:

    • VK_STRUCTURE_TYPE_EXPORT_FENCE_SCI_SYNC_INFO_NV

    • VK_STRUCTURE_TYPE_FENCE_GET_SCI_SYNC_INFO_NV

    • VK_STRUCTURE_TYPE_IMPORT_FENCE_SCI_SYNC_INFO_NV

    • VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_SYNC_2_FEATURES_NV

    • VK_STRUCTURE_TYPE_SCI_SYNC_ATTRIBUTES_INFO_NV

    • VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_CREATE_INFO_NV

    • VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_POOL_CREATE_INFO_NV

If Vulkan SC 1.0 is supported:

  • Extending VkStructureType:

    • VK_STRUCTURE_TYPE_DEVICE_SEMAPHORE_SCI_SYNC_POOL_RESERVATION_CREATE_INFO_NV

Issues

1) Does this extension extend or replace VK_NV_external_sci_sync?

RESOLVED. Replaces - expect to deprecate it and eventually remove it.

2) What part of VK_NV_external_sci_sync is deprecated/removed in this extension?

RESOLVED. The commands to import and export semaphores from VK_NV_external_sci_sync are removed and have been replaced with an alternate mechanism to import semaphores. Fence import and export functionality is unchanged.

In particular:

3) Application migration guide from VK_NV_external_sci_sync to VK_NV_external_sci_sync2

Version History

  • Revision 1, 2022-09-07 (Kai Zhang, Daniel Koch)

    • Initial revision

See Also

Document Notes

For more information, see the Vulkan Specification

This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.

Copyright 2014-2023 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0