sync : ggml (conv 1d + 2d updates, UB fixes) (#3468)
* sync : ggml (conv 1d + 2d updates) ggml-ci * ggml : fix UB in q5_0 and q5_1 quantize code ggml.c:1033:39: runtime error: left shift of 1 by 31 places cannot be represented in type 'int' SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ggml.c:1081:39: runtime error: left shift of 1 by 31 places cannot be represented in type 'int' SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ggml-ci * tests : fix UB in test-quantize-perf
This commit is contained in:
parent
f72f8f22c9
commit
f93af02488
6 changed files with 725 additions and 379 deletions
|
@ -208,26 +208,6 @@ static struct ggml_tensor * get_random_tensor_i32(
|
|||
return result;
|
||||
}
|
||||
|
||||
static 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", ggml_get_f32_1d(t, k));
|
||||
}
|
||||
printf("] shape: [");
|
||||
for (int k = 0; k < t->n_dims; ++k) {
|
||||
if (k > 0) { printf(", "); }
|
||||
printf("%d", (int)t->ne[k]);
|
||||
}
|
||||
printf("]\n");
|
||||
|
||||
}
|
||||
|
||||
static bool check_gradient(
|
||||
const char * op_name,
|
||||
struct ggml_context * ctx0,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue