@@ -525,6 +525,10 @@ void * ggml_backend_reg_get_proc_address(ggml_backend_reg_t reg, const char * na
525
525
#include " ggml-cuda.h"
526
526
#endif
527
527
528
+ #ifdef GGML_USE_METAL
529
+ #include " ggml-metal.h"
530
+ #endif
531
+
528
532
struct ggml_backend_registry {
529
533
std::vector<ggml_backend_reg_t > backends;
530
534
std::vector<ggml_backend_dev_t > devices;
@@ -533,10 +537,13 @@ struct ggml_backend_registry {
533
537
#ifdef GGML_USE_CUDA
534
538
register_backend (ggml_backend_cuda_reg ());
535
539
#endif
540
+ #ifdef GGML_USE_METAL
541
+ register_backend (ggml_backend_metal_reg ());
542
+ #endif
536
543
537
544
register_backend (ggml_backend_cpu_reg ());
538
545
539
- // TODO: sycl, metal, vulkan, kompute, cann
546
+ // TODO: sycl, vulkan, kompute, cann
540
547
}
541
548
542
549
void register_backend (ggml_backend_reg_t reg) {
@@ -1193,19 +1200,19 @@ static const struct ggml_backend_device_i ggml_backend_cpu_device_i = {
1193
1200
1194
1201
// //////////////////////
1195
1202
1196
- static const char * ggml_backend_cpu_reg_get_name (ggml_backend_reg_t reg) {
1203
+ static const char * ggml_backend_cpu_reg_name (ggml_backend_reg_t reg) {
1197
1204
return " CPU" ;
1198
1205
1199
1206
GGML_UNUSED (reg);
1200
1207
}
1201
1208
1202
- static size_t ggml_backend_cpu_reg_get_device_count (ggml_backend_reg_t reg) {
1209
+ static size_t ggml_backend_cpu_reg_device_count (ggml_backend_reg_t reg) {
1203
1210
return 1 ;
1204
1211
1205
1212
GGML_UNUSED (reg);
1206
1213
}
1207
1214
1208
- static ggml_backend_dev_t ggml_backend_cpu_reg_get_device (ggml_backend_reg_t reg, size_t index) {
1215
+ static ggml_backend_dev_t ggml_backend_cpu_reg_device_get (ggml_backend_reg_t reg, size_t index) {
1209
1216
GGML_ASSERT (index == 0 );
1210
1217
1211
1218
static ggml_backend_cpu_device_context ctx;
@@ -1222,9 +1229,9 @@ static ggml_backend_dev_t ggml_backend_cpu_reg_get_device(ggml_backend_reg_t reg
1222
1229
}
1223
1230
1224
1231
static const struct ggml_backend_reg_i ggml_backend_cpu_reg_i = {
1225
- /* .get_name = */ ggml_backend_cpu_reg_get_name ,
1226
- /* .get_device_count = */ ggml_backend_cpu_reg_get_device_count ,
1227
- /* .get_device = */ ggml_backend_cpu_reg_get_device ,
1232
+ /* .get_name = */ ggml_backend_cpu_reg_name ,
1233
+ /* .device_count = */ ggml_backend_cpu_reg_device_count ,
1234
+ /* .device_get = */ ggml_backend_cpu_reg_device_get ,
1228
1235
/* .get_proc_address = */ NULL ,
1229
1236
};
1230
1237
0 commit comments