| 219 | } |
| 220 | |
| 221 | Status ConvConstants::Compile(const CreationContext& creation_context) { |
| 222 | const auto code = GenerateConvolutionConstantCode( |
| 223 | definition_.src_tensors[0], definition_.dst_tensors[0], |
| 224 | definition_.precision, kernel_size_, dilation_, src_channels_, |
| 225 | dst_channels_, *creation_context.device, linked_operations_); |
| 226 | std::vector<CompilerOptions> options; |
| 227 | if (definition_.precision == CalculationsPrecision::F16 && |
| 228 | creation_context.device->IsAdreno3xx()) { |
| 229 | options.push_back(CompilerOptions::ADRENO_FULL_SIMD_LINE); |
| 230 | } |
| 231 | return creation_context.cache->GetOrCreateCLKernel( |
| 232 | code, "main_function", options, *creation_context.context, |
| 233 | *creation_context.device, &kernel_); |
| 234 | } |
| 235 | |
| 236 | Status ConvConstants::BindArguments() { |
| 237 | kernel_.ResetBindingCounter(); |
nothing calls this directly
no test coverage detected