Announcement

Collapse
No announcement yet.

Vulkan 1.0 Released: What You Need To Know About This Cross-Platform, High-Performance Graphics API

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #31
    Michae, what flight game is that? I want to try that tomorrow with Vulkan/Nvidia.
    Thanks

    Comment


    • #32
      Hmm extensions from nvidia vulkan driver:
      Code:
      $ ./vulkaninfo 
      ===========
      VULKAN INFO
      ===========
      
      Vulkan API Version: 1.0.3
      
      INFO: [loader] Code 0 : Found manifest file /etc/vulkan/icd.d/nvidia_icd.json, version "1.0.0"
      Instance Extensions and layers:
      ===============================
      Instance Extensions     count = 4
              VK_KHR_surface                  : extension revision 25
              VK_KHR_xcb_surface              : extension revision  6
              VK_KHR_xlib_surface             : extension revision  6
              VK_EXT_debug_report             : extension revision  1
      
      Instance Layers count = 0
      Device Extensions and layers:
      =============================
      GPU0
      VkPhysicalDeviceProperties:
      ===========================
              apiVersion     = 4194307
              driverVersion  = 1488979584
              vendorID       = 0x10de
              deviceID       = 0x1380
              deviceType     = DISCRETE_GPU
              deviceName     = GTX 750 Ti
              VkPhysicalDeviceLimits:
              -----------------------
                      maxImageDimension1D                     = 0x4000
                      maxImageDimension2D                     = 0x4000
                      maxImageDimension3D                     = 0x800
                      maxImageDimensionCube                   = 0x4000
                      maxImageArrayLayers                     = 0x800
                      maxTexelBufferElements                  = 0x8000000
                      maxUniformBufferRange                   = 0x10000
                      maxStorageBufferRange                   = 0x7fffffff
                      maxPushConstantsSize                    = 0x100
                      maxMemoryAllocationCount                = 0xffffffff
                      maxSamplerAllocationCount               = 0xfa0
                      bufferImageGranularity                  = 0x10000
                      sparseAddressSpaceSize                  = 0xffffffffffffffff
                      maxBoundDescriptorSets                  = 0x4
                      maxPerStageDescriptorSamplers           = 0xfa0
                      maxPerStageDescriptorUniformBuffers     = 0xc
                      maxPerStageDescriptorStorageBuffers     = 0x10
                      maxPerStageDescriptorSampledImages      = 0x2000
                      maxPerStageDescriptorStorageImages      = 0x2000
                      maxPerStageDescriptorInputAttachments   = 0x8
                      maxPerStageResources                    = 0x6024
                      maxDescriptorSetSamplers                = 0xfa0
                      maxDescriptorSetUniformBuffers          = 0x48
                      maxDescriptorSetUniformBuffersDynamic   = 0x48
                      maxDescriptorSetStorageBuffers          = 0x60
                      maxDescriptorSetStorageBuffersDynamic   = 0x60
                      maxDescriptorSetSampledImages           = 0xc000
                      maxDescriptorSetStorageImages           = 0xc000
                      maxDescriptorSetInputAttachments        = 0x8
                      maxVertexInputAttributes                = 0x10
                      maxVertexInputBindings                  = 0x10
                      maxVertexInputAttributeOffset           = 0x7ff
                      maxVertexInputBindingStride             = 0x800
                      maxVertexOutputComponents               = 0x80
                      maxTessellationGenerationLevel          = 0x40
                      maxTessellationPatchSize                        = 0x20
                      maxTessellationControlPerVertexInputComponents  = 0x80
                      maxTessellationControlPerVertexOutputComponents = 0x80
                      maxTessellationControlPerPatchOutputComponents  = 0x78
                      maxTessellationControlTotalOutputComponents     = 0x1078
                      maxTessellationEvaluationInputComponents        = 0x80
                      maxTessellationEvaluationOutputComponents       = 0x80
                      maxGeometryShaderInvocations            = 0x20
                      maxGeometryInputComponents              = 0x80
                      maxGeometryOutputComponents             = 0x80
                      maxGeometryOutputVertices               = 0x400
                      maxGeometryTotalOutputComponents        = 0x400
                      maxFragmentInputComponents              = 0x80
                      maxFragmentOutputAttachments            = 0x8
                      maxFragmentDualSrcAttachments           = 0x1
                      maxFragmentCombinedOutputResources      = 0x10
                      maxComputeSharedMemorySize              = 0xc000
                      maxComputeWorkGroupCount[0]             = 0x7fffffff
                      maxComputeWorkGroupCount[1]             = 0xffff
                      maxComputeWorkGroupCount[2]             = 0xffff
                      maxComputeWorkGroupInvocations          = 0x600
                      maxComputeWorkGroupSize[0]              = 0x600
                      maxComputeWorkGroupSize[1]              = 0x400
                      maxComputeWorkGroupSize[2]              = 0x40
                      subPixelPrecisionBits                   = 0x8
                      subTexelPrecisionBits                   = 0x8
                      mipmapPrecisionBits                     = 0x8
                      maxDrawIndexedIndexValue                = 0xffffffff
                      maxDrawIndirectCount                    = 0xffffffff
                      maxSamplerLodBias                       = 15.000000
                      maxSamplerAnisotropy                    = 16.000000
                      maxViewports                            = 0x10
                      maxViewportDimensions[0]                = 0x4000
                      maxViewportDimensions[1]                = 0x4000
                      viewportBoundsRange[0]                  = -32768.000000
                      viewportBoundsRange[1]                  = 32768.000000
                      viewportSubPixelBits                    = 0x8
                      minMemoryMapAlignment                   = 64
                      minTexelBufferOffsetAlignment           = 0x10
                      minUniformBufferOffsetAlignment         = 0x100
                      minStorageBufferOffsetAlignment         = 0x20
                      minTexelOffset                          = 0xfffffff8
                      maxTexelOffset                          = 0x7
                      minTexelGatherOffset                    = 0xffffffe0
                      maxTexelGatherOffset                    = 0x1f
                      minInterpolationOffset                  = -0.500000
                      maxInterpolationOffset                  = 0.437500
                      subPixelInterpolationOffsetBits         = 0x4
                      maxFramebufferWidth                     = 0x4000
                      maxFramebufferHeight                    = 0x4000
                      maxFramebufferLayers                    = 0x800
                      framebufferColorSampleCounts            = 0xf
                      framebufferDepthSampleCounts            = 0xf
                      framebufferStencilSampleCounts          = 0xf
                      maxColorAttachments                     = 0x8
                      sampledImageColorSampleCounts           = 0xf
                      sampledImageDepthSampleCounts           = 0xf
                      sampledImageStencilSampleCounts         = 0xf
                      sampledImageIntegerSampleCounts         = 0xf
                      storageImageSampleCounts                = 0xf
                      maxSampleMaskWords                      = 0x1
                      timestampComputeAndGraphics             = 1
                      timestampPeriod                         = 0x1.000000
                      maxClipDistances                        = 0x8
                      maxCullDistances                        = 0x8
                      maxCombinedClipAndCullDistances         = 0x8
                      pointSizeRange[0]                       = 1.000000
                      pointSizeRange[1]                       = 189.875000
                      lineWidthRange[0]                       = 0.500000
                      lineWidthRange[1]                       = 10.000000
                      pointSizeGranularity                    = 0.125000
                      lineWidthGranularity                    = 0.125000
                      strictLines                             = 1
                      standardSampleLocations                 = 1
                      optimalBufferCopyOffsetAlignment        = 0x1
                      optimalBufferCopyRowPitchAlignment      = 0x1
                      nonCoherentAtomSize                     = 0x40
              VkPhysicalDeviceSparseProperties:
              ---------------------------------
                      residencyStandard2DBlockShape            = 1
                      residencyStandard2DMultisampleBlockShape = 1
                      residencyStandard3DBlockShape            = 1
                      residencyAlignedMipSize                  = 1
                      residencyNonResidentStrict               = 0
      
      Device Extensions       count = 2
              VK_KHR_swapchain                : extension revision 67
              VK_NV_glsl_shader               : extension revision  1
      
      
      Layers  count = 0
      
      VkQueueFamilyProperties[0]:
      ============================
              queueFlags         = GCD
              queueCount         = 16
              timestampValidBits = 64
              minImageTransferGranularity = (1, 1, 1)
      
      VkPhysicalDeviceMemoryProperties:
      =================================
              memoryTypeCount       = 4
              memoryTypes[0] : 
                      propertyFlags = 0
                      heapIndex     = 1
              memoryTypes[1] : 
                      propertyFlags = 1
                      heapIndex     = 0
              memoryTypes[2] : 
                      propertyFlags = 6
                      heapIndex     = 1
              memoryTypes[3] : 
                      propertyFlags = 14
                      heapIndex     = 1
              memoryHeapCount       = 2
              memoryHeaps[0] : 
                      size          = 2147483648
              memoryHeaps[1] : 
                      size          = 6242224128
      
      VkPhysicalDeviceFeatures:
      =========================
              robustBufferAccess                      = 1
              fullDrawIndexUint32                     = 1
              imageCubeArray                          = 1
              independentBlend                        = 1
              geometryShader                          = 1
              tessellationShader                      = 1
              sampleRateShading                       = 1
              dualSrcBlend                            = 1
              logicOp                                 = 1
              multiDrawIndirect                       = 1
              drawIndirectFirstInstance               = 1
              depthClamp                              = 1
              depthBiasClamp                          = 1
              fillModeNonSolid                        = 1
              depthBounds                             = 1
              wideLines                               = 1
              largePoints                             = 1
              textureCompressionETC2                  = 0
              textureCompressionASTC_LDR              = 0
              textureCompressionBC                    = 1
              occlusionQueryPrecise                   = 1
              pipelineStatisticsQuery                 = 1
              vertexSideEffects                       = 1
              tessellationSideEffects                 = 1
              geometrySideEffects                     = 1
              shaderImageGatherExtended               = 1
              shaderStorageImageExtendedFormats       = 1
              shaderStorageImageMultisample           = 1
              shaderStorageImageReadWithoutFormat     = 1
              shaderStorageImageWriteWithoutFormat    = 1
              shaderUniformBufferArrayDynamicIndexing = 1
              shaderSampledImageArrayDynamicIndexing  = 1
              shaderStorageBufferArrayDynamicIndexing = 1
              shaderStorageImageArrayDynamicIndexing  = 1
              shaderClipDistance                      = 1
              shaderCullDistance                      = 1
              shaderFloat64                           = 1
              shaderInt64                             = 1
              shaderInt16                             = 0
              shaderResourceResidency                 = 0
              shaderResourceMinLod                    = 0
              alphaToOne                              = 1
              sparseBinding                           = 1
              sparseResidencyBuffer                   = 1
              sparseResidencyImage2D                  = 1
              sparseResidencyImage3D                  = 1
              sparseResidency2Samples                 = 1
              sparseResidency4Samples                 = 1
              sparseResidency8Samples                 = 1
              sparseResidency16Samples                = 0
              sparseResidencyAliased                  = 1
              variableMultisampleRate                 = 1
              iheritedQueries                         = 1
      
      FORMAT_UNDEFINED:
      *snip*(bunch of different Format information)

      Comment


      • #33
        Originally posted by mike4 View Post
        Michae, what flight game is that? I want to try that tomorrow with Vulkan/Nvidia.
        Thanks
        It's not a game it's nvidia's vulkan demo:
        Simple vulkan rendering example. Contribute to nvpro-samples/gl_vk_chopper development by creating an account on GitHub.

        Comment


        • #34
          All this rage at AMD; but won't AMDGPU and radeon work with Mesa's implementation of Vulkan? AMD Might have been moving forward and prioritizing windows like this knowing that they could rely on that.

          Not saying that it's cool, just that AMD users don't have to despair.

          Also, didn't AMD just submit a huge patch for AMDGPU to upstream? Maybe there was vulkan support in there all along, we weren't really told what it contained, but considering that intel's implementation of Vulkan in mesa is 36k lines... wouldn't be surprising that the size of that patch would have been because of vulkan.

          Originally posted by pal666 View Post
          amd didn't release driver for which there are zero games atm. let's cry
          To be fair, the current driver release isn't for end users, it's for developers and testing, AMD being behind actually can and will have an impact. Right now only people on non-AMD hardware can develop vulkan software on and for linux, they have no means of testing or running it on AMD. If this drags on it could lead to the first vulkan games being released on Linux without AMD support, and when AMD finally releases their vulkan code, all existing software reliant on vulkan will be completely untested for AMD, so AMD users will hvae to go in to vulkan software with a spray and pray mentality.
          Last edited by rabcor; 16 February 2016, 01:39 PM.

          Comment


          • #35
            People really should not expect large performance gains on real-world game products. The API is "thinner" but the hardware "below" is still the same. High-end engines stress already the hardware without being held back by the API too much, especially with the performance tuned extensions OpenGL is sporting already.

            Comment


            • #36
              Originally posted by tuke81 View Post
              Hmm extensions from nvidia vulkan driver:
              Code:
              $ ./vulkaninfo
              ===========
              VULKAN INFO
              ===========
              
              Vulkan API Version: 1.0.3
              
              INFO: [loader] Code 0 : Found manifest file /etc/vulkan/icd.d/nvidia_icd.json, version "1.0.0"
              Instance Extensions and layers:
              ===============================
              Instance Extensions count = 4
              VK_KHR_surface : extension revision 25
              VK_KHR_xcb_surface : extension revision 6
              VK_KHR_xlib_surface : extension revision 6
              VK_EXT_debug_report : extension revision 1
              
              Instance Layers count = 0
              Device Extensions and layers:
              =============================
              GPU0
              VkPhysicalDeviceProperties:
              ===========================
              apiVersion = 4194307
              driverVersion = 1488979584
              vendorID = 0x10de
              deviceID = 0x1380
              deviceType = DISCRETE_GPU
              deviceName = GTX 750 Ti
              VkPhysicalDeviceLimits:
              -----------------------
              maxImageDimension1D = 0x4000
              maxImageDimension2D = 0x4000
              maxImageDimension3D = 0x800
              maxImageDimensionCube = 0x4000
              maxImageArrayLayers = 0x800
              maxTexelBufferElements = 0x8000000
              maxUniformBufferRange = 0x10000
              maxStorageBufferRange = 0x7fffffff
              maxPushConstantsSize = 0x100
              maxMemoryAllocationCount = 0xffffffff
              maxSamplerAllocationCount = 0xfa0
              bufferImageGranularity = 0x10000
              sparseAddressSpaceSize = 0xffffffffffffffff
              maxBoundDescriptorSets = 0x4
              maxPerStageDescriptorSamplers = 0xfa0
              maxPerStageDescriptorUniformBuffers = 0xc
              maxPerStageDescriptorStorageBuffers = 0x10
              maxPerStageDescriptorSampledImages = 0x2000
              maxPerStageDescriptorStorageImages = 0x2000
              maxPerStageDescriptorInputAttachments = 0x8
              maxPerStageResources = 0x6024
              maxDescriptorSetSamplers = 0xfa0
              maxDescriptorSetUniformBuffers = 0x48
              maxDescriptorSetUniformBuffersDynamic = 0x48
              maxDescriptorSetStorageBuffers = 0x60
              maxDescriptorSetStorageBuffersDynamic = 0x60
              maxDescriptorSetSampledImages = 0xc000
              maxDescriptorSetStorageImages = 0xc000
              maxDescriptorSetInputAttachments = 0x8
              maxVertexInputAttributes = 0x10
              maxVertexInputBindings = 0x10
              maxVertexInputAttributeOffset = 0x7ff
              maxVertexInputBindingStride = 0x800
              maxVertexOutputComponents = 0x80
              maxTessellationGenerationLevel = 0x40
              maxTessellationPatchSize = 0x20
              maxTessellationControlPerVertexInputComponents = 0x80
              maxTessellationControlPerVertexOutputComponents = 0x80
              maxTessellationControlPerPatchOutputComponents = 0x78
              maxTessellationControlTotalOutputComponents = 0x1078
              maxTessellationEvaluationInputComponents = 0x80
              maxTessellationEvaluationOutputComponents = 0x80
              maxGeometryShaderInvocations = 0x20
              maxGeometryInputComponents = 0x80
              maxGeometryOutputComponents = 0x80
              maxGeometryOutputVertices = 0x400
              maxGeometryTotalOutputComponents = 0x400
              maxFragmentInputComponents = 0x80
              maxFragmentOutputAttachments = 0x8
              maxFragmentDualSrcAttachments = 0x1
              maxFragmentCombinedOutputResources = 0x10
              maxComputeSharedMemorySize = 0xc000
              maxComputeWorkGroupCount[0] = 0x7fffffff
              maxComputeWorkGroupCount[1] = 0xffff
              maxComputeWorkGroupCount[2] = 0xffff
              maxComputeWorkGroupInvocations = 0x600
              maxComputeWorkGroupSize[0] = 0x600
              maxComputeWorkGroupSize[1] = 0x400
              maxComputeWorkGroupSize[2] = 0x40
              subPixelPrecisionBits = 0x8
              subTexelPrecisionBits = 0x8
              mipmapPrecisionBits = 0x8
              maxDrawIndexedIndexValue = 0xffffffff
              maxDrawIndirectCount = 0xffffffff
              maxSamplerLodBias = 15.000000
              maxSamplerAnisotropy = 16.000000
              maxViewports = 0x10
              maxViewportDimensions[0] = 0x4000
              maxViewportDimensions[1] = 0x4000
              viewportBoundsRange[0] = -32768.000000
              viewportBoundsRange[1] = 32768.000000
              viewportSubPixelBits = 0x8
              minMemoryMapAlignment = 64
              minTexelBufferOffsetAlignment = 0x10
              minUniformBufferOffsetAlignment = 0x100
              minStorageBufferOffsetAlignment = 0x20
              minTexelOffset = 0xfffffff8
              maxTexelOffset = 0x7
              minTexelGatherOffset = 0xffffffe0
              maxTexelGatherOffset = 0x1f
              minInterpolationOffset = -0.500000
              maxInterpolationOffset = 0.437500
              subPixelInterpolationOffsetBits = 0x4
              maxFramebufferWidth = 0x4000
              maxFramebufferHeight = 0x4000
              maxFramebufferLayers = 0x800
              framebufferColorSampleCounts = 0xf
              framebufferDepthSampleCounts = 0xf
              framebufferStencilSampleCounts = 0xf
              maxColorAttachments = 0x8
              sampledImageColorSampleCounts = 0xf
              sampledImageDepthSampleCounts = 0xf
              sampledImageStencilSampleCounts = 0xf
              sampledImageIntegerSampleCounts = 0xf
              storageImageSampleCounts = 0xf
              maxSampleMaskWords = 0x1
              timestampComputeAndGraphics = 1
              timestampPeriod = 0x1.000000
              maxClipDistances = 0x8
              maxCullDistances = 0x8
              maxCombinedClipAndCullDistances = 0x8
              pointSizeRange[0] = 1.000000
              pointSizeRange[1] = 189.875000
              lineWidthRange[0] = 0.500000
              lineWidthRange[1] = 10.000000
              pointSizeGranularity = 0.125000
              lineWidthGranularity = 0.125000
              strictLines = 1
              standardSampleLocations = 1
              optimalBufferCopyOffsetAlignment = 0x1
              optimalBufferCopyRowPitchAlignment = 0x1
              nonCoherentAtomSize = 0x40
              VkPhysicalDeviceSparseProperties:
              ---------------------------------
              residencyStandard2DBlockShape = 1
              residencyStandard2DMultisampleBlockShape = 1
              residencyStandard3DBlockShape = 1
              residencyAlignedMipSize = 1
              residencyNonResidentStrict = 0
              
              Device Extensions count = 2
              VK_KHR_swapchain : extension revision 67
              VK_NV_glsl_shader : extension revision 1
              
              
              Layers count = 0
              
              VkQueueFamilyProperties[0]:
              ============================
              queueFlags = GCD
              queueCount = 16
              timestampValidBits = 64
              minImageTransferGranularity = (1, 1, 1)
              
              VkPhysicalDeviceMemoryProperties:
              =================================
              memoryTypeCount = 4
              memoryTypes[0] :
              propertyFlags = 0
              heapIndex = 1
              memoryTypes[1] :
              propertyFlags = 1
              heapIndex = 0
              memoryTypes[2] :
              propertyFlags = 6
              heapIndex = 1
              memoryTypes[3] :
              propertyFlags = 14
              heapIndex = 1
              memoryHeapCount = 2
              memoryHeaps[0] :
              size = 2147483648
              memoryHeaps[1] :
              size = 6242224128
              
              VkPhysicalDeviceFeatures:
              =========================
              robustBufferAccess = 1
              fullDrawIndexUint32 = 1
              imageCubeArray = 1
              independentBlend = 1
              geometryShader = 1
              tessellationShader = 1
              sampleRateShading = 1
              dualSrcBlend = 1
              logicOp = 1
              multiDrawIndirect = 1
              drawIndirectFirstInstance = 1
              depthClamp = 1
              depthBiasClamp = 1
              fillModeNonSolid = 1
              depthBounds = 1
              wideLines = 1
              largePoints = 1
              textureCompressionETC2 = 0
              textureCompressionASTC_LDR = 0
              textureCompressionBC = 1
              occlusionQueryPrecise = 1
              pipelineStatisticsQuery = 1
              vertexSideEffects = 1
              tessellationSideEffects = 1
              geometrySideEffects = 1
              shaderImageGatherExtended = 1
              shaderStorageImageExtendedFormats = 1
              shaderStorageImageMultisample = 1
              shaderStorageImageReadWithoutFormat = 1
              shaderStorageImageWriteWithoutFormat = 1
              shaderUniformBufferArrayDynamicIndexing = 1
              shaderSampledImageArrayDynamicIndexing = 1
              shaderStorageBufferArrayDynamicIndexing = 1
              shaderStorageImageArrayDynamicIndexing = 1
              shaderClipDistance = 1
              shaderCullDistance = 1
              shaderFloat64 = 1
              shaderInt64 = 1
              shaderInt16 = 0
              shaderResourceResidency = 0
              shaderResourceMinLod = 0
              alphaToOne = 1
              sparseBinding = 1
              sparseResidencyBuffer = 1
              sparseResidencyImage2D = 1
              sparseResidencyImage3D = 1
              sparseResidency2Samples = 1
              sparseResidency4Samples = 1
              sparseResidency8Samples = 1
              sparseResidency16Samples = 0
              sparseResidencyAliased = 1
              variableMultisampleRate = 1
              iheritedQueries = 1
              
              FORMAT_UNDEFINED:
              *snip*(bunch of different Format information)

              In my case appears like this with nvidia 355.00.26 + vulkan sdk (graphviz needed for vulkan runtime)


              Code:
              $ vulkaninfo
              ===========
              VULKAN INFO
              ===========
              
              Vulkan API Version: 1.0.3
              
              INFO: [loader] Code 0 : Found manifest file /etc/vulkan/explicit_layer.d/VkLayer_api_dump.json, version "1.0.0"
              INFO: [loader] Code 0 : Found manifest file /etc/vulkan/explicit_layer.d/VkLayer_unique_objects.json, version "1.0.0"
              INFO: [loader] Code 0 : Found manifest file /etc/vulkan/explicit_layer.d/VkLayer_object_tracker.json, version "1.0.0"
              INFO: [loader] Code 0 : Found manifest file /etc/vulkan/explicit_layer.d/VkLayer_image.json, version "1.0.0"
              INFO: [loader] Code 0 : Found manifest file /etc/vulkan/explicit_layer.d/VkLayer_swapchain.json, version "1.0.0"
              INFO: [loader] Code 0 : Found manifest file /etc/vulkan/explicit_layer.d/VkLayer_screenshot.json, version "1.0.0"
              INFO: [loader] Code 0 : Found manifest file /etc/vulkan/explicit_layer.d/VkLayer_vktrace_layer.json, version "1.0.0"
              INFO: [loader] Code 0 : Found manifest file /etc/vulkan/explicit_layer.d/VkLayer_mem_tracker.json, version "1.0.0"
              INFO: [loader] Code 0 : Found manifest file /etc/vulkan/explicit_layer.d/VkLayer_draw_state.json, version "1.0.0"
              INFO: [loader] Code 0 : Found manifest file /etc/vulkan/explicit_layer.d/VkLayer_param_checker.json, version "1.0.0"
              INFO: [loader] Code 0 : Found manifest file /etc/vulkan/explicit_layer.d/VkLayer_threading.json, version "1.0.0"
              INFO: [loader] Code 0 : Found manifest file /etc/vulkan/explicit_layer.d/VkLayer_device_limits.json, version "1.0.0"
              INFO: [loader] Code 0 : Found manifest file /etc/vulkan/icd.d/nvidia_icd.json, version "1.0.0"
              Instance Extensions and layers:
              ===============================
              Instance Extensions    count = 4
                  VK_KHR_surface                  : extension revision 25
                  VK_KHR_xcb_surface              : extension revision  6
                  VK_KHR_xlib_surface             : extension revision  6
                  VK_EXT_debug_report             : extension revision  1
              
              Instance Layers    count = 12
                  VK_LAYER_LUNARG_api_dump (LunarG debug layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_api_dump Extensions    count = 0
              
                  VK_LAYER_GOOGLE_unique_objects (Google Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_GOOGLE_unique_objects Extensions    count = 0
              
                  VK_LAYER_LUNARG_object_tracker (LunarG Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_object_tracker Extensions    count = 1
                      VK_EXT_debug_report             : extension revision  1
              
                  VK_LAYER_LUNARG_image (LunarG Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_image Extensions    count = 1
                      VK_EXT_debug_report             : extension revision  1
              
                  VK_LAYER_LUNARG_swapchain (LunarG Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_swapchain Extensions    count = 1
                      VK_EXT_debug_report             : extension revision  1
              
                  VK_LAYER_LUNARG_screenshot (LunarG image capture layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_screenshot Extensions    count = 0
              
                  VK_LAYER_LUNARG_vktrace (Vktrace tracing library) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_vktrace Extensions    count = 0
              
                  VK_LAYER_LUNARG_mem_tracker (LunarG Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_mem_tracker Extensions    count = 1
                      VK_EXT_debug_report             : extension revision  1
              
                  VK_LAYER_LUNARG_draw_state (LunarG Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_draw_state Extensions    count = 1
                      VK_EXT_debug_report             : extension revision  1
              
                  VK_LAYER_LUNARG_param_checker (LunarG Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_param_checker Extensions    count = 1
                      VK_EXT_debug_report             : extension revision  1
              
                  VK_LAYER_LUNARG_threading (LunarG Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_threading Extensions    count = 1
                      VK_EXT_debug_report             : extension revision  1
              
                  VK_LAYER_LUNARG_device_limits (LunarG Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_device_limits Extensions    count = 1
                      VK_EXT_debug_report             : extension revision  1
              
              Device Extensions and layers:
              =============================
              GPU0
              VkPhysicalDeviceProperties:
              ===========================
                  apiVersion     = 4194307
                  driverVersion  = 1488979584
                  vendorID       = 0x10de
                  deviceID       = 0x1284
                  deviceType     = DISCRETE_GPU
                  deviceName     = GT 630
                  VkPhysicalDeviceLimits:
                  -----------------------
                      maxImageDimension1D                     = 0x4000
                      maxImageDimension2D                     = 0x4000
                      maxImageDimension3D                     = 0x800
                      maxImageDimensionCube                   = 0x4000
                      maxImageArrayLayers                     = 0x800
                      maxTexelBufferElements                  = 0x8000000
                      maxUniformBufferRange                   = 0x10000
                      maxStorageBufferRange                   = 0x7fffffff
                      maxPushConstantsSize                    = 0x100
                      maxMemoryAllocationCount                = 0xffffffff
                      maxSamplerAllocationCount               = 0xfa0
                      bufferImageGranularity                  = 0x10000
                      sparseAddressSpaceSize                  = 0xffffffffffffffff
                      maxBoundDescriptorSets                  = 0x4
                      maxPerStageDescriptorSamplers           = 0xfa0
                      maxPerStageDescriptorUniformBuffers     = 0xc
                      maxPerStageDescriptorStorageBuffers     = 0x10
                      maxPerStageDescriptorSampledImages      = 0x2000
                      maxPerStageDescriptorStorageImages      = 0x2000
                      maxPerStageDescriptorInputAttachments   = 0x8
                      maxPerStageResources                    = 0x6024
                      maxDescriptorSetSamplers                = 0xfa0
                      maxDescriptorSetUniformBuffers          = 0x48
                      maxDescriptorSetUniformBuffersDynamic   = 0x48
                      maxDescriptorSetStorageBuffers          = 0x60
                      maxDescriptorSetStorageBuffersDynamic   = 0x60
                      maxDescriptorSetSampledImages           = 0xc000
                      maxDescriptorSetStorageImages           = 0xc000
                      maxDescriptorSetInputAttachments        = 0x8
                      maxVertexInputAttributes                = 0x10
                      maxVertexInputBindings                  = 0x10
                      maxVertexInputAttributeOffset           = 0x7ff
                      maxVertexInputBindingStride             = 0x800
                      maxVertexOutputComponents               = 0x80
                      maxTessellationGenerationLevel          = 0x40
                      maxTessellationPatchSize                        = 0x20
                      maxTessellationControlPerVertexInputComponents  = 0x80
                      maxTessellationControlPerVertexOutputComponents = 0x80
                      maxTessellationControlPerPatchOutputComponents  = 0x78
                      maxTessellationControlTotalOutputComponents     = 0x1078
                      maxTessellationEvaluationInputComponents        = 0x80
                      maxTessellationEvaluationOutputComponents       = 0x80
                      maxGeometryShaderInvocations            = 0x20
                      maxGeometryInputComponents              = 0x80
                      maxGeometryOutputComponents             = 0x80
                      maxGeometryOutputVertices               = 0x400
                      maxGeometryTotalOutputComponents        = 0x400
                      maxFragmentInputComponents              = 0x80
                      maxFragmentOutputAttachments            = 0x8
                      maxFragmentDualSrcAttachments           = 0x1
                      maxFragmentCombinedOutputResources      = 0x10
                      maxComputeSharedMemorySize              = 0xc000
                      maxComputeWorkGroupCount[0]             = 0x7fffffff
                      maxComputeWorkGroupCount[1]             = 0xffff
                      maxComputeWorkGroupCount[2]             = 0xffff
                      maxComputeWorkGroupInvocations          = 0x600
                      maxComputeWorkGroupSize[0]              = 0x600
                      maxComputeWorkGroupSize[1]              = 0x400
                      maxComputeWorkGroupSize[2]              = 0x40
                      subPixelPrecisionBits                   = 0x8
                      subTexelPrecisionBits                   = 0x8
                      mipmapPrecisionBits                     = 0x8
                      maxDrawIndexedIndexValue                = 0xffffffff
                      maxDrawIndirectCount                    = 0xffffffff
                      maxSamplerLodBias                       = 15.000000
                      maxSamplerAnisotropy                    = 16.000000
                      maxViewports                            = 0x10
                      maxViewportDimensions[0]                = 0x4000
                      maxViewportDimensions[1]                = 0x4000
                      viewportBoundsRange[0]                  = -32768.000000
                      viewportBoundsRange[1]                  = 32768.000000
                      viewportSubPixelBits                    = 0x8
                      minMemoryMapAlignment                   = 64
                      minTexelBufferOffsetAlignment           = 0x100
                      minUniformBufferOffsetAlignment         = 0x100
                      minStorageBufferOffsetAlignment         = 0x20
                      minTexelOffset                          = 0xfffffff8
                      maxTexelOffset                          = 0x7
                      minTexelGatherOffset                    = 0xffffffe0
                      maxTexelGatherOffset                    = 0x1f
                      minInterpolationOffset                  = -0.500000
                      maxInterpolationOffset                  = 0.437500
                      subPixelInterpolationOffsetBits         = 0x4
                      maxFramebufferWidth                     = 0x4000
                      maxFramebufferHeight                    = 0x4000
                      maxFramebufferLayers                    = 0x800
                      framebufferColorSampleCounts            = 0xf
                      framebufferDepthSampleCounts            = 0xf
                      framebufferStencilSampleCounts          = 0xf
                      maxColorAttachments                     = 0x8
                      sampledImageColorSampleCounts           = 0xf
                      sampledImageDepthSampleCounts           = 0xf
                      sampledImageStencilSampleCounts         = 0xf
                      sampledImageIntegerSampleCounts         = 0xf
                      storageImageSampleCounts                = 0xf
                      maxSampleMaskWords                      = 0x1
                      timestampComputeAndGraphics             = 1
                      timestampPeriod                         = 0x1.000000
                      maxClipDistances                        = 0x8
                      maxCullDistances                        = 0x8
                      maxCombinedClipAndCullDistances         = 0x8
                      pointSizeRange[0]                       = 1.000000
                      pointSizeRange[1]                       = 189.875000
                      lineWidthRange[0]                       = 0.500000
                      lineWidthRange[1]                       = 10.000000
                      pointSizeGranularity                    = 0.125000
                      lineWidthGranularity                    = 0.125000
                      strictLines                             = 1
                      standardSampleLocations                 = 1
                      optimalBufferCopyOffsetAlignment        = 0x1
                      optimalBufferCopyRowPitchAlignment      = 0x1
                      nonCoherentAtomSize                     = 0x40
                  VkPhysicalDeviceSparseProperties:
                  ---------------------------------
                      residencyStandard2DBlockShape            = 1
                      residencyStandard2DMultisampleBlockShape = 1
                      residencyStandard3DBlockShape            = 1
                      residencyAlignedMipSize                  = 1
                      residencyNonResidentStrict               = 0
              
              Device Extensions    count = 2
                  VK_KHR_swapchain                : extension revision 67
                  VK_NV_glsl_shader               : extension revision  1
              
              
              Layers    count = 13
                  VK_LAYER_LUNARG_api_dump (LunarG debug layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_api_dump Extensions    count = 0
              
                  VK_LAYER_GOOGLE_unique_objects (Google Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_GOOGLE_unique_objects Extensions    count = 0
              
                  VK_LAYER_LUNARG_object_tracker (LunarG Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_object_tracker Extensions    count = 0
              
                  VK_LAYER_LUNARG_image (LunarG Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_image Extensions    count = 0
              
                  VK_LAYER_LUNARG_swapchain (LunarG Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_swapchain Extensions    count = 0
              
                  VK_LAYER_LUNARG_screenshot (LunarG image capture layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_screenshot Extensions    count = 0
              
                  VK_LAYER_LUNARG_vktrace (Vktrace tracing library) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_vktrace Extensions    count = 0
              
                  VK_LAYER_LUNARG_mem_tracker (LunarG Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_mem_tracker Extensions    count = 0
              
                  VK_LAYER_LUNARG_draw_state (LunarG Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_draw_state Extensions    count = 1
                      VK_LUNARG_DEBUG_MARKER          : extension revision  0
              
                  VK_LAYER_LUNARG_param_checker (LunarG Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_param_checker Extensions    count = 0
              
                  VK_LAYER_LUNARG_threading (LunarG Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_threading Extensions    count = 0
              
                  VK_LAYER_LUNARG_device_limits (LunarG Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_device_limits Extensions    count = 0
              
                  VK_LAYER_LUNARG_standard_validation (LunarG Standard Validation Layer) Vulkan version 1.0.3, layer version 1
                  VK_LAYER_LUNARG_standard_validation Extensions    count = 0
              
              
              VkQueueFamilyProperties[0]:
              ============================
                  queueFlags         = GCD
                  queueCount         = 16
                  timestampValidBits = 64
                  minImageTransferGranularity = (1, 1, 1)
              
              VkPhysicalDeviceMemoryProperties:
              =================================
                  memoryTypeCount       = 4
                  memoryTypes[0] : 
                      propertyFlags = 0
                      heapIndex     = 1
                  memoryTypes[1] : 
                      propertyFlags = 1
                      heapIndex     = 0
                  memoryTypes[2] : 
                      propertyFlags = 6
                      heapIndex     = 1
                  memoryTypes[3] : 
                      propertyFlags = 14
                      heapIndex     = 1
                  memoryHeapCount       = 2
                  memoryHeaps[0] : 
                      size          = 2147483648
                  memoryHeaps[1] : 
                      size          = 6235564032
              
              VkPhysicalDeviceFeatures:
              =========================
                  robustBufferAccess                      = 1
                  fullDrawIndexUint32                     = 1
                  imageCubeArray                          = 1
                  independentBlend                        = 1
                  geometryShader                          = 1
                  tessellationShader                      = 1
                  sampleRateShading                       = 1
                  dualSrcBlend                            = 1
                  logicOp                                 = 1
                  multiDrawIndirect                       = 1
                  drawIndirectFirstInstance               = 1
                  depthClamp                              = 1
                  depthBiasClamp                          = 1
                  fillModeNonSolid                        = 1
                  depthBounds                             = 1
                  wideLines                               = 1
                  largePoints                             = 1
                  textureCompressionETC2                  = 0
                  textureCompressionASTC_LDR              = 0
                  textureCompressionBC                    = 1
                  occlusionQueryPrecise                   = 1
                  pipelineStatisticsQuery                 = 1
                  vertexSideEffects                       = 1
                  tessellationSideEffects                 = 1
                  geometrySideEffects                     = 1
                  shaderImageGatherExtended               = 1
                  shaderStorageImageExtendedFormats       = 1
                  shaderStorageImageMultisample           = 1
                  shaderStorageImageReadWithoutFormat     = 0
                  shaderStorageImageWriteWithoutFormat    = 1
                  shaderUniformBufferArrayDynamicIndexing = 1
                  shaderSampledImageArrayDynamicIndexing  = 1
                  shaderStorageBufferArrayDynamicIndexing = 1
                  shaderStorageImageArrayDynamicIndexing  = 1
                  shaderClipDistance                      = 1
                  shaderCullDistance                      = 1
                  shaderFloat64                           = 1
                  shaderInt64                             = 1
                  shaderInt16                             = 0
                  shaderResourceResidency                 = 0
                  shaderResourceMinLod                    = 0
                  alphaToOne                              = 1
                  sparseBinding                           = 1
                  sparseResidencyBuffer                   = 1
                  sparseResidencyImage2D                  = 1
                  sparseResidencyImage3D                  = 1
                  sparseResidency2Samples                 = 1
                  sparseResidency4Samples                 = 1
                  sparseResidency8Samples                 = 1
                  sparseResidency16Samples                = 0
                  sparseResidencyAliased                  = 1
                  variableMultisampleRate                 = 1
                  iheritedQueries                         = 1
              
              
              FORMAT_UNDEFINED:
                  linearTiling   FormatFeatureFlags:
                      None
                  optimalTiling  FormatFeatureFlags:
                      None
                  bufferFeatures FormatFeatureFlags:
                      None
              
              FORMAT_R4G4_UNORM_PACK8:
                  linearTiling   FormatFeatureFlags:
                      VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
                      VK_FORMAT_FEATURE_BLIT_SRC_BIT
                      VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
                  optimalTiling  FormatFeatureFlags:
                      VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT
                      VK_FORMAT_FEATURE_BLIT_SRC_BIT
                      VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT
                  bufferFeatures FormatFeatureFlags:
                      VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT
              Complete log stay here (too big for phoronix post, limit 20000 characters in post)

              Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.



              Comment


              • #37
                Originally posted by tuke81 View Post
                It's not a game it's nvidia's vulkan demo:
                https://github.com/nvpro-samples/gl_vk_chopper
                Aaand I'm still looking for any vulkan example that can actually be compiled on linux.

                Code:
                [100%] Linking CXX executable /home/chris/build/bin_x64/gl_vk_chopper
                /usr/bin/ld: cannot find -lNOTFOUND
                Also running cmake a second time doesn't work.

                Can nobody use cmake properly?
                Edit: It's the ant tweak bar. Replacing -lNOTFOUND with -lAntTweakBar in CMakeFiles/gl_vk_chopper.dir/link.txt and running make again finishes it. Probably tries to link the statically built version which doesn't exist on archlinux.
                Edit: Looks like it's attempting to start, but it requires OpenGL 4.5 and segfaults with mesa version override, so apparently can't be tested with vulkan alone.
                Edit: Huh, not really, looks more like it comes from the example code:
                Code:
                Program received signal SIGSEGV, Segmentation fault.
                0x00007ffff4a55fe4 in __memcpy_sse2_unaligned () from /usr/lib/libc.so.6
                (gdb) bt
                #0  0x00007ffff4a55fe4 in __memcpy_sse2_unaligned () from /usr/lib/libc.so.6
                #1  0x00005555555aff35 in memcpy (__len=12648448, __src=<optimized out>, __dest=<optimized out>) at /usr/include/bits/string3.h:53
                #2  VkeCubeTexture::loadCubeDDS (this=0x55555629d100, inFile=inFile@entry=0x5555555fffe7 "environ.dds") at /home/chris/oldhome/build/gl_vk_chopper/VkeCubeTexture.cpp:171
                #3  0x000055555559c3f8 in vkeGameRendererDynamic::initRenderer (this=this@entry=0x5555562106b0) at /home/chris/oldhome/build/gl_vk_chopper/VkeGameRendererDynamic.cpp:348
                #4  0x000055555559c97e in vkeGameRendererDynamic::vkeGameRendererDynamic (this=0x5555562106b0) at /home/chris/oldhome/build/gl_vk_chopper/VkeGameRendererDynamic.cpp:201
                #5  0x00005555555bbf70 in VulkanAppContext::initRenderer (this=0x5555560c9900, inProgramManager=...) at /home/chris/oldhome/build/gl_vk_chopper/VulkanAppContext.cpp:248
                #6  0x00005555555b6f76 in pathclipping::Sample::initVulkan (this=0x7fffffffd090) at /home/chris/oldhome/build/gl_vk_chopper/vukansandbox.cpp:181
                #7  pathclipping::Sample::begin (this=0x7fffffffd090) at /home/chris/oldhome/build/gl_vk_chopper/vukansandbox.cpp:252
                #8  0x00005555555d8fa6 in nv_helpers_gl::WindowProfiler::run(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int, char const**, int, int, int, int) ()
                #9  0x00005555555b7828 in sample_main (argc=1, argv=0x7fffffffd738) at /home/chris/oldhome/build/gl_vk_chopper/vukansandbox.cpp:359
                #10 0x0000555555599cc9 in main ()
                The offending code is
                Code:
                                        memcpy(data, (void *)mipmap, layout.size);
                I added
                Code:
                printf("Copy size %d\n", layout.size);
                printf("sizeofmipmap %d\n", sizeof(mipmap));
                right in front of it and got:
                Copy size 12648448
                sizeofmipmap 112
                So I changed it to
                Code:
                memcpy(data, (void *)mipmap, sizeof(mipmap));
                and it ran a bit further until it segfaults at another memcpy in gl_vk_chopper/VkeBuffer.h that doesn't look to be so trivial to work around.

                Is the example just broken?

                Edit: looking at the shaders, there are only glsl shaders that contain #extension GL_KHR_vulkan_glsl : require. So is it even possible to run this?
                Last edited by haagch; 16 February 2016, 02:25 PM.

                Comment


                • #38
                  I have a Fermi card and Nvidia's beta driver supports Kepler and later. Will they add Fermi support later on?

                  Comment


                  • #39
                    Originally posted by rabcor View Post
                    To be fair, the current driver release isn't for end users, it's for developers and testing, AMD being behind actually can and will have an impact. Right now only people on non-AMD hardware can develop vulkan software on and for linux, they have no means of testing or running it on AMD. If this drags on it could lead to the first vulkan games being released on Linux without AMD support, and when AMD finally releases their vulkan code, all existing software reliant on vulkan will be completely untested for AMD, so AMD users will hvae to go in to vulkan software with a spray and pray mentality.
                    there is no need to test software on amd, vulkan has vendor-neutral testsuite

                    Comment


                    • #40
                      Originally posted by bug77 View Post
                      seriously, was anyone expecting same-day support from AMD? Anyone?
                      AMD were the pioneers here, with Mantle, which Vulkan is said to be derived from. Assuming they could reuse some of that code for Vulkan, I would expect support from AMD first. Unless they continued pushing Mantle, that is…

                      Comment

                      Working...
                      X