Skip to content

Commit

Permalink
ggml: add new member in GGML's internal data structure
Browse files Browse the repository at this point in the history
  • Loading branch information
zhou.weiguo committed Apr 21, 2024
1 parent 5cf5e7d commit 9cba545
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 1 deletion.
6 changes: 6 additions & 0 deletions ggml.c
Original file line number Diff line number Diff line change
Expand Up @@ -2200,6 +2200,7 @@ struct ggml_context {
bool mem_buffer_owned;
bool no_alloc;
bool no_alloc_save; // this is used to save the no_alloc state when using scratch buffers
bool use_hwaccel;

int n_objects;

Expand Down Expand Up @@ -2759,6 +2760,7 @@ struct ggml_context * ggml_init(struct ggml_init_params params) {
/*.mem_buffer_owned =*/ params.mem_buffer ? false : true,
/*.no_alloc =*/ params.no_alloc,
/*.no_alloc_save =*/ params.no_alloc,
/*.use_hwaccel =*/ params.use_hwaccel,
/*.n_objects =*/ 0,
/*.objects_begin =*/ NULL,
/*.objects_end =*/ NULL,
Expand Down Expand Up @@ -2990,9 +2992,13 @@ static struct ggml_tensor * ggml_new_tensor_impl(
/*.data =*/ obj_alloc_size > 0 ? (void *)(result + 1) : data,
/*.name =*/ { 0 },
/*.extra =*/ NULL,
/*.rank =*/ n_dims,
/*.padding =*/ { 0 },
};

if (ctx->use_hwaccel)
result->backend = GGML_BACKEND_TYPE_GPU;

// TODO: this should not be needed as long as we don't rely on aligned SIMD loads
//ggml_assert_aligned(result->data);

Expand Down
5 changes: 4 additions & 1 deletion ggml.h
Original file line number Diff line number Diff line change
Expand Up @@ -591,7 +591,9 @@ extern "C" {

void * extra; // extra things e.g. for ggml-cuda.cu

char padding[8];
int32_t rank;

char padding[20];
};

static const size_t GGML_TENSOR_SIZE = sizeof(struct ggml_tensor);
Expand Down Expand Up @@ -657,6 +659,7 @@ extern "C" {
size_t mem_size; // bytes
void * mem_buffer; // if NULL, memory will be allocated internally
bool no_alloc; // don't allocate memory for the tensor data
bool use_hwaccel;
};


Expand Down

0 comments on commit 9cba545

Please sign in to comment.