diff --git a/ggml-opencl.c b/ggml-opencl.c index e4ee289c3..335ecf95d 100644 --- a/ggml-opencl.c +++ b/ggml-opencl.c @@ -8,7 +8,7 @@ #include "ggml.h" -#include +#include "ggml_clblast_dequant.cl" #define CL_CHECK(err, name) \ do { \ @@ -190,15 +190,13 @@ void ggml_cl_sgemm_wrapper( clEnqueueWriteBuffer(queue, cl_buffer_a, CL_FALSE, 0, size_a, host_a, 0, NULL, &ev_a); if (dequant) { err = clEnqueueNDRangeKernel(queue, kernel, 1, NULL, &global, &local, 1, &ev_qb, &ev_b); + clReleaseEvent(ev_qb); CL_CHECK(err, "clEnqueueNDRangeKernel"); } clWaitForEvents(1, &ev_a); clWaitForEvents(1, &ev_b); clReleaseEvent(ev_a); clReleaseEvent(ev_b); - if (dequant) { - clReleaseEvent(ev_qb); - } cl_event ev_sgemm; CLBlastSgemm((CLBlastLayout)order,