MCPcopy Create free account
hub / github.com/Tiiny-AI/PowerInfer / get_random_tensor_f32

Function get_random_tensor_f32

tests/test-grad0.cpp:67–113  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

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

Callers 1

mainFunction · 0.70

Calls 2

frandFunction · 0.70
ggml_new_tensorFunction · 0.50

Tested by

no test coverage detected