add function to convert qnn error into string
This commit is contained in:
parent
a607995f95
commit
b1b5cc10b1
3 changed files with 47 additions and 2 deletions
|
@ -108,13 +108,23 @@ public:
|
|||
(uint32_t)_tensor_outputs.size(), _tensor_outputs.data() } };
|
||||
auto error = _qnn_interface->qnn_graph_add_node(_graph_handle, op_config);
|
||||
if (error != QNN_SUCCESS) {
|
||||
QNN_LOG_ERROR("graphAddNode.error = %d\n", error);
|
||||
auto *error_str = get_qnn_error_string(error);
|
||||
if (error_str) {
|
||||
QNN_LOG_ERROR("qnn_graph_add_node.error: %s\n", error_str);
|
||||
} else {
|
||||
QNN_LOG_ERROR("qnn_graph_add_node.error: %d\n", error);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
error = _qnn_interface->qnn_graph_finalize(_graph_handle, nullptr, nullptr);
|
||||
if (error != QNN_SUCCESS) {
|
||||
QNN_LOG_ERROR("graphFinalize.error = %d\n", error);
|
||||
auto *error_str = get_qnn_error_string(error);
|
||||
if (error_str) {
|
||||
QNN_LOG_ERROR("qnn_graph_finalize.error: %s\n", error_str);
|
||||
} else {
|
||||
QNN_LOG_ERROR("qnn_graph_finalize.error: %d\n", error);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
|
@ -152,4 +152,37 @@ const char *opname_from_ggmlop(enum ggml_op ggmlop) {
|
|||
return nullptr;
|
||||
}
|
||||
|
||||
const char *get_qnn_error_string(Qnn_ErrorHandle_t error) {
|
||||
switch (error) {
|
||||
case QNN_SUCCESS:
|
||||
return "QNN_SUCCESS";
|
||||
case QNN_GRAPH_ERROR_UNSUPPORTED_FEATURE:
|
||||
return "QNN_GRAPH_ERROR_UNSUPPORTED_FEATURE";
|
||||
case QNN_GRAPH_ERROR_MEM_ALLOC:
|
||||
return "QNN_GRAPH_ERROR_MEM_ALLOC";
|
||||
case QNN_GRAPH_ERROR_GENERAL:
|
||||
return "QNN_GRAPH_ERROR_GENERAL";
|
||||
case QNN_GRAPH_ERROR_INVALID_ARGUMENT:
|
||||
return "QNN_GRAPH_ERROR_INVALID_ARGUMENT";
|
||||
case QNN_GRAPH_ERROR_INVALID_HANDLE:
|
||||
return "QNN_GRAPH_ERROR_INVALID_HANDLE";
|
||||
case QNN_GRAPH_ERROR_GRAPH_DOES_NOT_EXIST:
|
||||
return "QNN_GRAPH_ERROR_GRAPH_DOES_NOT_EXIST";
|
||||
case QNN_GRAPH_ERROR_INVALID_NAME:
|
||||
return "QNN_GRAPH_ERROR_INVALID_NAME";
|
||||
case QNN_GRAPH_ERROR_INVALID_TENSOR:
|
||||
return "QNN_GRAPH_ERROR_INVALID_TENSOR";
|
||||
case QNN_GRAPH_ERROR_INVALID_OP_CONFIG:
|
||||
return "QNN_GRAPH_ERROR_INVALID_OP_CONFIG";
|
||||
case QNN_GRAPH_ERROR_SET_PROFILE:
|
||||
return "QNN_GRAPH_ERROR_SET_PROFILE";
|
||||
case QNN_GRAPH_ERROR_UNCONNECTED_NODE:
|
||||
return "QNN_GRAPH_ERROR_UNCONNECTED_NODE";
|
||||
case QNN_GRAPH_ERROR_CREATE_FAILED:
|
||||
return "QNN_GRAPH_ERROR_CREATE_FAILED";
|
||||
default:
|
||||
return nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
} // namespace qnn
|
||||
|
|
|
@ -27,6 +27,8 @@ void align_free(void *ptr);
|
|||
|
||||
const char *opname_from_ggmlop(enum ggml_op ggmlop);
|
||||
|
||||
const char *get_qnn_error_string(Qnn_ErrorHandle_t error);
|
||||
|
||||
inline int validate_tensor_version(const Qnn_Tensor_t &tensor) {
|
||||
if (tensor.version != QNN_TENSOR_VERSION_1) {
|
||||
QNN_LOG_WARN("validate_tensor_version() tensor %s, got unsupported version %d\n", tensor.v1.name,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue