in src/runtime/vulkan/vulkan_device_api.cc [180:280]
void VulkanDeviceAPI::GetTargetProperty(Device dev, const std::string& property, TVMRetValue* rv) {
size_t index = static_cast<size_t>(dev.device_id);
const auto& prop = device(index).device_properties;
if (property == "supports_float16") {
*rv = prop.supports_float16;
}
if (property == "supports_float32") {
*rv = prop.supports_float32;
}
if (property == "supports_float64") {
*rv = prop.supports_float64;
}
if (property == "supports_int8") {
*rv = prop.supports_int8;
}
if (property == "supports_int16") {
*rv = prop.supports_int16;
}
if (property == "supports_int32") {
*rv = prop.supports_int32;
}
if (property == "supports_int64") {
*rv = prop.supports_int64;
}
if (property == "supports_8bit_buffer") {
*rv = prop.supports_8bit_buffer;
}
if (property == "supports_16bit_buffer") {
*rv = prop.supports_16bit_buffer;
}
if (property == "supports_storage_buffer_storage_class") {
*rv = prop.supports_storage_buffer_storage_class;
}
if (property == "supports_push_descriptor") {
*rv = prop.supports_push_descriptor;
}
if (property == "supports_dedicated_allocation") {
*rv = prop.supports_dedicated_allocation;
}
if (property == "supported_subgroup_operations") {
*rv = int64_t(prop.supported_subgroup_operations);
}
if (property == "max_num_threads") {
*rv = int64_t(prop.max_num_threads);
}
if (property == "thread_warp_size") {
*rv = int64_t(prop.thread_warp_size);
}
if (property == "max_block_size_x") {
*rv = int64_t(prop.max_block_size_x);
}
if (property == "max_block_size_y") {
*rv = int64_t(prop.max_block_size_y);
}
if (property == "max_block_size_z") {
*rv = int64_t(prop.max_block_size_z);
}
if (property == "max_push_constants_size") {
*rv = int64_t(prop.max_push_constants_size);
}
if (property == "max_uniform_buffer_range") {
*rv = int64_t(prop.max_uniform_buffer_range);
}
if (property == "max_storage_buffer_range") {
*rv = int64_t(prop.max_storage_buffer_range);
}
if (property == "max_per_stage_descriptor_storage_buffer") {
*rv = int64_t(prop.max_per_stage_descriptor_storage_buffer);
}
if (property == "max_shared_memory_per_block") {
*rv = int64_t(prop.max_shared_memory_per_block);
}
if (property == "supports_integer_dot_product") {
*rv = prop.supports_integer_dot_product;
}
if (property == "supports_cooperative_matrix") {
*rv = prop.supports_cooperative_matrix;
}
if (property == "device_name") {
*rv = prop.device_name;
}
if (property == "device_type") {
*rv = prop.device_type;
}
if (property == "driver_name") {
*rv = prop.driver_name;
}
if (property == "driver_version") {
*rv = int64_t(prop.driver_version);
}
if (property == "vulkan_api_version") {
*rv = int64_t(prop.vulkan_api_version);
}
if (property == "max_spirv_version") {
*rv = int64_t(prop.max_spirv_version);
}
}