KomputeProject / kompute

General purpose GPU compute framework built on Vulkan to support 1000s of cross vendor graphics cards (AMD, Qualcomm, NVIDIA & friends). Blazing fast, mobile-enabled, asynchronous and optimized for advanced GPU data processing usecases. Backed by the Linux Foundation.
http://kompute.cc/
Apache License 2.0
1.99k stars 154 forks source link

Website examples typo's and 6500 XT unknown GPU #275

Closed TeaCult closed 2 years ago

TeaCult commented 2 years ago

I am using 6500 XT with rocm 5.0.2 In website python examples :

First example:

Still asserts which leads me back to the issue

import kp
import logging

kp_logger = logging.getLogger("kp")
kp_logger.setLevel(logging.INFO)

kp.Manager()

INFO:kp:Using physical device index 0 found Unknown AMD GPU

Unknown amd gpu and I get tensor_out as =[0,0,0] ///////////////////////////////////////////////////// VULKAN INFO /////////////////////////////////////////////////////////////////////

==========
VULKANINFO
==========

Vulkan Instance Version: 1.3.207

Instance Extensions: count = 18
===============================
    VK_EXT_acquire_xlib_display            : extension revision 1
    VK_EXT_debug_report                    : extension revision 10
    VK_EXT_debug_utils                     : extension revision 2
    VK_EXT_direct_mode_display             : extension revision 1
    VK_EXT_display_surface_counter         : extension revision 1
    VK_KHR_device_group_creation           : extension revision 1
    VK_KHR_display                         : extension revision 23
    VK_KHR_external_fence_capabilities     : extension revision 1
    VK_KHR_external_memory_capabilities    : extension revision 1
    VK_KHR_external_semaphore_capabilities : extension revision 1
    VK_KHR_get_display_properties2         : extension revision 1
    VK_KHR_get_physical_device_properties2 : extension revision 2
    VK_KHR_get_surface_capabilities2       : extension revision 1
    VK_KHR_surface                         : extension revision 25
    VK_KHR_surface_protected_capabilities  : extension revision 1
    VK_KHR_wayland_surface                 : extension revision 6
    VK_KHR_xcb_surface                     : extension revision 6
    VK_KHR_xlib_surface                    : extension revision 6

Layers: count = 6
=================
VK_LAYER_AMD_switchable_graphics_64 (AMD switchable graphics layer) Vulkan version 1.3.205, layer version 1:
    Layer Extensions: count = 0
    Devices: count = 1
        GPU id = 0 (Unknown AMD GPU)
        Layer-Device Extensions: count = 0

VK_LAYER_KHRONOS_validation (Khronos Validation Layer) Vulkan version 1.3.204, layer version 1:
    Layer Extensions: count = 3
        VK_EXT_debug_report        : extension revision 9
        VK_EXT_debug_utils         : extension revision 1
        VK_EXT_validation_features : extension revision 2
    Devices: count = 1
        GPU id = 0 (Unknown AMD GPU)
        Layer-Device Extensions: count = 3
            VK_EXT_debug_marker     : extension revision 4
            VK_EXT_tooling_info     : extension revision 1
            VK_EXT_validation_cache : extension revision 1

VK_LAYER_LUNARG_api_dump (LunarG API dump layer) Vulkan version 1.3.204, layer version 2:
    Layer Extensions: count = 0
    Devices: count = 1
        GPU id = 0 (Unknown AMD GPU)
        Layer-Device Extensions: count = 1
            VK_EXT_tooling_info : extension revision 1

VK_LAYER_LUNARG_device_simulation (LunarG device simulation layer) Vulkan version 1.3.204, layer version 1:
    Layer Extensions: count = 0
    Devices: count = 1
        GPU id = 0 (Unknown AMD GPU)
        Layer-Device Extensions: count = 1
            VK_EXT_tooling_info : extension revision 1

VK_LAYER_LUNARG_monitor (Execution Monitoring Layer) Vulkan version 1.3.204, layer version 1:
    Layer Extensions: count = 0
    Devices: count = 1
        GPU id = 0 (Unknown AMD GPU)
        Layer-Device Extensions: count = 1
            VK_EXT_tooling_info : extension revision 1

VK_LAYER_LUNARG_screenshot (LunarG image capture layer) Vulkan version 1.3.204, layer version 1:
    Layer Extensions: count = 0
    Devices: count = 1
        GPU id = 0 (Unknown AMD GPU)
        Layer-Device Extensions: count = 1
            VK_EXT_tooling_info : extension revision 1

Presentable Surfaces:
=====================
GPU id : 0 (Unknown AMD GPU):
    Surface types: count = 2
        VK_KHR_xcb_surface
        VK_KHR_xlib_surface
    Formats: count = 2
        SurfaceFormat[0]:
            format = FORMAT_B8G8R8A8_UNORM
            colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
        SurfaceFormat[1]:
            format = FORMAT_B8G8R8A8_SRGB
            colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
    Present Modes: count = 3
        PRESENT_MODE_IMMEDIATE_KHR
        PRESENT_MODE_MAILBOX_KHR
        PRESENT_MODE_FIFO_KHR
    VkSurfaceCapabilitiesKHR:
    -------------------------
        minImageCount = 2
        maxImageCount = 16
        currentExtent:
            width  = 256
            height = 256
        minImageExtent:
            width  = 256
            height = 256
        maxImageExtent:
            width  = 256
            height = 256
        maxImageArrayLayers = 1
        supportedTransforms: count = 1
            SURFACE_TRANSFORM_IDENTITY_BIT_KHR
        currentTransform = SURFACE_TRANSFORM_IDENTITY_BIT_KHR
        supportedCompositeAlpha: count = 2
            COMPOSITE_ALPHA_OPAQUE_BIT_KHR
            COMPOSITE_ALPHA_INHERIT_BIT_KHR
        supportedUsageFlags: count = 6
            IMAGE_USAGE_TRANSFER_SRC_BIT
            IMAGE_USAGE_TRANSFER_DST_BIT
            IMAGE_USAGE_SAMPLED_BIT
            IMAGE_USAGE_STORAGE_BIT
            IMAGE_USAGE_COLOR_ATTACHMENT_BIT
            IMAGE_USAGE_INPUT_ATTACHMENT_BIT
    VkSurfaceCapabilities2EXT:
    --------------------------
        supportedSurfaceCounters:
            None
    VkSurfaceProtectedCapabilitiesKHR:
    ----------------------------------
        supportsProtected = false

Device Groups:
==============
Group 0:
    Properties:
        physicalDevices: count = 1
            Unknown AMD GPU (ID: 0)
        subsetAllocation = 0

    Present Capabilities:
        Unknown AMD GPU (ID: 0):
            Can present images from the following devices: count = 1
                Unknown AMD GPU (ID: 0)
        Present modes: count = 1
            DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR

Device Properties and Extensions:
=================================
GPU0:
VkPhysicalDeviceProperties:
---------------------------
    apiVersion        = 4206797 (1.3.205)
    driverVersion     = 8388824 (0x8000d8)
    vendorID          = 0x1002
    deviceID          = 0x743f
    deviceType        = PHYSICAL_DEVICE_TYPE_DISCRETE_GPU
    deviceName        = Unknown AMD GPU
    pipelineCacheUUID = 57941a59-ca3b-5a27-838d-a96fb0be0d43

