MCPcopy Create free account
hub / github.com/0xShug0/audio.cpp / load_model

Function load_model

external/ggml/tests/test-conv2d.cpp:38–138  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

36};
37
38void load_model(test_model & model, bool use_gpu = false) {
39 // create data
40 int KW = 3, KH = 3, IC = 10, OC = 10;
41 int IW = 8, IH = 6, N = 1;
42
43 // Initialize adata
44 std::vector<float> adata(KW * KH * IC * OC);
45 for (int i = 0; i < KW * KH * IC * OC; i++) {
46 adata[i] = 2.5f;
47 }
48
49 // Convert adata to fp16 format
50 std::vector<ggml_fp16_t> hadata(KW * KH * IC * OC);
51 ggml_fp32_to_fp16_row(adata.data(), hadata.data(), KW * KH * IC * OC);
52
53 // Initialize bdata
54 std::vector<float> bdata(IW * IH * IC * N);
55 for (int i = 0; i < IW * IH * IC * N; i++) {
56 bdata[i] = 1.5f;
57 }
58
59 size_t buffer_size = 0;
60 {
61 buffer_size += KW * KH * IC * OC * ggml_type_size(GGML_TYPE_F16); // tensor a
62 buffer_size += IW * IH * IC * N * ggml_type_size(GGML_TYPE_F32); // tensor b
63 buffer_size += 1024; // overhead
64 }
65
66 printf("%s: ggml tensor size = %d bytes\n", __func__, (int) sizeof(ggml_tensor));
67 printf("%s: backend buffer size = %0.2f MB\n", __func__, (buffer_size/ 1024.f/ 1024.f));
68
69 int num_tensors = 2;
70 struct ggml_init_params params {
71 /*.mem_size =*/ ggml_tensor_overhead() * num_tensors,
72 /*.mem_buffer =*/ NULL,
73 /*.no_alloc =*/ true,
74 };
75
76 ggml_log_set(ggml_log_callback_default, nullptr);
77
78 // initialize the backend
79#ifdef GGML_USE_CUDA
80 if (use_gpu) {
81 fprintf(stderr, "%s: using CUDA backend\n", __func__);
82 model.backend = ggml_backend_cuda_init(0);
83 if (!model.backend) {
84 fprintf(stderr, "%s: ggml_backend_cuda_init() failed\n", __func__);
85 }
86 }
87#endif
88
89#ifdef GGML_USE_METAL
90 if (use_gpu) {
91 fprintf(stderr, "%s: using Metal backend\n", __func__);
92 model.backend = ggml_backend_metal_init();
93 if (!model.backend) {
94 fprintf(stderr, "%s: ggml_backend_metal_init() failed\n", __func__);
95 }

Callers 1

mainFunction · 0.70

Calls 15

ggml_fp32_to_fp16_rowFunction · 0.85
ggml_type_sizeFunction · 0.85
ggml_tensor_overheadFunction · 0.85
ggml_log_setFunction · 0.85
ggml_backend_metal_initFunction · 0.85
ggml_backend_cpu_initFunction · 0.85
ggml_initFunction · 0.85
ggml_new_tensor_4dFunction · 0.85
ggml_tallocr_newFunction · 0.85
ggml_tallocr_allocFunction · 0.85
ggml_backend_is_cpuFunction · 0.85

Tested by

no test coverage detected