All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.lwjgl.vulkan.AMDShaderCoreProperties Maven / Gradle / Ivy

Go to download

A new generation graphics and compute API that provides high-efficiency, cross-platform access to modern GPUs used in a wide variety of devices from PCs and consoles to mobile phones and embedded platforms.

There is a newer version: 3.3.4
Show newest version
/*
 * Copyright LWJGL. All rights reserved.
 * License terms: https://www.lwjgl.org/license
 * MACHINE GENERATED FILE, DO NOT EDIT
 */
package org.lwjgl.vulkan;

/**
 * This extension exposes shader core properties for a target physical device through the {@link KHRGetPhysicalDeviceProperties2 VK_KHR_get_physical_device_properties2} extension. Please refer to the example below for proper usage.
 * 
 * 
Examples
* *

This example retrieves the shader core properties for a physical device.

* *

 * extern VkInstance       instance;
 * 
 * PFN_vkGetPhysicalDeviceProperties2 pfnVkGetPhysicalDeviceProperties2 =
 *     reinterpret_cast<PFN_vkGetPhysicalDeviceProperties2>
 *     (vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceProperties2") );
 * 
 * VkPhysicalDeviceProperties2             general_props;
 * VkPhysicalDeviceShaderCorePropertiesAMD shader_core_properties;
 * 
 * shader_core_properties.pNext = nullptr;
 * shader_core_properties.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD;
 * 
 * general_props.pNext = &shader_core_properties;
 * general_props.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2;
 * 
 * // After this call, shader_core_properties has been populated
 * pfnVkGetPhysicalDeviceProperties2(device, &general_props);
 * 
 * printf("Number of shader engines: %d\n",
 *     m_shader_core_properties.shader_engine_count =
 *     shader_core_properties.shaderEngineCount;
 * printf("Number of shader arrays: %d\n",
 *     m_shader_core_properties.shader_arrays_per_engine_count =
 *     shader_core_properties.shaderArraysPerEngineCount;
 * printf("Number of CUs per shader array: %d\n",
 *     m_shader_core_properties.compute_units_per_shader_array =
 *     shader_core_properties.computeUnitsPerShaderArray;
 * printf("Number of SIMDs per compute unit: %d\n",
 *     m_shader_core_properties.simd_per_compute_unit =
 *     shader_core_properties.simdPerComputeUnit;
 * printf("Number of wavefront slots in each SIMD: %d\n",
 *     m_shader_core_properties.wavefronts_per_simd =
 *     shader_core_properties.wavefrontsPerSimd;
 * printf("Number of threads per wavefront: %d\n",
 *     m_shader_core_properties.wavefront_size =
 *     shader_core_properties.wavefrontSize;
 * printf("Number of physical SGPRs per SIMD: %d\n",
 *     m_shader_core_properties.sgprs_per_simd =
 *     shader_core_properties.sgprsPerSimd;
 * printf("Minimum number of SGPRs that can be allocated by a wave: %d\n",
 *     m_shader_core_properties.min_sgpr_allocation =
 *     shader_core_properties.minSgprAllocation;
 * printf("Number of available SGPRs: %d\n",
 *     m_shader_core_properties.max_sgpr_allocation =
 *     shader_core_properties.maxSgprAllocation;
 * printf("SGPRs are allocated in groups of this size: %d\n",
 *     m_shader_core_properties.sgpr_allocation_granularity =
 *     shader_core_properties.sgprAllocationGranularity;
 * printf("Number of physical VGPRs per SIMD: %d\n",
 *     m_shader_core_properties.vgprs_per_simd =
 *     shader_core_properties.vgprsPerSimd;
 * printf("Minimum number of VGPRs that can be allocated by a wave: %d\n",
 *     m_shader_core_properties.min_vgpr_allocation =
 *     shader_core_properties.minVgprAllocation;
 * printf("Number of available VGPRs: %d\n",
 *     m_shader_core_properties.max_vgpr_allocation =
 *     shader_core_properties.maxVgprAllocation;
 * printf("VGPRs are allocated in groups of this size: %d\n",
 *     m_shader_core_properties.vgpr_allocation_granularity =
 *     shader_core_properties.vgprAllocationGranularity;
* *
VK_AMD_shader_core_properties
* *
*
Name String
*
{@code VK_AMD_shader_core_properties}
*
Extension Type
*
Device extension
*
Registered Extension Number
*
186
*
Revision
*
2
*
Extension and Version Dependencies
*
    *
  • Requires Vulkan 1.0
  • *
  • Requires {@link KHRGetPhysicalDeviceProperties2 VK_KHR_get_physical_device_properties2}
  • *
*
Contact
*
*
* *
Other Extension Metadata
* *
*
Last Modified Date
*
2019-06-25
*
IP Status
*
No known IP claims.
*
Contributors
*
    *
  • Martin Dinkov, AMD
  • *
  • Matthaeus G. Chajdas, AMD
  • *
*
*/ public final class AMDShaderCoreProperties { /** The extension specification version. */ public static final int VK_AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION = 2; /** The extension name. */ public static final String VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME = "VK_AMD_shader_core_properties"; /** Extends {@code VkStructureType}. */ public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD = 1000185000; private AMDShaderCoreProperties() {} }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy