mirror of
https://github.com/ggml-org/llama.cpp.git
synced 2025-11-21 12:16:57 +00:00
ggml-zdnn: fix incorrect ztensor free
Signed-off-by: Aaron Teo <aaron.teo1@ibm.com>
This commit is contained in:
@@ -364,18 +364,9 @@ static void ggml_zdnn_free(ggml_backend_zdnn_context * ctx) {
|
|||||||
static void ggml_backend_zdnn_buffer_free_buffer(ggml_backend_buffer_t buffer) {
|
static void ggml_backend_zdnn_buffer_free_buffer(ggml_backend_buffer_t buffer) {
|
||||||
ggml_backend_zdnn_buffer_context * ctx = (ggml_backend_zdnn_buffer_context *)buffer->context;
|
ggml_backend_zdnn_buffer_context * ctx = (ggml_backend_zdnn_buffer_context *)buffer->context;
|
||||||
|
|
||||||
for (int i = 0; i < ctx->n_buffers; i++) {
|
for (const auto & buf_ptr : ctx->buffers) {
|
||||||
if (ctx->buffers[i]->extra != nullptr) {
|
ggml_backend_zdnn_buffer * buf = buf_ptr.get();
|
||||||
ggml_backend_zdnn_buffer * bias = (ggml_backend_zdnn_buffer *)ctx->buffers[i]->extra;
|
if (buf->ztensor.buffer_size > 0) ZDNN_CHECK(zdnn_free_ztensor_buffer(&buf->ztensor));
|
||||||
if (bias->ztensor.buffer != NULL && bias->ztensor.is_transformed) {
|
|
||||||
ZDNN_CHECK(zdnn_free_ztensor_buffer(&bias->ztensor));
|
|
||||||
}
|
|
||||||
delete bias;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (ctx->buffers[i]->ztensor.buffer != NULL && ctx->buffers[i]->ztensor.is_transformed) {
|
|
||||||
ZDNN_CHECK(zdnn_free_ztensor_buffer(&ctx->buffers[i]->ztensor));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
delete ctx;
|
delete ctx;
|
||||||
|
|||||||
Reference in New Issue
Block a user