From 86b44a02e4ed0863b525b1fb4840127000f4d8a3 Mon Sep 17 00:00:00 2001 From: xaedes Date: Fri, 28 Apr 2023 17:46:55 +0200 Subject: [PATCH] test-grad0.c : add print_elements to help with debugging --- tests/test-grad0.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/tests/test-grad0.c b/tests/test-grad0.c index 2bfde960f..c410cfc6d 100644 --- a/tests/test-grad0.c +++ b/tests/test-grad0.c @@ -112,6 +112,26 @@ void set_element(struct ggml_tensor * t, int idx, float value) { ((float *)t->data)[idx] = value; } +void print_elements(const char* label, const struct ggml_tensor * t) { + if (!t) { + printf("%s: %s = null\n", __func__, label); + return; + } + const int nelements = ggml_nelements(t); + printf("%s: %s = [", __func__, label); + for (int k = 0; k < nelements; ++k) { + if (k > 0) { printf(", "); } + printf("%.5f", get_element(t, k)); + } + printf("] shape: ["); + for (int k = 0; k < t->n_dims; ++k) { + if (k > 0) { printf(", "); } + printf("%d", t->ne[k]); + } + printf("]\n"); + +} + bool check_gradient( const char * op_name, struct ggml_context * ctx0,