VkPhysicalDeviceLimits:
-----------------------
    maxImageDimension1D                             = 16384
    maxImageDimension2D                             = 16384
    maxImageDimension3D                             = 8192
    maxImageDimensionCube                           = 16384
    maxImageArrayLayers                             = 8192
    maxTexelBufferElements                          = 4294967295
    maxUniformBufferRange                           = 4294967295
    maxStorageBufferRange                           = 4294967295
    maxPushConstantsSize                            = 128
    maxMemoryAllocationCount                        = 4294967295
    maxSamplerAllocationCount                       = 1048576
    bufferImageGranularity                          = 0x00000001
    sparseAddressSpaceSize                          = 0x7ff900000000
    maxBoundDescriptorSets                          = 32
    maxPerStageDescriptorSamplers                   = 4294967295
    maxPerStageDescriptorUniformBuffers             = 4294967295
    maxPerStageDescriptorStorageBuffers             = 4294967295
    maxPerStageDescriptorSampledImages              = 4294967295
    maxPerStageDescriptorStorageImages              = 4294967295
    maxPerStageDescriptorInputAttachments           = 4294967295
    maxPerStageResources                            = 4294967295
    maxDescriptorSetSamplers                        = 4294967295
    maxDescriptorSetUniformBuffers                  = 4294967295
    maxDescriptorSetUniformBuffersDynamic           = 8
    maxDescriptorSetStorageBuffers                  = 4294967295
    maxDescriptorSetStorageBuffersDynamic           = 8
    maxDescriptorSetSampledImages                   = 4294967295
    maxDescriptorSetStorageImages                   = 4294967295
    maxDescriptorSetInputAttachments                = 4294967295
    maxVertexInputAttributes                        = 64
    maxVertexInputBindings                          = 32
    maxVertexInputAttributeOffset                   = 4294967295
    maxVertexInputBindingStride                     = 16383
    maxVertexOutputComponents                       = 128
    maxTessellationGenerationLevel                  = 64
    maxTessellationPatchSize                        = 32
    maxTessellationControlPerVertexInputComponents  = 128
    maxTessellationControlPerVertexOutputComponents = 128
    maxTessellationControlPerPatchOutputComponents  = 120
    maxTessellationControlTotalOutputComponents     = 4096
    maxTessellationEvaluationInputComponents        = 128
    maxTessellationEvaluationOutputComponents       = 128
    maxGeometryShaderInvocations                    = 127
    maxGeometryInputComponents                      = 128
    maxGeometryOutputComponents                     = 128
    maxGeometryOutputVertices                       = 1023
    maxGeometryTotalOutputComponents                = 4095
    maxFragmentInputComponents                      = 128
    maxFragmentOutputAttachments                    = 8
    maxFragmentDualSrcAttachments                   = 1
    maxFragmentCombinedOutputResources              = 4294967295
    maxComputeSharedMemorySize                      = 65536
    maxComputeWorkGroupCount: count = 3
        65535
        65535
        65535
    maxComputeWorkGroupInvocations                  = 1024
    maxComputeWorkGroupSize: count = 3
        1024
        1024
        1024
    subPixelPrecisionBits                           = 8
    subTexelPrecisionBits                           = 8
    mipmapPrecisionBits                             = 8
    maxDrawIndexedIndexValue                        = 4294967295
    maxDrawIndirectCount                            = 4294967295
    maxSamplerLodBias                               = 15.9961
    maxSamplerAnisotropy                            = 16
    maxViewports                                    = 16
    maxViewportDimensions: count = 2
        16384
        16384
    viewportBoundsRange: count = 2
        -32768
        32767
    viewportSubPixelBits                            = 8
    minMemoryMapAlignment                           = 64
    minTexelBufferOffsetAlignment                   = 0x00000004
    minUniformBufferOffsetAlignment                 = 0x00000010
    minStorageBufferOffsetAlignment                 = 0x00000004
    minTexelOffset                                  = -64
    maxTexelOffset                                  = 63
    minTexelGatherOffset                            = -32
    maxTexelGatherOffset                            = 31
    minInterpolationOffset                          = -2
    maxInterpolationOffset                          = 1
    subPixelInterpolationOffsetBits                 = 8
    maxFramebufferWidth                             = 16384
    maxFramebufferHeight                            = 16384
    maxFramebufferLayers                            = 8192
    framebufferColorSampleCounts: count = 4
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
    framebufferDepthSampleCounts: count = 4
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
    framebufferStencilSampleCounts: count = 4
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
    framebufferNoAttachmentsSampleCounts: count = 4
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
    maxColorAttachments                             = 8
    sampledImageColorSampleCounts: count = 4
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
    sampledImageIntegerSampleCounts: count = 4
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
    sampledImageDepthSampleCounts: count = 4
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
    sampledImageStencilSampleCounts: count = 4
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
    storageImageSampleCounts: count = 4
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
    maxSampleMaskWords                              = 1
    timestampComputeAndGraphics                     = true
    timestampPeriod                                 = 10
    maxClipDistances                                = 8
    maxCullDistances                                = 8
    maxCombinedClipAndCullDistances                 = 8
    discreteQueuePriorities                         = 2
    pointSizeRange: count = 2
        0
        8191.88
    lineWidthRange: count = 2
        0
        8191.88
    pointSizeGranularity                            = 0.125
    lineWidthGranularity                            = 0.125
    strictLines                                     = false
    standardSampleLocations                         = true
    optimalBufferCopyOffsetAlignment                = 0x00000001
    optimalBufferCopyRowPitchAlignment              = 0x00000001
    nonCoherentAtomSize                             = 0x00000080

VkPhysicalDeviceSparseProperties:
---------------------------------
    residencyStandard2DBlockShape            = true
    residencyStandard2DMultisampleBlockShape = false
    residencyStandard3DBlockShape            = true
    residencyAlignedMipSize                  = false
    residencyNonResidentStrict               = true

VkPhysicalDeviceConservativeRasterizationPropertiesEXT:
-------------------------------------------------------
    primitiveOverestimationSize                 = 0
    maxExtraPrimitiveOverestimationSize         = 0
    extraPrimitiveOverestimationSizeGranularity = 0
    primitiveUnderestimation                    = true
    conservativePointAndLineRasterization       = false
    degenerateTrianglesRasterized               = true
    degenerateLinesRasterized                   = false
    fullyCoveredFragmentShaderInputVariable     = false
    conservativeRasterizationPostDepthCoverage  = true

VkPhysicalDeviceCustomBorderColorPropertiesEXT:
-----------------------------------------------
    maxCustomBorderColorSamplers = 4096

VkPhysicalDeviceDepthStencilResolveProperties:
----------------------------------------------
    supportedDepthResolveModes: count = 3
        RESOLVE_MODE_SAMPLE_ZERO_BIT
        RESOLVE_MODE_MIN_BIT
        RESOLVE_MODE_MAX_BIT
    supportedStencilResolveModes: count = 3
        RESOLVE_MODE_SAMPLE_ZERO_BIT
        RESOLVE_MODE_MIN_BIT
        RESOLVE_MODE_MAX_BIT
    independentResolveNone = true
    independentResolve     = true

VkPhysicalDeviceDescriptorIndexingProperties:
---------------------------------------------
    maxUpdateAfterBindDescriptorsInAllPools              = 4294967295
    shaderUniformBufferArrayNonUniformIndexingNative     = false
    shaderSampledImageArrayNonUniformIndexingNative      = false
    shaderStorageBufferArrayNonUniformIndexingNative     = false
    shaderStorageImageArrayNonUniformIndexingNative      = false
    shaderInputAttachmentArrayNonUniformIndexingNative   = false
    robustBufferAccessUpdateAfterBind                    = false
    quadDivergentImplicitLod                             = false
    maxPerStageDescriptorUpdateAfterBindSamplers         = 4294967295
    maxPerStageDescriptorUpdateAfterBindUniformBuffers   = 4294967295
    maxPerStageDescriptorUpdateAfterBindStorageBuffers   = 4294967295
    maxPerStageDescriptorUpdateAfterBindSampledImages    = 4294967295
    maxPerStageDescriptorUpdateAfterBindStorageImages    = 4294967295
    maxPerStageDescriptorUpdateAfterBindInputAttachments = 4294967295
    maxPerStageUpdateAfterBindResources                  = 4294967295
    maxDescriptorSetUpdateAfterBindSamplers              = 4294967295
    maxDescriptorSetUpdateAfterBindUniformBuffers        = 4294967295
    maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = 8
    maxDescriptorSetUpdateAfterBindStorageBuffers        = 4294967295
    maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = 8
    maxDescriptorSetUpdateAfterBindSampledImages         = 4294967295
    maxDescriptorSetUpdateAfterBindStorageImages         = 4294967295
    maxDescriptorSetUpdateAfterBindInputAttachments      = 4294967295

VkPhysicalDeviceDriverProperties:
---------------------------------
    driverID           = DRIVER_ID_AMD_OPEN_SOURCE
    driverName         = AMD open-source driver
    driverInfo         = 2022.Q1.3
    conformanceVersion = 1.3.0.0

VkPhysicalDeviceExternalMemoryHostPropertiesEXT:
------------------------------------------------
    minImportedHostPointerAlignment = 0x00001000

VkPhysicalDeviceFloatControlsProperties:
----------------------------------------
    denormBehaviorIndependence            = SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY
    roundingModeIndependence              = SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY
    shaderSignedZeroInfNanPreserveFloat16 = true
    shaderSignedZeroInfNanPreserveFloat32 = true
    shaderSignedZeroInfNanPreserveFloat64 = true
    shaderDenormPreserveFloat16           = true
    shaderDenormPreserveFloat32           = true
    shaderDenormPreserveFloat64           = true
    shaderDenormFlushToZeroFloat16        = true
    shaderDenormFlushToZeroFloat32        = true
    shaderDenormFlushToZeroFloat64        = true
    shaderRoundingModeRTEFloat16          = true
    shaderRoundingModeRTEFloat32          = true
    shaderRoundingModeRTEFloat64          = true
    shaderRoundingModeRTZFloat16          = true
    shaderRoundingModeRTZFloat32          = true
    shaderRoundingModeRTZFloat64          = true

VkPhysicalDeviceFragmentShadingRatePropertiesKHR:
-------------------------------------------------
    minFragmentShadingRateAttachmentTexelSize:
        width  = 8
        height = 8
    maxFragmentShadingRateAttachmentTexelSize:
        width  = 8
        height = 8
    maxFragmentShadingRateAttachmentTexelSizeAspectRatio = 1
    primitiveFragmentShadingRateWithMultipleViewports    = true
    layeredShadingRateAttachments                        = false
    fragmentShadingRateNonTrivialCombinerOps             = true
    maxFragmentSize:
        width  = 2
        height = 2
    maxFragmentSizeAspectRatio                           = 2
    maxFragmentShadingRateCoverageSamples                = 32
    maxFragmentShadingRateRasterizationSamples           = SAMPLE_COUNT_16_BIT
    fragmentShadingRateWithShaderDepthStencilWrites      = true
    fragmentShadingRateWithSampleMask                    = true
    fragmentShadingRateWithShaderSampleMask              = true
    fragmentShadingRateWithConservativeRasterization     = true
    fragmentShadingRateWithFragmentShaderInterlock       = false
    fragmentShadingRateWithCustomSampleLocations         = true
    fragmentShadingRateStrictMultiplyCombiner            = true

VkPhysicalDeviceIDProperties:
-----------------------------
    deviceUUID      = 00000000-0600-0000-0000-000000000000
    driverUUID      = 414d442d-4c49-4e55-582d-445256000000
    deviceNodeMask  = 1
    deviceLUIDValid = false

VkPhysicalDeviceInlineUniformBlockProperties:
---------------------------------------------
    maxInlineUniformBlockSize                               = 65536
    maxPerStageDescriptorInlineUniformBlocks                = 16
    maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = 16
    maxDescriptorSetInlineUniformBlocks                     = 16
    maxDescriptorSetUpdateAfterBindInlineUniformBlocks      = 16

VkPhysicalDeviceLineRasterizationPropertiesEXT:
-----------------------------------------------
    lineSubPixelPrecisionBits = 4

VkPhysicalDeviceMaintenance3Properties:
---------------------------------------
    maxPerSetDescriptors    = 4294967295
    maxMemoryAllocationSize = 0x80000000

VkPhysicalDeviceMaintenance4Properties:
---------------------------------------
    maxBufferSize = 0x80000000

VkPhysicalDeviceMultiviewProperties:
------------------------------------
    maxMultiviewViewCount     = 6
    maxMultiviewInstanceIndex = 4294967295

VkPhysicalDevicePCIBusInfoPropertiesEXT:
----------------------------------------
    pciDomain   = 0
    pciBus      = 6
    pciDevice   = 0
    pciFunction = 0

VkPhysicalDevicePointClippingProperties:
----------------------------------------
    pointClippingBehavior = POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES

VkPhysicalDeviceProtectedMemoryProperties:
------------------------------------------
    protectedNoFault = false

VkPhysicalDeviceProvokingVertexPropertiesEXT:
---------------------------------------------
    provokingVertexModePerPipeline                       = true
    transformFeedbackPreservesTriangleFanProvokingVertex = true

VkPhysicalDeviceRobustness2PropertiesEXT:
-----------------------------------------
    robustStorageBufferAccessSizeAlignment = 0x00000004
    robustUniformBufferAccessSizeAlignment = 0x00000004

VkPhysicalDeviceSampleLocationsPropertiesEXT:
---------------------------------------------
    sampleLocationSampleCounts: count = 4
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
    maxSampleLocationGridSize:
        width  = 2
        height = 2
    sampleLocationCoordinateRange: count = 2
        0
        1
    sampleLocationSubPixelBits       = 4
    variableSampleLocations          = true

VkPhysicalDeviceSamplerFilterMinmaxProperties:
----------------------------------------------
    filterMinmaxSingleComponentFormats = true
    filterMinmaxImageComponentMapping  = true

VkPhysicalDeviceShaderIntegerDotProductProperties:
--------------------------------------------------
    integerDotProduct8BitUnsignedAccelerated                                      = true
    integerDotProduct8BitSignedAccelerated                                        = true
    integerDotProduct8BitMixedSignednessAccelerated                               = false
    integerDotProduct4x8BitPackedUnsignedAccelerated                              = true
    integerDotProduct4x8BitPackedSignedAccelerated                                = true
    integerDotProduct4x8BitPackedMixedSignednessAccelerated                       = false
    integerDotProduct16BitUnsignedAccelerated                                     = true
    integerDotProduct16BitSignedAccelerated                                       = true
    integerDotProduct16BitMixedSignednessAccelerated                              = false
    integerDotProduct32BitUnsignedAccelerated                                     = false
    integerDotProduct32BitSignedAccelerated                                       = false
    integerDotProduct32BitMixedSignednessAccelerated                              = false
    integerDotProduct64BitUnsignedAccelerated                                     = false
    integerDotProduct64BitSignedAccelerated                                       = false
    integerDotProduct64BitMixedSignednessAccelerated                              = false
    integerDotProductAccumulatingSaturating8BitUnsignedAccelerated                = false
    integerDotProductAccumulatingSaturating8BitSignedAccelerated                  = false
    integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated         = false
    integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated        = false
    integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated          = false
    integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated = false
    integerDotProductAccumulatingSaturating16BitUnsignedAccelerated               = true
    integerDotProductAccumulatingSaturating16BitSignedAccelerated                 = true
    integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated        = false
    integerDotProductAccumulatingSaturating32BitUnsignedAccelerated               = false
    integerDotProductAccumulatingSaturating32BitSignedAccelerated                 = false
    integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated        = false
    integerDotProductAccumulatingSaturating64BitUnsignedAccelerated               = false
    integerDotProductAccumulatingSaturating64BitSignedAccelerated                 = false
    integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated        = false

VkPhysicalDeviceSubgroupProperties:
-----------------------------------
    subgroupSize              = 64
    supportedStages: count = 8
        SHADER_STAGE_VERTEX_BIT
        SHADER_STAGE_TESSELLATION_CONTROL_BIT
        SHADER_STAGE_TESSELLATION_EVALUATION_BIT
        SHADER_STAGE_GEOMETRY_BIT
        SHADER_STAGE_FRAGMENT_BIT
        SHADER_STAGE_COMPUTE_BIT
        SHADER_STAGE_ALL_GRAPHICS
        SHADER_STAGE_ALL
    supportedOperations: count = 8
        SUBGROUP_FEATURE_BASIC_BIT
        SUBGROUP_FEATURE_VOTE_BIT
        SUBGROUP_FEATURE_ARITHMETIC_BIT
        SUBGROUP_FEATURE_BALLOT_BIT
        SUBGROUP_FEATURE_SHUFFLE_BIT
        SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT
        SUBGROUP_FEATURE_CLUSTERED_BIT
        SUBGROUP_FEATURE_QUAD_BIT
    quadOperationsInAllStages = true

VkPhysicalDeviceSubgroupSizeControlProperties:
----------------------------------------------
    minSubgroupSize              = 32
    maxSubgroupSize              = 64
    maxComputeWorkgroupSubgroups = 4294967295
    requiredSubgroupSizeStages:
        None

VkPhysicalDeviceTexelBufferAlignmentProperties:
-----------------------------------------------
    storageTexelBufferOffsetAlignmentBytes       = 0x00000004
    storageTexelBufferOffsetSingleTexelAlignment = true
    uniformTexelBufferOffsetAlignmentBytes       = 0x00000004
    uniformTexelBufferOffsetSingleTexelAlignment = true

VkPhysicalDeviceTimelineSemaphoreProperties:
--------------------------------------------
    maxTimelineSemaphoreValueDifference = 4294967295

VkPhysicalDeviceTransformFeedbackPropertiesEXT:
-----------------------------------------------
    maxTransformFeedbackStreams                = 4
    maxTransformFeedbackBuffers                = 4
    maxTransformFeedbackBufferSize             = 0xffffffff
    maxTransformFeedbackStreamDataSize         = 512
    maxTransformFeedbackBufferDataSize         = 512
    maxTransformFeedbackBufferDataStride       = 512
    transformFeedbackQueries                   = true
    transformFeedbackStreamsLinesTriangles     = true
    transformFeedbackRasterizationStreamSelect = false
    transformFeedbackDraw                      = true

VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT:
----------------------------------------------------
    maxVertexAttribDivisor = 4294967295

VkPhysicalDeviceVulkan11Properties:
-----------------------------------
    deviceUUID                        = 00000000-0600-0000-0000-000000000000
    driverUUID                        = 414d442d-4c49-4e55-582d-445256000000
    deviceNodeMask                    = 1
    deviceLUIDValid                   = false
    subgroupSize                      = 64
    subgroupSupportedStages: count = 8
        SHADER_STAGE_VERTEX_BIT
        SHADER_STAGE_TESSELLATION_CONTROL_BIT
        SHADER_STAGE_TESSELLATION_EVALUATION_BIT
        SHADER_STAGE_GEOMETRY_BIT
        SHADER_STAGE_FRAGMENT_BIT
        SHADER_STAGE_COMPUTE_BIT
        SHADER_STAGE_ALL_GRAPHICS
        SHADER_STAGE_ALL
    subgroupSupportedOperations: count = 8
        SUBGROUP_FEATURE_BASIC_BIT
        SUBGROUP_FEATURE_VOTE_BIT
        SUBGROUP_FEATURE_ARITHMETIC_BIT
        SUBGROUP_FEATURE_BALLOT_BIT
        SUBGROUP_FEATURE_SHUFFLE_BIT
        SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT
        SUBGROUP_FEATURE_CLUSTERED_BIT
        SUBGROUP_FEATURE_QUAD_BIT
    subgroupQuadOperationsInAllStages = true
    pointClippingBehavior             = POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES
    maxMultiviewViewCount             = 6
    maxMultiviewInstanceIndex         = 4294967295
    protectedNoFault                  = false
    maxPerSetDescriptors              = 4294967295
    maxMemoryAllocationSize           = 0x80000000

