Lines Matching refs:subgroups

158 	return subgroups::check(datas, width, 0xFFFFFF);
169 return subgroups::checkComputeOrMesh(datas, numWorkgroups, localSize, 0xFFFFFF);
187 + subgroups::getAdditionalExtensionForFormat(caseDef.format);
197 string fmt = subgroups::getFormatNameForGLSL(caseDef.format);
287 subgroups::initStdFrameBufferPrograms(programCollection, buildOptions, caseDef.shaderStage, caseDef.format, pointSizeSupport, extHeader, testSrc, "");
299 subgroups::initStdPrograms(programCollection, buildOptions, caseDef.shaderStage, caseDef.format, pointSizeSupport, extHeader, testSrc, "");
304 if (!subgroups::isSubgroupSupported(context))
307 if (!subgroups::isSubgroupFeatureSupportedForDevice(context, VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV))
310 if (!subgroups::isFormatSupportedForDevice(context, caseDef.format))
315 if (!subgroups::is16BitUBOStorageSupported(context))
323 if (!subgroups::is8BitUBOStorageSupported(context))
340 TCU_THROW(NotSupportedError, "Device does not support full subgroups in compute shaders");
346 *caseDef.geometryPointSizeSupported = subgroups::isTessellationAndGeometryPointSizeSupported(context);
365 subgroups::supportedCheckShader(context, caseDef.shaderStage);
370 const subgroups::SSBOData inputData
372 subgroups::SSBOData::InitializeNonZero, // InputDataInitializeType initializeType;
373 subgroups::SSBOData::LayoutStd140, // InputDataLayoutType layout;
375 subgroups::maxSupportedSubgroupSize(), // vk::VkDeviceSize numElements;
376 subgroups::SSBOData::BindingUBO, // BindingType bindingType;
381 case VK_SHADER_STAGE_VERTEX_BIT: return subgroups::makeVertexFrameBufferTest(context, VK_FORMAT_R32_UINT, &inputData, 1, DE_NULL, checkVertexPipelineStages);
382 case VK_SHADER_STAGE_GEOMETRY_BIT: return subgroups::makeGeometryFrameBufferTest(context, VK_FORMAT_R32_UINT, &inputData, 1, DE_NULL, checkVertexPipelineStages);
383 case VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT: return subgroups::makeTessellationEvaluationFrameBufferTest(context, VK_FORMAT_R32_UINT, &inputData, 1, DE_NULL, checkVertexPipelineStages, caseDef.shaderStage);
384 case VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT: return subgroups::makeTessellationEvaluationFrameBufferTest(context, VK_FORMAT_R32_UINT, &inputData, 1, DE_NULL, checkVertexPipelineStages, caseDef.shaderStage);
399 const subgroups::SSBOData inputData =
401 subgroups::SSBOData::InitializeNonZero, // InputDataInitializeType initializeType;
402 subgroups::SSBOData::LayoutStd430, // InputDataLayoutType layout;
404 subgroups::maxSupportedSubgroupSize(), // vk::VkDeviceSize numElements;
410 return subgroups::makeComputeTest(context, VK_FORMAT_R32_UINT, &inputData, 1, DE_NULL, checkComputeOrMesh);
412 return subgroups::makeMeshTest(context, VK_FORMAT_R32_UINT, &inputData, 1, DE_NULL, checkComputeOrMesh);
424 result = subgroups::makeComputeTest(context, VK_FORMAT_R32_UINT, &inputData, 1, DE_NULL, checkComputeOrMesh, size);
426 result = subgroups::makeMeshTest(context, VK_FORMAT_R32_UINT, &inputData, 1, DE_NULL, checkComputeOrMesh, size);
439 const VkShaderStageFlags stages = subgroups::getPossibleGraphicsSubgroupStages(context, caseDef.shaderStage);
440 const subgroups::SSBOData inputData
442 subgroups::SSBOData::InitializeNonZero, // InputDataInitializeType initializeType;
443 subgroups::SSBOData::LayoutStd430, // InputDataLayoutType layout;
445 subgroups::maxSupportedSubgroupSize(), // vk::VkDeviceSize numElements;
446 subgroups::SSBOData::BindingSSBO, // bool isImage;
451 return subgroups::allStages(context, VK_FORMAT_R32_UINT, &inputData, 1, DE_NULL, checkVertexPipelineStages, stages);
455 const VkShaderStageFlags stages = subgroups::getPossibleRayTracingSubgroupStages(context, caseDef.shaderStage);
456 const subgroups::SSBOData inputData
458 subgroups::SSBOData::InitializeNonZero, // InputDataInitializeType initializeType;
459 subgroups::SSBOData::LayoutStd430, // InputDataLayoutType layout;
461 subgroups::maxSupportedSubgroupSize(), // vk::VkDeviceSize numElements;
462 subgroups::SSBOData::BindingSSBO, // bool isImage;
467 return subgroups::allRayTracingStages(context, VK_FORMAT_R32_UINT, &inputData, 1, DE_NULL, checkVertexPipelineStages, stages);
476 namespace subgroups
505 const vector<VkFormat> formats = subgroups::getAllFormats();
510 const string formatName = subgroups::getFormatNameForGLSL(format);
511 const bool isBool = subgroups::isFormatBool(format);
512 const bool isFloat = subgroups::isFormatFloat(format);
612 const vector<VkFormat> formats = subgroups::getAllRayTracingFormats();
617 const string formatName = subgroups::getFormatNameForGLSL(format);
618 const bool isBool = subgroups::isFormatBool(format);
619 const bool isFloat = subgroups::isFormatFloat(format);
664 } // subgroups