register qnn backend
This commit is contained in:
parent
eed960575f
commit
454deef83c
3 changed files with 6 additions and 5 deletions
|
@ -18,8 +18,6 @@ enum QNNBackend {
|
|||
// QNN and original GGML
|
||||
};
|
||||
|
||||
GGML_API int ggml_backend_qnn_reg_devices(void);
|
||||
|
||||
/**
|
||||
*
|
||||
* @param device 0: QNN_BACKEND_CPU 1: QNN_BACKEND_GPU 2:
|
||||
|
|
|
@ -445,6 +445,11 @@ GGML_CALL static void ggml_backend_registry_init(void) {
|
|||
extern GGML_CALL void ggml_backend_kompute_reg_devices(void);
|
||||
ggml_backend_kompute_reg_devices();
|
||||
#endif
|
||||
|
||||
#ifdef GGML_USE_QNN
|
||||
extern GGML_CALL void ggml_backend_qnn_reg_devices(void);
|
||||
ggml_backend_qnn_reg_devices();
|
||||
#endif
|
||||
}
|
||||
|
||||
GGML_CALL void ggml_backend_register(const char * name, ggml_backend_init_fn init_fn, ggml_backend_buffer_type_t default_buffer_type, void * user_data) {
|
||||
|
|
|
@ -534,13 +534,11 @@ ggml_backend_t ggml_backend_qnn_init(size_t device, const char *qnn_lib_path) {
|
|||
return qnn_backend;
|
||||
}
|
||||
|
||||
int ggml_backend_qnn_reg_devices() {
|
||||
extern "C" GGML_CALL void ggml_backend_qnn_reg_devices() {
|
||||
for (size_t idx = 0; idx < GGML_QNN_MAX_DEVICES; idx++) {
|
||||
char name[GGML_MAX_NAME];
|
||||
ggml_backend_qnn_get_device_description(idx, name, GGML_MAX_NAME);
|
||||
ggml_backend_register(name, ggml_backend_qnn_reg_init, ggml_backend_qnn_buffer_type(idx),
|
||||
(void *)(intptr_t)idx);
|
||||
}
|
||||
|
||||
return GGML_QNN_MAX_DEVICES;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue