MCPcopy Create free account
hub / github.com/appdevforall/CodeOnTheGo / get_random_tensor_f32

Function get_random_tensor_f32

subprojects/llama.cpp/tests/test-rope.cpp:68–114  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

66}
67
68static struct ggml_tensor * get_random_tensor_f32(
69 struct ggml_context * ctx0,
70 int ndims,
71 const int64_t ne[],
72 float fmin,
73 float fmax) {
74 struct ggml_tensor * result = ggml_new_tensor(ctx0, GGML_TYPE_F32, ndims, ne);
75
76 switch (ndims) {
77 case 1:
78 for (int i0 = 0; i0 < ne[0]; i0++) {
79 ((float *)result->data)[i0] = frand()*(fmax - fmin) + fmin;
80 }
81 break;
82 case 2:
83 for (int i1 = 0; i1 < ne[1]; i1++) {
84 for (int i0 = 0; i0 < ne[0]; i0++) {
85 ((float *)result->data)[i1*ne[0] + i0] = frand()*(fmax - fmin) + fmin;
86 }
87 }
88 break;
89 case 3:
90 for (int i2 = 0; i2 < ne[2]; i2++) {
91 for (int i1 = 0; i1 < ne[1]; i1++) {
92 for (int i0 = 0; i0 < ne[0]; i0++) {
93 ((float *)result->data)[i2*ne[1]*ne[0] + i1*ne[0] + i0] = frand()*(fmax - fmin) + fmin;
94 }
95 }
96 }
97 break;
98 case 4:
99 for (int i3 = 0; i3 < ne[3]; i3++) {
100 for (int i2 = 0; i2 < ne[2]; i2++) {
101 for (int i1 = 0; i1 < ne[1]; i1++) {
102 for (int i0 = 0; i0 < ne[0]; i0++) {
103 ((float *)result->data)[i3*ne[2]*ne[1]*ne[0] + i2*ne[1]*ne[0] + i1*ne[0] + i0] = frand()*(fmax - fmin) + fmin;
104 }
105 }
106 }
107 }
108 break;
109 default:
110 assert(false);
111 };
112
113 return result;
114}
115
116static void ggml_graph_compute_helper(std::vector<uint8_t> & buf, ggml_cgraph * graph, int n_threads) {
117 struct ggml_cplan plan = ggml_graph_plan(graph, n_threads, nullptr);

Callers 1

mainFunction · 0.85

Calls 2

ggml_new_tensorFunction · 0.85
frandFunction · 0.85

Tested by

no test coverage detected