VkPhysicalDeviceVulkan12Properties:
-----------------------------------
    driverID                                             = DRIVER_ID_AMD_OPEN_SOURCE
    driverName                                           = AMD open-source driver
    driverInfo                                           = 2022.Q1.3
    conformanceVersion                                   = 1.3.0.0
    denormBehaviorIndependence                           = SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY
    roundingModeIndependence                             = SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY
    shaderSignedZeroInfNanPreserveFloat16                = true
    shaderSignedZeroInfNanPreserveFloat32                = true
    shaderSignedZeroInfNanPreserveFloat64                = true
    shaderDenormPreserveFloat16                          = true
    shaderDenormPreserveFloat32                          = true
    shaderDenormPreserveFloat64                          = true
    shaderDenormFlushToZeroFloat16                       = true
    shaderDenormFlushToZeroFloat32                       = true
    shaderDenormFlushToZeroFloat64                       = true
    shaderRoundingModeRTEFloat16                         = true
    shaderRoundingModeRTEFloat32                         = true
    shaderRoundingModeRTEFloat64                         = true
    shaderRoundingModeRTZFloat16                         = true
    shaderRoundingModeRTZFloat32                         = true
    shaderRoundingModeRTZFloat64                         = true
    maxUpdateAfterBindDescriptorsInAllPools              = 4294967295
    shaderUniformBufferArrayNonUniformIndexingNative     = false
    shaderSampledImageArrayNonUniformIndexingNative      = false
    shaderStorageBufferArrayNonUniformIndexingNative     = false
    shaderStorageImageArrayNonUniformIndexingNative      = false
    shaderInputAttachmentArrayNonUniformIndexingNative   = false
    robustBufferAccessUpdateAfterBind                    = false
    quadDivergentImplicitLod                             = false
    maxPerStageDescriptorUpdateAfterBindSamplers         = 4294967295
    maxPerStageDescriptorUpdateAfterBindUniformBuffers   = 4294967295
    maxPerStageDescriptorUpdateAfterBindStorageBuffers   = 4294967295
    maxPerStageDescriptorUpdateAfterBindSampledImages    = 4294967295
    maxPerStageDescriptorUpdateAfterBindStorageImages    = 4294967295
    maxPerStageDescriptorUpdateAfterBindInputAttachments = 4294967295
    maxPerStageUpdateAfterBindResources                  = 4294967295
    maxDescriptorSetUpdateAfterBindSamplers              = 4294967295
    maxDescriptorSetUpdateAfterBindUniformBuffers        = 4294967295
    maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = 8
    maxDescriptorSetUpdateAfterBindStorageBuffers        = 4294967295
    maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = 8
    maxDescriptorSetUpdateAfterBindSampledImages         = 4294967295
    maxDescriptorSetUpdateAfterBindStorageImages         = 4294967295
    maxDescriptorSetUpdateAfterBindInputAttachments      = 4294967295
    supportedDepthResolveModes: count = 3
        RESOLVE_MODE_SAMPLE_ZERO_BIT
        RESOLVE_MODE_MIN_BIT
        RESOLVE_MODE_MAX_BIT
    supportedStencilResolveModes: count = 3
        RESOLVE_MODE_SAMPLE_ZERO_BIT
        RESOLVE_MODE_MIN_BIT
        RESOLVE_MODE_MAX_BIT
    independentResolveNone                               = true
    independentResolve                                   = true
    filterMinmaxSingleComponentFormats                   = true
    filterMinmaxImageComponentMapping                    = true
    maxTimelineSemaphoreValueDifference                  = 4294967295
    framebufferIntegerColorSampleCounts: count = 4
        SAMPLE_COUNT_1_BIT
        SAMPLE_COUNT_2_BIT
        SAMPLE_COUNT_4_BIT
        SAMPLE_COUNT_8_BIT
TeaCult commented 2 years ago
VkPhysicalDeviceVulkan13Properties:
-----------------------------------
    minSubgroupSize                                                               = 32
    maxSubgroupSize                                                               = 64
    maxComputeWorkgroupSubgroups                                                  = 4294967295
    requiredSubgroupSizeStages:
        None
    maxInlineUniformBlockSize                                                     = 65536
    maxPerStageDescriptorInlineUniformBlocks                                      = 16
    maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks                       = 16
    maxDescriptorSetInlineUniformBlocks                                           = 16
    maxDescriptorSetUpdateAfterBindInlineUniformBlocks                            = 16
    maxInlineUniformTotalSize                                                     = 4294967295
    integerDotProduct8BitUnsignedAccelerated                                      = true
    integerDotProduct8BitSignedAccelerated                                        = true
    integerDotProduct8BitMixedSignednessAccelerated                               = false
    integerDotProduct4x8BitPackedUnsignedAccelerated                              = true
    integerDotProduct4x8BitPackedSignedAccelerated                                = true
    integerDotProduct4x8BitPackedMixedSignednessAccelerated                       = false
    integerDotProduct16BitUnsignedAccelerated                                     = true
    integerDotProduct16BitSignedAccelerated                                       = true
    integerDotProduct16BitMixedSignednessAccelerated                              = false
    integerDotProduct32BitUnsignedAccelerated                                     = false
    integerDotProduct32BitSignedAccelerated                                       = false
    integerDotProduct32BitMixedSignednessAccelerated                              = false
    integerDotProduct64BitUnsignedAccelerated                                     = false
    integerDotProduct64BitSignedAccelerated                                       = false
    integerDotProduct64BitMixedSignednessAccelerated                              = false
    integerDotProductAccumulatingSaturating8BitUnsignedAccelerated                = false
    integerDotProductAccumulatingSaturating8BitSignedAccelerated                  = false
    integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated         = false
    integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated        = false
    integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated          = false
    integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated = false
    integerDotProductAccumulatingSaturating16BitUnsignedAccelerated               = true
    integerDotProductAccumulatingSaturating16BitSignedAccelerated                 = true
    integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated        = false
    integerDotProductAccumulatingSaturating32BitUnsignedAccelerated               = false
    integerDotProductAccumulatingSaturating32BitSignedAccelerated                 = false
    integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated        = false
    integerDotProductAccumulatingSaturating64BitUnsignedAccelerated               = false
    integerDotProductAccumulatingSaturating64BitSignedAccelerated                 = false
    integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated        = false
    storageTexelBufferOffsetAlignmentBytes                                        = 0x00000004
    storageTexelBufferOffsetSingleTexelAlignment                                  = true
    uniformTexelBufferOffsetAlignmentBytes                                        = 0x00000004
    uniformTexelBufferOffsetSingleTexelAlignment                                  = true
    maxBufferSize                                                                 = 0x80000000

