From: LoganDark Date: Fri, 16 Jun 2023 19:39:09 +0000 (-0700) Subject: ggml : return input tensor in ggml_set_name (#262) X-Git-Tag: upstream/0.0.1642~1410 X-Git-Url: https://git.djapps.eu/?a=commitdiff_plain;h=070f170ac03987ad888b3c37050185a859a3c011;p=pkg%2Fggml%2Fsources%2Fggml ggml : return input tensor in ggml_set_name (#262) this is SO USEFUL for debugging. in order to find any cgraph node, I can wrap it in ggml_set_name and set a conditional breakpoint. but I can only wrap existing code if this returns its input. otherwise the barrier becomes annoyingly high (have to move a bunch of code around to add name to a tensor) --- diff --git a/include/ggml/ggml.h b/include/ggml/ggml.h index 1e16900b..3b83fe6e 100644 --- a/include/ggml/ggml.h +++ b/include/ggml/ggml.h @@ -514,8 +514,8 @@ extern "C" { GGML_API void * ggml_get_data (const struct ggml_tensor * tensor); GGML_API float * ggml_get_data_f32(const struct ggml_tensor * tensor); - GGML_API const char * ggml_get_name(const struct ggml_tensor * tensor); - GGML_API void ggml_set_name(struct ggml_tensor * tensor, const char * name); + GGML_API const char * ggml_get_name(const struct ggml_tensor * tensor); + GGML_API struct ggml_tensor * ggml_set_name(struct ggml_tensor * tensor, const char * name); // // operations on tensors with backpropagation diff --git a/src/ggml.c b/src/ggml.c index 25f46cae..e1a95600 100644 --- a/src/ggml.c +++ b/src/ggml.c @@ -4554,9 +4554,10 @@ const char * ggml_get_name(const struct ggml_tensor * tensor) { return tensor->name; } -void ggml_set_name(struct ggml_tensor * tensor, const char * name) { +struct ggml_tensor * ggml_set_name(struct ggml_tensor * tensor, const char * name) { strncpy(tensor->name, name, sizeof(tensor->name)); tensor->name[sizeof(tensor->name) - 1] = '\0'; + return tensor; } struct ggml_tensor * ggml_view_tensor(