| 140 | } |
| 141 | |
| 142 | int main(int argc, char* argv[]) |
| 143 | { |
| 144 | int c, h, w; |
| 145 | |
| 146 | c = 128; |
| 147 | h = 112; |
| 148 | w = 112; |
| 149 | |
| 150 | init_tengine(); |
| 151 | |
| 152 | graph_t graph = create_conv_graph(c, h, w); |
| 153 | |
| 154 | if(graph == nullptr) |
| 155 | return 1; |
| 156 | |
| 157 | /* set input */ |
| 158 | tensor_t input_tensor = get_graph_input_tensor(graph, 0, 0); |
| 159 | |
| 160 | int buf_size = get_tensor_buffer_size(input_tensor); |
| 161 | float* i_buf = ( float* )malloc(buf_size); |
| 162 | |
| 163 | for(unsigned int i = 0; i < buf_size / sizeof(float); i++) |
| 164 | i_buf[i] = 1; |
| 165 | |
| 166 | set_tensor_buffer(input_tensor, i_buf, buf_size); |
| 167 | release_graph_tensor(input_tensor); |
| 168 | |
| 169 | /* set weight */ |
| 170 | node_t conv_node = get_graph_node(graph, "conv"); |
| 171 | |
| 172 | tensor_t weight_tensor = get_node_input_tensor(conv_node, 1); |
| 173 | |
| 174 | buf_size = get_tensor_buffer_size(weight_tensor); |
| 175 | float* w_buf = ( float* )malloc(buf_size); |
| 176 | |
| 177 | for(unsigned int i = 0; i < buf_size / sizeof(float); i++) |
| 178 | w_buf[i] = 1; |
| 179 | |
| 180 | set_tensor_buffer(weight_tensor, w_buf, buf_size); |
| 181 | |
| 182 | release_graph_tensor(weight_tensor); |
| 183 | |
| 184 | /* set bias */ |
| 185 | |
| 186 | int input_num = get_node_input_number(conv_node); |
| 187 | float* b_buf = nullptr; |
| 188 | |
| 189 | if(input_num > 2) |
| 190 | { |
| 191 | tensor_t bias_tensor = get_node_input_tensor(conv_node, 2); |
| 192 | |
| 193 | buf_size = get_tensor_buffer_size(bias_tensor); |
| 194 | b_buf = ( float* )malloc(buf_size); |
| 195 | |
| 196 | for(unsigned int i = 0; i < buf_size / sizeof(float); i++) |
| 197 | b_buf[i] = 1; |
| 198 | |
| 199 | set_tensor_buffer(bias_tensor, b_buf, buf_size); |
nothing calls this directly
no test coverage detected