Device Extensions: count = 130
    VK_AMD_buffer_marker                        : extension revision 1
    VK_AMD_device_coherent_memory               : extension revision 1
    VK_AMD_draw_indirect_count                  : extension revision 2
    VK_AMD_gcn_shader                           : extension revision 1
    VK_AMD_gpa_interface                        : extension revision 1
    VK_AMD_gpu_shader_half_float                : extension revision 2
    VK_AMD_gpu_shader_int16                     : extension revision 2
    VK_AMD_memory_overallocation_behavior       : extension revision 1
    VK_AMD_mixed_attachment_samples             : extension revision 1
    VK_AMD_shader_ballot                        : extension revision 1
    VK_AMD_shader_core_properties               : extension revision 2
    VK_AMD_shader_core_properties2              : extension revision 1
    VK_AMD_shader_explicit_vertex_parameter     : extension revision 1
    VK_AMD_shader_fragment_mask                 : extension revision 1
    VK_AMD_shader_image_load_store_lod          : extension revision 1
    VK_AMD_shader_info                          : extension revision 1
    VK_AMD_shader_trinary_minmax                : extension revision 1
    VK_AMD_texture_gather_bias_lod              : extension revision 1
    VK_EXT_4444_formats                         : extension revision 1
    VK_EXT_border_color_swizzle                 : extension revision 1
    VK_EXT_calibrated_timestamps                : extension revision 2
    VK_EXT_color_write_enable                   : extension revision 1
    VK_EXT_conditional_rendering                : extension revision 2
    VK_EXT_conservative_rasterization           : extension revision 1
    VK_EXT_custom_border_color                  : extension revision 12
    VK_EXT_depth_clip_control                   : extension revision 1
    VK_EXT_depth_clip_enable                    : extension revision 1
    VK_EXT_depth_range_unrestricted             : extension revision 1
    VK_EXT_descriptor_indexing                  : extension revision 2
    VK_EXT_extended_dynamic_state               : extension revision 1
    VK_EXT_extended_dynamic_state2              : extension revision 1
    VK_EXT_external_memory_dma_buf              : extension revision 1
    VK_EXT_external_memory_host                 : extension revision 1
    VK_EXT_global_priority                      : extension revision 2
    VK_EXT_global_priority_query                : extension revision 1
    VK_EXT_hdr_metadata                         : extension revision 2
    VK_EXT_host_query_reset                     : extension revision 1
    VK_EXT_image_robustness                     : extension revision 1
    VK_EXT_image_view_min_lod                   : extension revision 1
    VK_EXT_index_type_uint8                     : extension revision 1
    VK_EXT_inline_uniform_block                 : extension revision 1
    VK_EXT_line_rasterization                   : extension revision 1
    VK_EXT_load_store_op_none                   : extension revision 1
    VK_EXT_memory_budget                        : extension revision 1
    VK_EXT_memory_priority                      : extension revision 1
    VK_EXT_pageable_device_local_memory         : extension revision 1
    VK_EXT_pci_bus_info                         : extension revision 2
    VK_EXT_pipeline_creation_cache_control      : extension revision 3
    VK_EXT_pipeline_creation_feedback           : extension revision 1
    VK_EXT_post_depth_coverage                  : extension revision 1
    VK_EXT_primitive_topology_list_restart      : extension revision 1
    VK_EXT_private_data                         : extension revision 1
    VK_EXT_provoking_vertex                     : extension revision 1
    VK_EXT_queue_family_foreign                 : extension revision 1
    VK_EXT_robustness2                          : extension revision 1
    VK_EXT_sample_locations                     : extension revision 1
    VK_EXT_sampler_filter_minmax                : extension revision 2
    VK_EXT_scalar_block_layout                  : extension revision 1
    VK_EXT_separate_stencil_usage               : extension revision 1
    VK_EXT_shader_atomic_float                  : extension revision 1
    VK_EXT_shader_atomic_float2                 : extension revision 1
    VK_EXT_shader_demote_to_helper_invocation   : extension revision 1
    VK_EXT_shader_image_atomic_int64            : extension revision 1
    VK_EXT_shader_stencil_export                : extension revision 1
    VK_EXT_shader_subgroup_ballot               : extension revision 1
    VK_EXT_shader_subgroup_vote                 : extension revision 1
    VK_EXT_shader_viewport_index_layer          : extension revision 1
    VK_EXT_subgroup_size_control                : extension revision 2
    VK_EXT_texel_buffer_alignment               : extension revision 1
    VK_EXT_tooling_info                         : extension revision 1
    VK_EXT_transform_feedback                   : extension revision 1
    VK_EXT_vertex_attribute_divisor             : extension revision 3
    VK_EXT_ycbcr_image_arrays                   : extension revision 1
    VK_GOOGLE_decorate_string                   : extension revision 1
    VK_GOOGLE_hlsl_functionality1               : extension revision 1
    VK_GOOGLE_user_type                         : extension revision 1
    VK_KHR_16bit_storage                        : extension revision 1
    VK_KHR_8bit_storage                         : extension revision 1
    VK_KHR_bind_memory2                         : extension revision 1
    VK_KHR_buffer_device_address                : extension revision 1
    VK_KHR_copy_commands2                       : extension revision 1
    VK_KHR_create_renderpass2                   : extension revision 1
    VK_KHR_dedicated_allocation                 : extension revision 3
    VK_KHR_depth_stencil_resolve                : extension revision 1
    VK_KHR_descriptor_update_template           : extension revision 1
    VK_KHR_device_group                         : extension revision 4
    VK_KHR_draw_indirect_count                  : extension revision 1
    VK_KHR_driver_properties                    : extension revision 1
    VK_KHR_dynamic_rendering                    : extension revision 1
    VK_KHR_external_fence                       : extension revision 1
    VK_KHR_external_fence_fd                    : extension revision 1
    VK_KHR_external_memory                      : extension revision 1
    VK_KHR_external_memory_fd                   : extension revision 1
    VK_KHR_external_semaphore                   : extension revision 1
    VK_KHR_external_semaphore_fd                : extension revision 1
    VK_KHR_format_feature_flags2                : extension revision 1
    VK_KHR_fragment_shading_rate                : extension revision 2
    VK_KHR_get_memory_requirements2             : extension revision 1
    VK_KHR_image_format_list                    : extension revision 1
    VK_KHR_imageless_framebuffer                : extension revision 1
    VK_KHR_maintenance1                         : extension revision 2
    VK_KHR_maintenance2                         : extension revision 1
    VK_KHR_maintenance3                         : extension revision 1
    VK_KHR_maintenance4                         : extension revision 2
    VK_KHR_multiview                            : extension revision 1
    VK_KHR_pipeline_executable_properties       : extension revision 1
    VK_KHR_relaxed_block_layout                 : extension revision 1
    VK_KHR_sampler_mirror_clamp_to_edge         : extension revision 3
    VK_KHR_sampler_ycbcr_conversion             : extension revision 14
    VK_KHR_separate_depth_stencil_layouts       : extension revision 1
    VK_KHR_shader_atomic_int64                  : extension revision 1
    VK_KHR_shader_clock                         : extension revision 1
    VK_KHR_shader_draw_parameters               : extension revision 1
    VK_KHR_shader_float16_int8                  : extension revision 1
    VK_KHR_shader_float_controls                : extension revision 4
    VK_KHR_shader_integer_dot_product           : extension revision 1
    VK_KHR_shader_non_semantic_info             : extension revision 1
    VK_KHR_shader_subgroup_extended_types       : extension revision 1
    VK_KHR_shader_subgroup_uniform_control_flow : extension revision 1
    VK_KHR_shader_terminate_invocation          : extension revision 1
    VK_KHR_spirv_1_4                            : extension revision 1
    VK_KHR_storage_buffer_storage_class         : extension revision 1
    VK_KHR_swapchain                            : extension revision 70
    VK_KHR_swapchain_mutable_format             : extension revision 1
    VK_KHR_synchronization2                     : extension revision 1
    VK_KHR_timeline_semaphore                   : extension revision 2
    VK_KHR_uniform_buffer_standard_layout       : extension revision 1
    VK_KHR_variable_pointers                    : extension revision 1
    VK_KHR_vulkan_memory_model                  : extension revision 3
    VK_KHR_zero_initialize_workgroup_memory     : extension revision 1

VkQueueFamilyProperties:
========================
    queueProperties[0]:
    -------------------
        minImageTransferGranularity = (1,1,1)
        queueCount                  = 1
        queueFlags                  = QUEUE_GRAPHICS | QUEUE_COMPUTE | QUEUE_TRANSFER | QUEUE_SPARSE_BINDING
        timestampValidBits          = 64
        present support             = true
        VkQueueFamilyGlobalPriorityPropertiesKHR:
        -----------------------------------------
            priorityCount  = 4
            priorities: count = 16
                128
                256
                512
                1024
                0
                0
                0
                0
                0
                0
                0
                0
                0
                0
                0
                0

    queueProperties[1]:
    -------------------
        minImageTransferGranularity = (1,1,1)
        queueCount                  = 4
        queueFlags                  = QUEUE_COMPUTE | QUEUE_TRANSFER | QUEUE_SPARSE_BINDING
        timestampValidBits          = 64
        present support             = true
        VkQueueFamilyGlobalPriorityPropertiesKHR:
        -----------------------------------------
            priorityCount  = 4
            priorities: count = 16
                128
                256
                512
                1024
                0
                0
                0
                0
                0
                0
                0
                0
                0
                0
                0
                0

    queueProperties[2]:
    -------------------
        minImageTransferGranularity = (16,16,8)
        queueCount                  = 1
        queueFlags                  = QUEUE_TRANSFER | QUEUE_SPARSE_BINDING
        timestampValidBits          = 64
        present support             = true
        VkQueueFamilyGlobalPriorityPropertiesKHR:
        -----------------------------------------
            priorityCount  = 1
            priorities: count = 16
                256
                0
                0
                0
                0
                0
                0
                0
                0
                0
                0
                0
                0
                0
                0
                0

