| 162 | } |
| 163 | } |
| 164 | void softmax_kernel(const int i, const int tid, const void* step, |
| 165 | int out_size, int on_in_size, int in_size,int on_size, |
| 166 | float* input, float* max_array_, float* output,float* sum_array_) |
| 167 | { |
| 168 | int my_step = (( int* )step)[0]; |
| 169 | float* max_array = max_array_ + in_size * tid; |
| 170 | float* sum_array = sum_array_ + in_size * tid; |
| 171 | for(int idx = tid; idx < out_size; idx += my_step) |
| 172 | { |
| 173 | /* get max */ |
| 174 | int img_base = idx * on_in_size; |
| 175 | GetMaxArray(input + img_base, max_array, in_size, on_size); |
| 176 | GetOutResult(input + img_base, output + img_base, max_array, sum_array, in_size, on_size); |
| 177 | } |
| 178 | } |
| 179 | bool Run(Node* node) |
| 180 | { |
| 181 | Tensor* input_tensor = node->GetInputTensor(0); |
nothing calls this directly
no test coverage detected