| 1794 | } |
| 1795 | |
| 1796 | void ggml_backend_sched_free(ggml_backend_sched_t sched) { |
| 1797 | if (sched == NULL) { |
| 1798 | return; |
| 1799 | } |
| 1800 | for (int b = 0; b < sched->n_backends; b++) { |
| 1801 | for (int c = 0; c < sched->n_copies; c++) { |
| 1802 | ggml_backend_event_free(sched->events[b][c]); |
| 1803 | } |
| 1804 | } |
| 1805 | ggml_gallocr_free(sched->galloc); |
| 1806 | ggml_free(sched->ctx); |
| 1807 | ggml_hash_set_free(&sched->hash_set); |
| 1808 | free(sched->splits); |
| 1809 | free(sched->hv_tensor_backend_ids); |
| 1810 | free(sched->hv_tensor_copies); |
| 1811 | free(sched->node_backend_ids); |
| 1812 | free(sched->leaf_backend_ids); |
| 1813 | free(sched->prev_node_backend_ids); |
| 1814 | free(sched->prev_leaf_backend_ids); |
| 1815 | free(sched->context_buffer); |
| 1816 | free(sched->graph.nodes); |
| 1817 | free(sched->graph.leafs); |
| 1818 | free(sched); |
| 1819 | } |
| 1820 | |
| 1821 | void ggml_backend_sched_reset(ggml_backend_sched_t sched) { |
| 1822 | GGML_ASSERT(sched); |