VkPhysicalDeviceMemoryProperties:
=================================
memoryHeaps: count = 3
    memoryHeaps[0]:
        size   = 4009754624 (0xef000000) (3.73 GiB)
        budget = 3809266944 (0xe30ccd00) (3.55 GiB)
        usage  = 0 (0x00000000) (0.00 B)
        flags: count = 2
            MEMORY_HEAP_DEVICE_LOCAL_BIT
            MEMORY_HEAP_MULTI_INSTANCE_BIT
    memoryHeaps[1]:
        size   = 4278190080 (0xff000000) (3.98 GiB)
        budget = 4064280576 (0xf2400000) (3.79 GiB)
        usage  = 0 (0x00000000) (0.00 B)
        flags:
            None
    memoryHeaps[2]:
        size   = 268435456 (0x10000000) (256.00 MiB)
        budget = 255013680 (0x0f333330) (243.20 MiB)
        usage  = 0 (0x00000000) (0.00 B)
        flags: count = 2
            MEMORY_HEAP_DEVICE_LOCAL_BIT
            MEMORY_HEAP_MULTI_INSTANCE_BIT
memoryTypes: count = 8
    memoryTypes[0]:
        heapIndex     = 0
        propertyFlags = 0x0001: count = 1
            MEMORY_PROPERTY_DEVICE_LOCAL_BIT
        usable for:
            IMAGE_TILING_OPTIMAL:
                color images
                FORMAT_D16_UNORM
                FORMAT_D32_SFLOAT
                FORMAT_S8_UINT
                FORMAT_D16_UNORM_S8_UINT
                FORMAT_D32_SFLOAT_S8_UINT
            IMAGE_TILING_LINEAR:
                color images
    memoryTypes[1]:
        heapIndex     = 1
        propertyFlags = 0x0006: count = 2
            MEMORY_PROPERTY_HOST_VISIBLE_BIT
            MEMORY_PROPERTY_HOST_COHERENT_BIT
        usable for:
            IMAGE_TILING_OPTIMAL:
                color images
                FORMAT_D16_UNORM
                FORMAT_D32_SFLOAT
                FORMAT_S8_UINT
                FORMAT_D16_UNORM_S8_UINT
                FORMAT_D32_SFLOAT_S8_UINT
            IMAGE_TILING_LINEAR:
                color images
    memoryTypes[2]:
        heapIndex     = 2
        propertyFlags = 0x0007: count = 3
            MEMORY_PROPERTY_DEVICE_LOCAL_BIT
            MEMORY_PROPERTY_HOST_VISIBLE_BIT
            MEMORY_PROPERTY_HOST_COHERENT_BIT
        usable for:
            IMAGE_TILING_OPTIMAL:
                color images
                FORMAT_D16_UNORM
                FORMAT_D32_SFLOAT
                FORMAT_S8_UINT
                FORMAT_D16_UNORM_S8_UINT
                FORMAT_D32_SFLOAT_S8_UINT
            IMAGE_TILING_LINEAR:
                color images
    memoryTypes[3]:
        heapIndex     = 1
        propertyFlags = 0x000e: count = 3
            MEMORY_PROPERTY_HOST_VISIBLE_BIT
            MEMORY_PROPERTY_HOST_COHERENT_BIT
            MEMORY_PROPERTY_HOST_CACHED_BIT
        usable for:
            IMAGE_TILING_OPTIMAL:
                color images
                FORMAT_D16_UNORM
                FORMAT_D32_SFLOAT
                FORMAT_S8_UINT
                FORMAT_D16_UNORM_S8_UINT
                FORMAT_D32_SFLOAT_S8_UINT
            IMAGE_TILING_LINEAR:
                color images
    memoryTypes[4]:
        heapIndex     = 0
        propertyFlags = 0x00c1: count = 3
            MEMORY_PROPERTY_DEVICE_LOCAL_BIT
            MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD
            MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD
        usable for:
            IMAGE_TILING_OPTIMAL:
                None
            IMAGE_TILING_LINEAR:
                None
    memoryTypes[5]:
        heapIndex     = 1
        propertyFlags = 0x00c6: count = 4
            MEMORY_PROPERTY_HOST_VISIBLE_BIT
            MEMORY_PROPERTY_HOST_COHERENT_BIT
            MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD
            MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD
        usable for:
            IMAGE_TILING_OPTIMAL:
                None
            IMAGE_TILING_LINEAR:
                None
    memoryTypes[6]:
        heapIndex     = 2
        propertyFlags = 0x00c7: count = 5
            MEMORY_PROPERTY_DEVICE_LOCAL_BIT
            MEMORY_PROPERTY_HOST_VISIBLE_BIT
            MEMORY_PROPERTY_HOST_COHERENT_BIT
            MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD
            MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD
        usable for:
            IMAGE_TILING_OPTIMAL:
                None
            IMAGE_TILING_LINEAR:
                None
    memoryTypes[7]:
        heapIndex     = 1
        propertyFlags = 0x00ce: count = 5
            MEMORY_PROPERTY_HOST_VISIBLE_BIT
            MEMORY_PROPERTY_HOST_COHERENT_BIT
            MEMORY_PROPERTY_HOST_CACHED_BIT
            MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD
            MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD
        usable for:
            IMAGE_TILING_OPTIMAL:
                None
            IMAGE_TILING_LINEAR:
                None

VkPhysicalDeviceFeatures:
=========================
    robustBufferAccess                      = true
    fullDrawIndexUint32                     = true
    imageCubeArray                          = true
    independentBlend                        = true
    geometryShader                          = true
    tessellationShader                      = true
    sampleRateShading                       = true
    dualSrcBlend                            = true
    logicOp                                 = true
    multiDrawIndirect                       = true
    drawIndirectFirstInstance               = true
    depthClamp                              = true
    depthBiasClamp                          = true
    fillModeNonSolid                        = true
    depthBounds                             = true
    wideLines                               = true
    largePoints                             = true
    alphaToOne                              = false
    multiViewport                           = true
    samplerAnisotropy                       = true
    textureCompressionETC2                  = false
    textureCompressionASTC_LDR              = false
    textureCompressionBC                    = true
    occlusionQueryPrecise                   = true
    pipelineStatisticsQuery                 = true
    vertexPipelineStoresAndAtomics          = true
    fragmentStoresAndAtomics                = true
    shaderTessellationAndGeometryPointSize  = true
    shaderImageGatherExtended               = true
    shaderStorageImageExtendedFormats       = true
    shaderStorageImageMultisample           = true
    shaderStorageImageReadWithoutFormat     = true
    shaderStorageImageWriteWithoutFormat    = true
    shaderUniformBufferArrayDynamicIndexing = true
    shaderSampledImageArrayDynamicIndexing  = true
    shaderStorageBufferArrayDynamicIndexing = true
    shaderStorageImageArrayDynamicIndexing  = true
    shaderClipDistance                      = true
    shaderCullDistance                      = true
    shaderFloat64                           = true
    shaderInt64                             = true
    shaderInt16                             = true
    shaderResourceResidency                 = true
    shaderResourceMinLod                    = true
    sparseBinding                           = true
    sparseResidencyBuffer                   = true
    sparseResidencyImage2D                  = true
    sparseResidencyImage3D                  = true
    sparseResidency2Samples                 = false
    sparseResidency4Samples                 = false
    sparseResidency8Samples                 = false
    sparseResidency16Samples                = false
    sparseResidencyAliased                  = true
    variableMultisampleRate                 = true
    inheritedQueries                        = true

VkPhysicalDevice16BitStorageFeatures:
-------------------------------------
    storageBuffer16BitAccess           = true
    uniformAndStorageBuffer16BitAccess = true
    storagePushConstant16              = false
    storageInputOutput16               = true

VkPhysicalDevice4444FormatsFeaturesEXT:
---------------------------------------
    formatA4R4G4B4 = true
    formatA4B4G4R4 = true

VkPhysicalDevice8BitStorageFeatures:
------------------------------------
    storageBuffer8BitAccess           = true
    uniformAndStorageBuffer8BitAccess = true
    storagePushConstant8              = false

VkPhysicalDeviceBorderColorSwizzleFeaturesEXT:
----------------------------------------------
    borderColorSwizzle          = true
    borderColorSwizzleFromImage = true

VkPhysicalDeviceBufferDeviceAddressFeatures:
--------------------------------------------
    bufferDeviceAddress              = true
    bufferDeviceAddressCaptureReplay = true
    bufferDeviceAddressMultiDevice   = false

VkPhysicalDeviceColorWriteEnableFeaturesEXT:
--------------------------------------------
    colorWriteEnable = true

VkPhysicalDeviceConditionalRenderingFeaturesEXT:
------------------------------------------------
    conditionalRendering          = true
    inheritedConditionalRendering = true

VkPhysicalDeviceCustomBorderColorFeaturesEXT:
---------------------------------------------
    customBorderColors             = true
    customBorderColorWithoutFormat = true

VkPhysicalDeviceDepthClipControlFeaturesEXT:
--------------------------------------------
    depthClipControl = true

VkPhysicalDeviceDepthClipEnableFeaturesEXT:
-------------------------------------------
    depthClipEnable = true

