Skip to content

Commit bb051d9

Browse files
authored
opencl : no need to allocate cl_mem on heap (#1612)
1 parent ca74884 commit bb051d9

File tree

1 file changed

+5
-6
lines changed

1 file changed

+5
-6
lines changed

ggml-opencl.cpp

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -667,7 +667,7 @@ static void ggml_cl_mul_mat_f32(const ggml_tensor * src0, const ggml_tensor * sr
667667
size_t d_size;
668668
cl_mem d_X;
669669
if (src0->backend == GGML_BACKEND_CL) {
670-
d_X = *(cl_mem*) src0->data;
670+
d_X = (cl_mem) src0->data;
671671
} else {
672672
d_X = ggml_cl_pool_malloc(sizeof(ggml_fp16_t) * x_ne, &x_size, CL_MEM_READ_ONLY);
673673
}
@@ -743,7 +743,7 @@ static void ggml_cl_mul_mat_f16(const ggml_tensor * src0, const ggml_tensor * sr
743743
size_t d_size;
744744
cl_mem d_X;
745745
if (src0->backend == GGML_BACKEND_CL) {
746-
d_X = *(cl_mem*) src0->data;
746+
d_X = (cl_mem) src0->data;
747747
} else {
748748
d_X = ggml_cl_pool_malloc(sizeof(ggml_fp16_t) * x_ne, &x_size, CL_MEM_READ_ONLY);
749749
}
@@ -868,7 +868,7 @@ static void ggml_cl_mul_mat_q_f32(const ggml_tensor * src0, const ggml_tensor *
868868
if (src0->backend == GGML_BACKEND_CPU) {
869869
CL_CHECK(ggml_cl_h2d_tensor_2d(queue, d_Q, 0, src0, i03, i02, NULL));
870870
} else if (src0->backend == GGML_BACKEND_CL) {
871-
d_Q = *(cl_mem*) src0->data;
871+
d_Q = (cl_mem) src0->data;
872872
} else {
873873
GGML_ASSERT(false);
874874
}
@@ -1011,14 +1011,13 @@ void ggml_cl_transform_tensor(ggml_tensor * tensor) {
10111011
const size_t q_sz = ggml_type_size(type) * ne0 * ne1 * ne2 * ne3 / ggml_blck_size(type);
10121012

10131013
size_t q_size;
1014-
cl_mem* dst = (cl_mem*) malloc(sizeof(cl_mem));
1015-
*dst = ggml_cl_pool_malloc(q_sz, &q_size, CL_MEM_READ_ONLY);
1014+
cl_mem dst = ggml_cl_pool_malloc(q_sz, &q_size, CL_MEM_READ_ONLY);
10161015

10171016
// copy tensor to device
10181017
for (int64_t i3 = 0; i3 < ne3; i3++) {
10191018
for (int64_t i2 = 0; i2 < ne2; i2++) {
10201019
int i = i3*ne2 + i2;
1021-
CL_CHECK(ggml_cl_h2d_tensor_2d(queue, *dst, i*ne0*ne1, tensor, i3, i2, NULL));
1020+
CL_CHECK(ggml_cl_h2d_tensor_2d(queue, dst, i*ne0*ne1, tensor, i3, i2, NULL));
10221021
}
10231022
}
10241023

0 commit comments

Comments
 (0)