| 243 | } |
| 244 | |
| 245 | static void check_no_overlap(ggml_cgraph * graph) { |
| 246 | for (int i = 0; i < ggml_graph_n_nodes(graph); ++i) { |
| 247 | for (int j = 0; j < i; ++j) { |
| 248 | ggml_tensor * t = ggml_graph_node(graph, i); |
| 249 | ggml_tensor * o = ggml_graph_node(graph, j); |
| 250 | GGML_ASSERT(t != o); |
| 251 | |
| 252 | if (get_view_source(t) == get_view_source(o)) { |
| 253 | continue; |
| 254 | } |
| 255 | if (memory_overlap(t, o)) { |
| 256 | GGML_ASSERT(can_reuse_memory(graph, i, t, o)); |
| 257 | } |
| 258 | } |
| 259 | } |
| 260 | } |
| 261 | |
| 262 | // |
| 263 | // test cases |
no test coverage detected