@@ -22,7 +22,7 @@ struct ggml_mem_ranges {
22
22
int debug = 0 ;
23
23
};
24
24
25
- struct ggml_mem_ranges * ggml_mem_ranges_init (int debug) {
25
+ ggml_mem_ranges_t ggml_mem_ranges_init (int debug) {
26
26
auto * res = new ggml_mem_ranges;
27
27
28
28
res->ranges .reserve (256 );
@@ -31,15 +31,15 @@ struct ggml_mem_ranges * ggml_mem_ranges_init(int debug) {
31
31
return res;
32
32
}
33
33
34
- void ggml_mem_ranges_free (ggml_mem_ranges * mrs) {
34
+ void ggml_mem_ranges_free (ggml_mem_ranges_t mrs) {
35
35
delete mrs;
36
36
}
37
37
38
- void ggml_mem_ranges_reset (ggml_mem_ranges * mrs) {
38
+ void ggml_mem_ranges_reset (ggml_mem_ranges_t mrs) {
39
39
mrs->ranges .clear ();
40
40
}
41
41
42
- static bool ggml_mem_ranges_add (ggml_mem_ranges * mrs, ggml_mem_range mr) {
42
+ static bool ggml_mem_ranges_add (ggml_mem_ranges_t mrs, ggml_mem_range mr) {
43
43
mrs->ranges .push_back (mr);
44
44
45
45
return true ;
@@ -87,7 +87,7 @@ static ggml_mem_range ggml_mem_range_from_tensor_dst(const ggml_tensor * tensor)
87
87
return ggml_mem_range_from_tensor (tensor, MEM_RANGE_TYPE_DST);
88
88
}
89
89
90
- static bool ggml_mem_ranges_add_src (ggml_mem_ranges * mrs, const ggml_tensor * tensor) {
90
+ static bool ggml_mem_ranges_add_src (ggml_mem_ranges_t mrs, const ggml_tensor * tensor) {
91
91
GGML_ASSERT (tensor);
92
92
93
93
ggml_mem_range mr = ggml_mem_range_from_tensor_src (tensor);
@@ -99,7 +99,7 @@ static bool ggml_mem_ranges_add_src(ggml_mem_ranges * mrs, const ggml_tensor * t
99
99
return ggml_mem_ranges_add (mrs, mr);
100
100
}
101
101
102
- static bool ggml_mem_ranges_add_dst (ggml_mem_ranges * mrs, const ggml_tensor * tensor) {
102
+ static bool ggml_mem_ranges_add_dst (ggml_mem_ranges_t mrs, const ggml_tensor * tensor) {
103
103
GGML_ASSERT (tensor);
104
104
105
105
ggml_mem_range mr = ggml_mem_range_from_tensor_dst (tensor);
@@ -111,7 +111,7 @@ static bool ggml_mem_ranges_add_dst(ggml_mem_ranges * mrs, const ggml_tensor * t
111
111
return ggml_mem_ranges_add (mrs, mr);
112
112
}
113
113
114
- bool ggml_mem_ranges_add (ggml_mem_ranges * mrs, const ggml_tensor * tensor) {
114
+ bool ggml_mem_ranges_add (ggml_mem_ranges_t mrs, const ggml_tensor * tensor) {
115
115
for (int i = 0 ; i < GGML_MAX_DIMS; i++) {
116
116
if (tensor->src [i]) {
117
117
ggml_mem_ranges_add_src (mrs, tensor->src [i]);
@@ -121,7 +121,7 @@ bool ggml_mem_ranges_add(ggml_mem_ranges * mrs, const ggml_tensor * tensor) {
121
121
return ggml_mem_ranges_add_dst (mrs, tensor);
122
122
}
123
123
124
- static bool ggml_mem_ranges_check (const ggml_mem_ranges * mrs, ggml_mem_range mr) {
124
+ static bool ggml_mem_ranges_check (ggml_mem_ranges_t mrs, ggml_mem_range mr) {
125
125
for (size_t i = 0 ; i < mrs->ranges .size (); i++) {
126
126
const auto & cmp = mrs->ranges [i];
127
127
@@ -152,7 +152,7 @@ static bool ggml_mem_ranges_check(const ggml_mem_ranges * mrs, ggml_mem_range mr
152
152
return true ;
153
153
}
154
154
155
- static bool ggml_mem_ranges_check_src (const ggml_mem_ranges * mrs, const ggml_tensor * tensor) {
155
+ static bool ggml_mem_ranges_check_src (ggml_mem_ranges_t mrs, const ggml_tensor * tensor) {
156
156
GGML_ASSERT (tensor);
157
157
158
158
ggml_mem_range mr = ggml_mem_range_from_tensor_src (tensor);
@@ -162,7 +162,7 @@ static bool ggml_mem_ranges_check_src(const ggml_mem_ranges * mrs, const ggml_te
162
162
return res;
163
163
}
164
164
165
- static bool ggml_mem_ranges_check_dst (const ggml_mem_ranges * mrs, const ggml_tensor * tensor) {
165
+ static bool ggml_mem_ranges_check_dst (ggml_mem_ranges_t mrs, const ggml_tensor * tensor) {
166
166
GGML_ASSERT (tensor);
167
167
168
168
ggml_mem_range mr = ggml_mem_range_from_tensor_dst (tensor);
@@ -172,7 +172,7 @@ static bool ggml_mem_ranges_check_dst(const ggml_mem_ranges * mrs, const ggml_te
172
172
return res;
173
173
}
174
174
175
- bool ggml_mem_ranges_check (const ggml_mem_ranges * mrs, const ggml_tensor * tensor) {
175
+ bool ggml_mem_ranges_check (ggml_mem_ranges_t mrs, const ggml_tensor * tensor) {
176
176
for (int i = 0 ; i < GGML_MAX_DIMS; i++) {
177
177
if (tensor->src [i]) {
178
178
if (!ggml_mem_ranges_check_src (mrs, tensor->src [i])) {
@@ -222,7 +222,7 @@ struct node_info {
222
222
223
223
static std::vector<int > ggml_metal_graph_optimize_reorder (const std::vector<node_info> & nodes) {
224
224
// helper to add node src and dst ranges
225
- const auto & h_add = [](ggml_mem_ranges * mrs, const node_info & node) {
225
+ const auto & h_add = [](ggml_mem_ranges_t mrs, const node_info & node) {
226
226
for (int i = 0 ; i < GGML_MAX_SRC; i++) {
227
227
if (node.node ->src [i]) {
228
228
if (!ggml_mem_ranges_add_src (mrs, node.node ->src [i])) {
@@ -246,7 +246,7 @@ static std::vector<int> ggml_metal_graph_optimize_reorder(const std::vector<node
246
246
};
247
247
248
248
// helper to check if a node can run concurrently with the existing set of nodes
249
- const auto & h_check = [](const ggml_mem_ranges * mrs, const node_info & node) {
249
+ const auto & h_check = [](ggml_mem_ranges_t mrs, const node_info & node) {
250
250
for (int i = 0 ; i < GGML_MAX_SRC; i++) {
251
251
if (node.node ->src [i]) {
252
252
if (!ggml_mem_ranges_check_src (mrs, node.node ->src [i])) {
@@ -301,10 +301,10 @@ static std::vector<int> ggml_metal_graph_optimize_reorder(const std::vector<node
301
301
std::vector<bool > used (n, false );
302
302
303
303
// the memory ranges for the set of currently concurrent nodes
304
- ggml_mem_ranges * mrs0 = ggml_mem_ranges_init (0 );
304
+ ggml_mem_ranges_t mrs0 = ggml_mem_ranges_init (0 );
305
305
306
306
// the memory ranges for the set of nodes that haven't been processed yet, when looking forward for a node to reorder
307
- ggml_mem_ranges * mrs1 = ggml_mem_ranges_init (0 );
307
+ ggml_mem_ranges_t mrs1 = ggml_mem_ranges_init (0 );
308
308
309
309
for (int i0 = 0 ; i0 < n; i0++) {
310
310
if (used[i0]) {
@@ -375,7 +375,7 @@ static std::vector<int> ggml_metal_graph_optimize_reorder(const std::vector<node
375
375
return res;
376
376
}
377
377
378
- void ggml_metal_graph_optimize (ggml_cgraph * gf) {
378
+ void ggml_graph_optimize (ggml_cgraph * gf) {
379
379
constexpr int MAX_FUSE = 16 ;
380
380
381
381
const int n = gf->n_nodes ;
0 commit comments