VkPhysicalDeviceDescriptorIndexingFeatures:
-------------------------------------------
    shaderInputAttachmentArrayDynamicIndexing          = false
    shaderUniformTexelBufferArrayDynamicIndexing       = true
    shaderStorageTexelBufferArrayDynamicIndexing       = true
    shaderUniformBufferArrayNonUniformIndexing         = true
    shaderSampledImageArrayNonUniformIndexing          = true
    shaderStorageBufferArrayNonUniformIndexing         = true
    shaderStorageImageArrayNonUniformIndexing          = true
    shaderInputAttachmentArrayNonUniformIndexing       = false
    shaderUniformTexelBufferArrayNonUniformIndexing    = true
    shaderStorageTexelBufferArrayNonUniformIndexing    = true
    descriptorBindingUniformBufferUpdateAfterBind      = true
    descriptorBindingSampledImageUpdateAfterBind       = true
    descriptorBindingStorageImageUpdateAfterBind       = true
    descriptorBindingStorageBufferUpdateAfterBind      = true
    descriptorBindingUniformTexelBufferUpdateAfterBind = true
    descriptorBindingStorageTexelBufferUpdateAfterBind = true
    descriptorBindingUpdateUnusedWhilePending          = true
    descriptorBindingPartiallyBound                    = true
    descriptorBindingVariableDescriptorCount           = true
    runtimeDescriptorArray                             = true

VkPhysicalDeviceDynamicRenderingFeatures:
-----------------------------------------
    dynamicRendering = true

VkPhysicalDeviceExtendedDynamicState2FeaturesEXT:
-------------------------------------------------
    extendedDynamicState2                   = true
    extendedDynamicState2LogicOp            = false
    extendedDynamicState2PatchControlPoints = false

VkPhysicalDeviceExtendedDynamicStateFeaturesEXT:
------------------------------------------------
    extendedDynamicState = true

VkPhysicalDeviceFragmentShadingRateFeaturesKHR:
-----------------------------------------------
    pipelineFragmentShadingRate   = true
    primitiveFragmentShadingRate  = true
    attachmentFragmentShadingRate = true

VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR:
-----------------------------------------------
    globalPriorityQuery = true

VkPhysicalDeviceHostQueryResetFeatures:
---------------------------------------
    hostQueryReset = true

VkPhysicalDeviceImageRobustnessFeatures:
----------------------------------------
    robustImageAccess = true

VkPhysicalDeviceImageViewMinLodFeaturesEXT:
-------------------------------------------
    minLod = true

VkPhysicalDeviceImagelessFramebufferFeatures:
---------------------------------------------
    imagelessFramebuffer = true

VkPhysicalDeviceIndexTypeUint8FeaturesEXT:
------------------------------------------
    indexTypeUint8 = true

VkPhysicalDeviceInlineUniformBlockFeatures:
-------------------------------------------
    inlineUniformBlock                                 = true
    descriptorBindingInlineUniformBlockUpdateAfterBind = true

VkPhysicalDeviceLineRasterizationFeaturesEXT:
---------------------------------------------
    rectangularLines         = false
    bresenhamLines           = true
    smoothLines              = false
    stippledRectangularLines = false
    stippledBresenhamLines   = true
    stippledSmoothLines      = false

VkPhysicalDeviceMaintenance4Features:
-------------------------------------
    maintenance4 = true

VkPhysicalDeviceMemoryPriorityFeaturesEXT:
------------------------------------------
    memoryPriority = true

VkPhysicalDeviceMultiviewFeatures:
----------------------------------
    multiview                   = true
    multiviewGeometryShader     = false
    multiviewTessellationShader = true

VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT:
-----------------------------------------------------
    pageableDeviceLocalMemory = true

VkPhysicalDevicePipelineCreationCacheControlFeatures:
-----------------------------------------------------
    pipelineCreationCacheControl = true

VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR:
--------------------------------------------------------
    pipelineExecutableInfo = true

VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT:
--------------------------------------------------------
    primitiveTopologyListRestart      = true
    primitiveTopologyPatchListRestart = false

VkPhysicalDevicePrivateDataFeatures:
------------------------------------
    privateData = true

VkPhysicalDeviceProtectedMemoryFeatures:
----------------------------------------
    protectedMemory = false

VkPhysicalDeviceProvokingVertexFeaturesEXT:
-------------------------------------------
    provokingVertexLast                       = true
    transformFeedbackPreservesProvokingVertex = true

VkPhysicalDeviceRobustness2FeaturesEXT:
---------------------------------------
    robustBufferAccess2 = true
    robustImageAccess2  = true
    nullDescriptor      = true

VkPhysicalDeviceSamplerYcbcrConversionFeatures:
-----------------------------------------------
    samplerYcbcrConversion = true

VkPhysicalDeviceScalarBlockLayoutFeatures:
------------------------------------------
    scalarBlockLayout = true

VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures:
----------------------------------------------------
    separateDepthStencilLayouts = true

VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT:
----------------------------------------------
    shaderBufferFloat16Atomics      = false
    shaderBufferFloat16AtomicAdd    = false
    shaderBufferFloat16AtomicMinMax = false
    shaderBufferFloat32AtomicMinMax = true
    shaderBufferFloat64AtomicMinMax = true
    shaderSharedFloat16Atomics      = false
    shaderSharedFloat16AtomicAdd    = false
    shaderSharedFloat16AtomicMinMax = false
    shaderSharedFloat32AtomicMinMax = true
    shaderSharedFloat64AtomicMinMax = true
    shaderImageFloat32AtomicMinMax  = true
    sparseImageFloat32AtomicMinMax  = true

VkPhysicalDeviceShaderAtomicFloatFeaturesEXT:
---------------------------------------------
    shaderBufferFloat32Atomics   = true
    shaderBufferFloat32AtomicAdd = false
    shaderBufferFloat64Atomics   = true
    shaderBufferFloat64AtomicAdd = false
    shaderSharedFloat32Atomics   = true
    shaderSharedFloat32AtomicAdd = false
    shaderSharedFloat64Atomics   = true
    shaderSharedFloat64AtomicAdd = false
    shaderImageFloat32Atomics    = true
    shaderImageFloat32AtomicAdd  = false
    sparseImageFloat32Atomics    = true
    sparseImageFloat32AtomicAdd  = false

VkPhysicalDeviceShaderAtomicInt64Features:
------------------------------------------
    shaderBufferInt64Atomics = true
    shaderSharedInt64Atomics = true

VkPhysicalDeviceShaderClockFeaturesKHR:
---------------------------------------
    shaderSubgroupClock = true
    shaderDeviceClock   = true

VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures:
-------------------------------------------------------
    shaderDemoteToHelperInvocation = true

VkPhysicalDeviceShaderDrawParametersFeatures:
---------------------------------------------
    shaderDrawParameters = true

VkPhysicalDeviceShaderFloat16Int8Features:
------------------------------------------
    shaderFloat16 = true
    shaderInt8    = true

VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT:
--------------------------------------------------
    shaderImageInt64Atomics = true
    sparseImageInt64Atomics = true

VkPhysicalDeviceShaderIntegerDotProductFeatures:
------------------------------------------------
    shaderIntegerDotProduct = true

VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures:
----------------------------------------------------
    shaderSubgroupExtendedTypes = true

VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR:
------------------------------------------------------------
    shaderSubgroupUniformControlFlow = true

VkPhysicalDeviceShaderTerminateInvocationFeatures:
--------------------------------------------------
    shaderTerminateInvocation = true

VkPhysicalDeviceSubgroupSizeControlFeatures:
--------------------------------------------
    subgroupSizeControl  = true
    computeFullSubgroups = true

VkPhysicalDeviceSynchronization2Features:
-----------------------------------------
    synchronization2 = true

VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT:
------------------------------------------------
    texelBufferAlignment = true

VkPhysicalDeviceTextureCompressionASTCHDRFeatures:
--------------------------------------------------
    textureCompressionASTC_HDR = false

VkPhysicalDeviceTimelineSemaphoreFeatures:
------------------------------------------
    timelineSemaphore = true

VkPhysicalDeviceTransformFeedbackFeaturesEXT:
---------------------------------------------
    transformFeedback = true
    geometryStreams   = true

VkPhysicalDeviceUniformBufferStandardLayoutFeatures:
----------------------------------------------------
    uniformBufferStandardLayout = true

VkPhysicalDeviceVariablePointersFeatures:
-----------------------------------------
    variablePointersStorageBuffer = true
    variablePointers              = true

VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT:
--------------------------------------------------
    vertexAttributeInstanceRateDivisor     = true
    vertexAttributeInstanceRateZeroDivisor = true

VkPhysicalDeviceVulkan11Features:
---------------------------------
    storageBuffer16BitAccess           = true
    uniformAndStorageBuffer16BitAccess = true
    storagePushConstant16              = false
    storageInputOutput16               = true
    multiview                          = true
    multiviewGeometryShader            = false
    multiviewTessellationShader        = true
    variablePointersStorageBuffer      = true
    variablePointers                   = true
    protectedMemory                    = false
    samplerYcbcrConversion             = true
    shaderDrawParameters               = true

