Skip to content

Commit fe3089c

Browse files
committed
ggml : add ggml_op_is_empty
1 parent 803dac2 commit fe3089c

File tree

3 files changed

+19
-19
lines changed

3 files changed

+19
-19
lines changed

ggml/include/ggml.h

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -702,9 +702,10 @@ extern "C" {
702702
GGML_API double ggml_type_sizef(enum ggml_type type), // ggml_type_size()/ggml_blck_size() as float
703703
"use ggml_row_size() instead");
704704

705-
GGML_API const char * ggml_type_name(enum ggml_type type);
706-
GGML_API const char * ggml_op_name (enum ggml_op op);
707-
GGML_API const char * ggml_op_symbol(enum ggml_op op);
705+
GGML_API const char * ggml_type_name (enum ggml_type type);
706+
GGML_API const char * ggml_op_name (enum ggml_op op);
707+
GGML_API const char * ggml_op_symbol (enum ggml_op op);
708+
GGML_API bool ggml_op_is_empty(enum ggml_op op);
708709

709710
GGML_API const char * ggml_unary_op_name(enum ggml_unary_op op);
710711
GGML_API const char * ggml_glu_op_name(enum ggml_glu_op op);

ggml/src/ggml-metal/ggml-metal-common.cpp

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -184,20 +184,6 @@ bool ggml_mem_ranges_check(ggml_mem_ranges_t mrs, const ggml_tensor * tensor) {
184184
return ggml_mem_ranges_check_dst(mrs, tensor);
185185
}
186186

187-
// TODO: move to ggml.h?
188-
static bool is_empty(ggml_op op) {
189-
switch (op) {
190-
case GGML_OP_NONE:
191-
case GGML_OP_RESHAPE:
192-
case GGML_OP_TRANSPOSE:
193-
case GGML_OP_VIEW:
194-
case GGML_OP_PERMUTE:
195-
return true;
196-
default:
197-
return false;
198-
}
199-
}
200-
201187
struct node_info {
202188
ggml_tensor * node;
203189

@@ -212,7 +198,7 @@ struct node_info {
212198
}
213199

214200
bool is_empty() const {
215-
return ::is_empty(node->op);
201+
return ggml_op_is_empty(node->op);
216202
}
217203

218204
void add_fused(ggml_tensor * t) {
@@ -289,7 +275,7 @@ static std::vector<int> ggml_metal_graph_optimize_reorder(const std::vector<node
289275
case GGML_OP_GET_ROWS:
290276
return true;
291277
default:
292-
return is_empty(op);
278+
return ggml_op_is_empty(op);
293279
}
294280
};
295281

ggml/src/ggml.c

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1258,6 +1258,19 @@ const char * ggml_op_symbol(enum ggml_op op) {
12581258
return GGML_OP_SYMBOL[op];
12591259
}
12601260

1261+
bool ggml_op_is_empty(enum ggml_op op) {
1262+
switch (op) {
1263+
case GGML_OP_NONE:
1264+
case GGML_OP_RESHAPE:
1265+
case GGML_OP_TRANSPOSE:
1266+
case GGML_OP_VIEW:
1267+
case GGML_OP_PERMUTE:
1268+
return true;
1269+
default:
1270+
return false;
1271+
}
1272+
}
1273+
12611274
const char * ggml_unary_op_name(enum ggml_unary_op op) {
12621275
return GGML_UNARY_OP_NAME[op];
12631276
}

0 commit comments

Comments
 (0)