MCPcopy Create free account
hub / github.com/ARM-software/ComputeLibrary / configure

Method configure

src/core/NEON/kernels/NEBitwiseAndKernel.cpp:64–96  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

62}
63
64void NEBitwiseAndKernel::configure(const ITensor *input1, const ITensor *input2, ITensor *output)
65{
66 ARM_COMPUTE_ERROR_ON_NULLPTR(input1, input2, output);
67
68 set_shape_if_empty(*output->info(), input1->info()->tensor_shape());
69
70 set_format_if_unknown(*output->info(), Format::U8);
71 set_format_if_unknown(*input1->info(), Format::U8);
72 set_format_if_unknown(*input2->info(), Format::U8);
73
74 ARM_COMPUTE_ERROR_ON_SIZE_UNSUPPORTED(input1->info(), input2->info(), output->info());
75 ARM_COMPUTE_ERROR_ON_MISMATCHING_SHAPES(input1, input2, output);
76 ARM_COMPUTE_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN(input1, 1, DataType::U8);
77 ARM_COMPUTE_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN(input2, 1, DataType::U8);
78 ARM_COMPUTE_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN(output, 1, DataType::U8);
79 ARM_COMPUTE_ERROR_ON_MISMATCHING_DATA_TYPES(input1, input2, output);
80
81 _input1 = input1;
82 _input2 = input2;
83 _output = output;
84
85 constexpr unsigned int num_elems_processed_per_iteration = 16;
86
87 // Configure kernel window
88 Window win = calculate_max_window(*input1->info(), Steps(num_elems_processed_per_iteration));
89 AccessWindowHorizontal output_access(output->info(), 0, num_elems_processed_per_iteration);
90
91 update_window_and_padding(win, AccessWindowHorizontal(input1->info(), 0, num_elems_processed_per_iteration),
92 AccessWindowHorizontal(input2->info(), 0, num_elems_processed_per_iteration),
93 output_access);
94
95 INEKernel::configure(win);
96}
97
98void NEBitwiseAndKernel::run(const Window &window, const ThreadInfo &info)
99{

Callers

nothing calls this directly

Calls 7

set_shape_if_emptyFunction · 0.85
set_format_if_unknownFunction · 0.85
StepsClass · 0.85
calculate_max_windowFunction · 0.50
infoMethod · 0.45

Tested by

no test coverage detected