VkPhysicalDeviceVulkan12Features:
---------------------------------
    samplerMirrorClampToEdge                           = true
    drawIndirectCount                                  = true
    storageBuffer8BitAccess                            = true
    uniformAndStorageBuffer8BitAccess                  = true
    storagePushConstant8                               = false
    shaderBufferInt64Atomics                           = true
    shaderSharedInt64Atomics                           = true
    shaderFloat16                                      = true
    shaderInt8                                         = true
    descriptorIndexing                                 = true
    shaderInputAttachmentArrayDynamicIndexing          = false
    shaderUniformTexelBufferArrayDynamicIndexing       = true
    shaderStorageTexelBufferArrayDynamicIndexing       = true
    shaderUniformBufferArrayNonUniformIndexing         = true
    shaderSampledImageArrayNonUniformIndexing          = true
    shaderStorageBufferArrayNonUniformIndexing         = true
    shaderStorageImageArrayNonUniformIndexing          = true
    shaderInputAttachmentArrayNonUniformIndexing       = false
    shaderUniformTexelBufferArrayNonUniformIndexing    = true
    shaderStorageTexelBufferArrayNonUniformIndexing    = true
    descriptorBindingUniformBufferUpdateAfterBind      = true
    descriptorBindingSampledImageUpdateAfterBind       = true
    descriptorBindingStorageImageUpdateAfterBind       = true
    descriptorBindingStorageBufferUpdateAfterBind      = true
    descriptorBindingUniformTexelBufferUpdateAfterBind = true
    descriptorBindingStorageTexelBufferUpdateAfterBind = true
    descriptorBindingUpdateUnusedWhilePending          = true
    descriptorBindingPartiallyBound                    = true
    descriptorBindingVariableDescriptorCount           = true
    runtimeDescriptorArray                             = true
    samplerFilterMinmax                                = true
    scalarBlockLayout                                  = true
    imagelessFramebuffer                               = true
    uniformBufferStandardLayout                        = true
    shaderSubgroupExtendedTypes                        = true
    separateDepthStencilLayouts                        = true
    hostQueryReset                                     = true
    timelineSemaphore                                  = true
    bufferDeviceAddress                                = true
    bufferDeviceAddressCaptureReplay                   = true
    bufferDeviceAddressMultiDevice                     = false
    vulkanMemoryModel                                  = true
    vulkanMemoryModelDeviceScope                       = true
    vulkanMemoryModelAvailabilityVisibilityChains      = false
    shaderOutputViewportIndex                          = true
    shaderOutputLayer                                  = true
    subgroupBroadcastDynamicId                         = true

VkPhysicalDeviceVulkan13Features:
---------------------------------
    robustImageAccess                                  = true
    inlineUniformBlock                                 = true
    descriptorBindingInlineUniformBlockUpdateAfterBind = true
    pipelineCreationCacheControl                       = true
    privateData                                        = true
    shaderDemoteToHelperInvocation                     = true
    shaderTerminateInvocation                          = true
    subgroupSizeControl                                = true
    computeFullSubgroups                               = true
    synchronization2                                   = true
    textureCompressionASTC_HDR                         = false
    shaderZeroInitializeWorkgroupMemory                = true
    dynamicRendering                                   = true
    shaderIntegerDotProduct                            = true
    maintenance4                                       = true

VkPhysicalDeviceVulkanMemoryModelFeatures:
------------------------------------------
    vulkanMemoryModel                             = true
    vulkanMemoryModelDeviceScope                  = true
    vulkanMemoryModelAvailabilityVisibilityChains = false

VkPhysicalDeviceYcbcrImageArraysFeaturesEXT:
--------------------------------------------
    ycbcrImageArrays = true

VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures:
------------------------------------------------------
    shaderZeroInitializeWorkgroupMemory = true
axsaucedo commented 2 years ago

Thank you for reporting @TeaCult - could you provide a link to the documentation page with the typo? I would suggest trying out the python unit tests under python/test https://github.com/KomputeProject/kompute/tree/master/python/test

You would be able to run all the tests with make test_python or by directly running:

python3 -m pytest -s --log-cli-level=DEBUG -v python/test/

I don't think I currently understand what is the issue you are finding. Is the issue that the GPU provided is "unknown", or is the issue that the tensor output is not providing the desired result? The tests should confirm whether this indeed is working as expected. If there are issues it could be related to the version of Vulkan, but it may be best for you to try beforehand.

TeaCult commented 2 years ago

Thank you for your reply. There in first example maybe a typo : https://kompute.cc/overview/python-examples.html

TeaCult commented 2 years ago

13 passes 2 fails : ========================= 2 failed, 13 passed in 1.78s =========================

    def test_pushconsts():

        spirv = compile_source("""
              #version 450
              layout(push_constant) uniform PushConstants {
                float x;
                float y;
                float z;
              } pcs;
              layout (local_size_x = 1) in;
              layout(set = 0, binding = 0) buffer a { float pa[]; };
              void main() {
                  pa[0] += pcs.x;
                  pa[1] += pcs.y;
                  pa[2] += pcs.z;
              }
        """)

        mgr = kp.Manager()

        tensor = mgr.tensor([0, 0, 0])

        algo = mgr.algorithm([tensor], spirv, (1, 1, 1), [], [0.1, 0.2, 0.3])

        (mgr.sequence()
            .record(kp.OpTensorSyncDevice([tensor]))
            .record(kp.OpAlgoDispatch(algo))
            .record(kp.OpAlgoDispatch(algo, [0.3, 0.2, 0.1]))
            .record(kp.OpAlgoDispatch(algo, [0.3, 0.2, 0.1]))
            .record(kp.OpTensorSyncLocal([tensor]))
            .eval())

>       assert np.allclose(tensor.data(), np.array([0.7, 0.6, 0.5], dtype=np.float32))
E       AssertionError: assert False
E        +  where False = <function allclose at 0x7f2688517760>(array([0.1, 0.2, 0.3], dtype=float32), array([0.7, 0.6, 0.5], dtype=float32))
E        +    where <function allclose at 0x7f2688517760> = np.allclose
E        +    and   array([0.1, 0.2, 0.3], dtype=float32) = <bound method PyCapsule.data of <kp.Tensor object at 0x7f26764b7df0>>()
E        +      where <bound method PyCapsule.data of <kp.Tensor object at 0x7f26764b7df0>> = <kp.Tensor object at 0x7f26764b7df0>.data
E        +    and   array([0.7, 0.6, 0.5], dtype=float32) = <built-in function array>([0.7, 0.6, 0.5], dtype=<class 'numpy.float32'>)
E        +      where <built-in function array> = np.array
E        +      and   <class 'numpy.float32'> = np.float32

python/test/test_kompute.py:204: AssertionError

/////////////////////////////

____________________________ test_pushconsts_int ______________________________

    def test_pushconsts_int():

        spirv = compile_source("""
              #version 450
              layout(push_constant) uniform PushConstants {
                int x;
                int  y;
                int  z;
              } pcs;
              layout (local_size_x = 1) in;
              layout(set = 0, binding = 0) buffer a { int  pa[]; };
              void main() {
                  pa[0] += pcs.x;
                  pa[1] += pcs.y;
                  pa[2] += pcs.z;
              }
        """)

        mgr = kp.Manager()

        tensor = mgr.tensor_t(np.array([0, 0, 0], dtype=np.int32))

        spec_consts = np.array([], dtype=np.int32)
        push_consts = np.array([-1, -1, -1], dtype=np.int32)

        algo = mgr.algorithm([tensor], spirv, (1, 1, 1), spec_consts, push_consts)

        (mgr.sequence()
            .record(kp.OpTensorSyncDevice([tensor]))
            .record(kp.OpAlgoDispatch(algo))
            .record(kp.OpAlgoDispatch(algo, np.array([-1, -1, -1], dtype=np.int32)))
            .record(kp.OpAlgoDispatch(algo, np.array([-1, -1, -1], dtype=np.int32)))
            .record(kp.OpTensorSyncLocal([tensor]))
            .eval())

>       assert np.all(tensor.data() == np.array([-3, -3, -3], dtype=np.int32))
E       assert False
E        +  where False = <function all at 0x7f2688509fc0>(array([-1, -1..., dtype=int32) == array([-3, -3..., dtype=int32)
E        +    where <function all at 0x7f2688509fc0> = np.all
E           +array([-1, -1, -1], dtype=int32)
E           -array([-3, -3, -3], dtype=int32)
E           Full diff:
E           - array([-3, -3, -3], dtype=int32)
E           ?         ^   ^   ^
E           + array([-1, -1, -1], dtype=int32)
E           ?         ^   ^   ^)

python/test/test_kompute.py:242: AssertionError
------------------------------ Captured log call -------------------------------
DEBUG    kp:test_kompute.py:225 Kompute Manager creating instance
axsaucedo commented 2 years ago

Ok thank you for sharing this. It seems that it indeed validates that at least you have the base core functionality working correctly.

I'm not clear why the two tests are failing - it may just be that your GPU doesn't support specific features, but at least it seems that the baseline functionality will work for you.

axsaucedo commented 2 years ago

Closing as it seems it indeed is working correctly for most features given the python tests pass