mirror of
https://github.com/ggerganov/llama.cpp.git
synced 2024-12-29 12:54:35 +00:00
a1d6df129b
* Add OpenCL add kernel * Put add kernel into different string to stay within MSVC string length limit, disable float16 support due to bad results
37 lines
1.4 KiB
C
37 lines
1.4 KiB
C
#pragma once
|
|
|
|
#include "ggml.h"
|
|
#include "ggml-backend.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
GGML_API void ggml_cl_init(void);
|
|
|
|
GGML_API void ggml_cl_mul(const struct ggml_tensor * src0, const struct ggml_tensor * src1, struct ggml_tensor * dst);
|
|
GGML_API void ggml_cl_add(const struct ggml_tensor * src0, const struct ggml_tensor * src1, struct ggml_tensor * dst);
|
|
GGML_API bool ggml_cl_can_mul_mat(const struct ggml_tensor * src0, const struct ggml_tensor * src1, const struct ggml_tensor * dst);
|
|
GGML_API size_t ggml_cl_mul_mat_get_wsize(const struct ggml_tensor * src0, const struct ggml_tensor * src1, struct ggml_tensor * dst);
|
|
GGML_API void ggml_cl_mul_mat(const struct ggml_tensor * src0, const struct ggml_tensor * src1, struct ggml_tensor * dst, void * wdata, size_t wsize);
|
|
|
|
// GGML_API void * ggml_cl_host_malloc(size_t size);
|
|
// GGML_API void ggml_cl_host_free(void * ptr);
|
|
|
|
GGML_API void ggml_cl_free_data(const struct ggml_tensor* tensor);
|
|
|
|
GGML_API void ggml_cl_transform_tensor(void * data, struct ggml_tensor * tensor);
|
|
|
|
// backend API
|
|
|
|
// GGML_API ggml_backend_t ggml_backend_opencl_init(void);
|
|
|
|
// GGML_API bool ggml_backend_is_opencl(ggml_backend_t backend);
|
|
|
|
GGML_API ggml_backend_buffer_type_t ggml_backend_opencl_buffer_type(void);
|
|
// GGML_API ggml_backend_buffer_type_t ggml_backend_opencl_host_buffer_type(void);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|