Skip to content

Commit 8233009

Browse files
committed
Support SYCL device register
1 parent 92be9f1 commit 8233009

File tree

5 files changed

+380
-68
lines changed

5 files changed

+380
-68
lines changed

ggml/include/ggml-sycl.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@ GGML_API void ggml_sycl_get_device_description(int device, char *description, si
3434
GGML_API int ggml_backend_sycl_get_device_count();
3535
GGML_API void ggml_backend_sycl_get_device_memory(int device, size_t *free, size_t *total);
3636

37+
GGML_API ggml_backend_reg_t ggml_backend_sycl_reg(void);
38+
3739
// SYCL doesn't support registering host memory, keep here for reference
3840
// GGML_API bool ggml_backend_sycl_register_host_buffer(void * buffer, size_t size);
3941
// GGML_API void ggml_backend_sycl_unregister_host_buffer(void * buffer);

ggml/src/ggml-backend.cpp

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -546,6 +546,10 @@ void * ggml_backend_reg_get_proc_address(ggml_backend_reg_t reg, const char * na
546546
#include "ggml-rpc.h"
547547
#endif
548548

549+
#ifdef GGML_USE_SYCL
550+
#include "ggml-sycl.h"
551+
#endif
552+
549553
struct ggml_backend_registry {
550554
std::vector<ggml_backend_reg_t> backends;
551555
std::vector<ggml_backend_dev_t> devices;
@@ -563,10 +567,14 @@ struct ggml_backend_registry {
563567
#ifdef GGML_USE_RPC
564568
register_backend(ggml_backend_rpc_reg());
565569
#endif
566-
570+
#ifdef GGML_USE_SYCL
571+
register_backend(ggml_backend_sycl_reg());
572+
// printf("zjy sycl ggml_backend_reg_count()=%d\n", ggml_backend_reg_count());
573+
#endif
567574
// TODO: sycl, vulkan, kompute, cann
568575

569576
register_backend(ggml_backend_cpu_reg());
577+
// printf("zjy cpu ggml_backend_reg_count()=%d\n", ggml_backend_reg_count());
570578
}
571579

572580
void register_backend(ggml_backend_reg_t reg) {

0 commit comments

Comments
 (0)