0001-cuda.patch 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
  2. From: jmorganca <jmorganca@gmail.com>
  3. Date: Thu, 6 Jun 2024 23:55:47 -0700
  4. Subject: [PATCH] cuda
  5. ---
  6. ggml/src/ggml-backend.cpp | 2 +-
  7. ggml/src/ggml-cuda/ggml-cuda.cu | 1 +
  8. ggml/src/ggml-metal/ggml-metal.m | 1 +
  9. 3 files changed, 3 insertions(+), 1 deletion(-)
  10. diff --git a/ggml/src/ggml-backend.cpp b/ggml/src/ggml-backend.cpp
  11. index fdb4b986..731e4078 100644
  12. --- a/ggml/src/ggml-backend.cpp
  13. +++ b/ggml/src/ggml-backend.cpp
  14. @@ -106,7 +106,6 @@ void ggml_backend_buffer_free(ggml_backend_buffer_t buffer) {
  15. if (buffer->iface.free_buffer != NULL) {
  16. buffer->iface.free_buffer(buffer);
  17. }
  18. - delete buffer;
  19. }
  20. size_t ggml_backend_buffer_get_size(ggml_backend_buffer_t buffer) {
  21. @@ -1862,6 +1861,7 @@ static void * ggml_backend_cpu_buffer_get_base(ggml_backend_buffer_t buffer) {
  22. static void ggml_backend_cpu_buffer_free_buffer(ggml_backend_buffer_t buffer) {
  23. ggml_aligned_free(buffer->context, buffer->size);
  24. + free(buffer);
  25. }
  26. static void ggml_backend_cpu_buffer_memset_tensor(ggml_backend_buffer_t buffer, struct ggml_tensor * tensor, uint8_t value, size_t offset, size_t size) {
  27. diff --git a/ggml/src/ggml-cuda/ggml-cuda.cu b/ggml/src/ggml-cuda/ggml-cuda.cu
  28. index d6e4bfdd..a2fcfe5d 100644
  29. --- a/ggml/src/ggml-cuda/ggml-cuda.cu
  30. +++ b/ggml/src/ggml-cuda/ggml-cuda.cu
  31. @@ -424,6 +424,7 @@ struct ggml_backend_cuda_buffer_context {
  32. static void ggml_backend_cuda_buffer_free_buffer(ggml_backend_buffer_t buffer) {
  33. ggml_backend_cuda_buffer_context * ctx = (ggml_backend_cuda_buffer_context *)buffer->context;
  34. delete ctx;
  35. + delete buffer;
  36. }
  37. static bool ggml_backend_buffer_is_cuda(ggml_backend_buffer_t buffer) {
  38. diff --git a/ggml/src/ggml-metal/ggml-metal.m b/ggml/src/ggml-metal/ggml-metal.m
  39. index 093ae900..a0cf4ba4 100644
  40. --- a/ggml/src/ggml-metal/ggml-metal.m
  41. +++ b/ggml/src/ggml-metal/ggml-metal.m
  42. @@ -4035,6 +4035,7 @@ static void ggml_backend_metal_buffer_free_buffer(ggml_backend_buffer_t buffer)
  43. }
  44. free(ctx);
  45. + free(buffer);
  46. }
  47. static void * ggml_backend_metal_buffer_get_base(ggml_backend_buffer_t buffer) {