|
|
@@ -122,9 +122,9 @@ static void usage(char * argv[]) {
|
|
|
printf(" --type TYPE set test type as");
|
|
|
for (int i = 0; i < GGML_TYPE_COUNT; i++) {
|
|
|
ggml_type type = (ggml_type) i;
|
|
|
- ggml_type_traits_t qfns = ggml_internal_get_type_traits(type);
|
|
|
+ const auto * qfns = ggml_get_type_traits(type);
|
|
|
if (ggml_type_name(type) != NULL) {
|
|
|
- if (qfns.from_float && qfns.to_float) {
|
|
|
+ if (qfns->from_float && qfns->to_float) {
|
|
|
printf(" %s", ggml_type_name(type));
|
|
|
}
|
|
|
}
|
|
|
@@ -270,12 +270,12 @@ int main(int argc, char * argv[]) {
|
|
|
|
|
|
for (int i = 0; i < GGML_TYPE_COUNT; i++) {
|
|
|
ggml_type type = (ggml_type) i;
|
|
|
- ggml_type_traits_t qfns = ggml_internal_get_type_traits(type);
|
|
|
+ const auto * qfns = ggml_get_type_traits(type);
|
|
|
if (!params.include_types.empty() && ggml_type_name(type) && std::find(params.include_types.begin(), params.include_types.end(), ggml_type_name(type)) == params.include_types.end()) {
|
|
|
continue;
|
|
|
}
|
|
|
|
|
|
- if (qfns.from_float && qfns.to_float) {
|
|
|
+ if (qfns->from_float && qfns->to_float) {
|
|
|
printf("%s\n", ggml_type_name(type));
|
|
|
|
|
|
ggml_quantize_init(type);
|
|
|
@@ -285,7 +285,7 @@ int main(int argc, char * argv[]) {
|
|
|
for (size_t size : params.test_sizes) {
|
|
|
printf(" %zu values (%.2f MB)\n", size, 4*size/(float)(1024*1024));
|
|
|
auto quantize_fn = [&](void) -> float {
|
|
|
- qfns.from_float_ref(test_data1, test_q1, size);
|
|
|
+ qfns->from_float_ref(test_data1, test_q1, size);
|
|
|
return test_q1[0];
|
|
|
};
|
|
|
size_t quantized_size = ggml_row_size(type, size);
|
|
|
@@ -299,7 +299,7 @@ int main(int argc, char * argv[]) {
|
|
|
for (size_t size : params.test_sizes) {
|
|
|
printf(" %zu values (%.2f MB)\n", size, 4*size/(float)(1024*1024));
|
|
|
auto quantize_fn = [&](void) -> float {
|
|
|
- qfns.from_float(test_data1, test_q1, size);
|
|
|
+ qfns->from_float(test_data1, test_q1, size);
|
|
|
return test_q1[0];
|
|
|
};
|
|
|
size_t quantized_size = ggml_row_size(type, size);
|
|
|
@@ -310,11 +310,11 @@ int main(int argc, char * argv[]) {
|
|
|
|
|
|
if (params.op_dequantize_row_q) {
|
|
|
printf(" dequantize_row_q\n");
|
|
|
- qfns.from_float(test_data1, test_q1, largest);
|
|
|
+ qfns->from_float(test_data1, test_q1, largest);
|
|
|
for (size_t size : params.test_sizes) {
|
|
|
printf(" %zu values (%.2f MB)\n", size, 4*size/(float)(1024*1024));
|
|
|
auto quantize_fn = [&](void) -> float {
|
|
|
- qfns.to_float(test_q1, test_out, size);
|
|
|
+ qfns->to_float(test_q1, test_out, size);
|
|
|
return test_out[0];
|
|
|
};
|
|
|
size_t quantized_size = ggml_row_size(type, size);
|
|
|
@@ -328,8 +328,8 @@ int main(int argc, char * argv[]) {
|
|
|
for (size_t size : params.test_sizes) {
|
|
|
printf(" %zu values (%.2f MB)\n", size, 4*size/(float)(1024*1024));
|
|
|
auto quantize_fn = [&](void) -> float {
|
|
|
- auto vdot = ggml_internal_get_type_traits(qfns.vec_dot_type);
|
|
|
- vdot.from_float(test_data1, test_q1, size);
|
|
|
+ const auto * vdot = ggml_get_type_traits(qfns->vec_dot_type);
|
|
|
+ vdot->from_float(test_data1, test_q1, size);
|
|
|
return test_q1[0];
|
|
|
};
|
|
|
size_t quantized_size = ggml_row_size(type, size);
|
|
|
@@ -340,13 +340,13 @@ int main(int argc, char * argv[]) {
|
|
|
|
|
|
if (params.op_vec_dot_q) {
|
|
|
printf(" vec_dot_q\n");
|
|
|
- qfns.from_float(test_data1, test_q1, largest);
|
|
|
- qfns.from_float(test_data2, test_q2, largest);
|
|
|
+ qfns->from_float(test_data1, test_q1, largest);
|
|
|
+ qfns->from_float(test_data2, test_q2, largest);
|
|
|
for (size_t size : params.test_sizes) {
|
|
|
printf(" %zu values (%.2f MB)\n", size, 4*size/(float)(1024*1024));
|
|
|
auto quantize_fn = [&](void) -> float {
|
|
|
float result;
|
|
|
- qfns.vec_dot(size, &result, 0, test_q1, 0, test_q2, 0, 1);
|
|
|
+ qfns->vec_dot(size, &result, 0, test_q1, 0, test_q2, 0, 1);
|
|
|
return result;
|
|
|
};
|
|
|
size_t quantized_size = ggml_row_size(type, size);
|