Fix llama-bench; Clang-format
This commit is contained in:
parent
6dc4b90635
commit
75eec6265f
|
|
@ -8,6 +8,8 @@ Cpp11BracedListStyle: true
|
||||||
AccessModifierOffset: -4
|
AccessModifierOffset: -4
|
||||||
BinPackArguments: false
|
BinPackArguments: false
|
||||||
BreakBeforeBraces: Attach
|
BreakBeforeBraces: Attach
|
||||||
|
IndentCaseBlocks: false
|
||||||
|
IndentCaseLabels: false
|
||||||
|
|
||||||
Language: Cpp
|
Language: Cpp
|
||||||
AlignAfterOpenBracket: Align
|
AlignAfterOpenBracket: Align
|
||||||
|
|
@ -68,8 +70,6 @@ IncludeCategories:
|
||||||
IncludeIsMainRegex: '([-_](test|unittest))?$'
|
IncludeIsMainRegex: '([-_](test|unittest))?$'
|
||||||
IncludeIsMainSourceRegex: ''
|
IncludeIsMainSourceRegex: ''
|
||||||
IndentAccessModifiers: false
|
IndentAccessModifiers: false
|
||||||
IndentCaseBlocks: true
|
|
||||||
IndentCaseLabels: true
|
|
||||||
IndentExternBlock: NoIndent
|
IndentExternBlock: NoIndent
|
||||||
IndentGotoLabels: false
|
IndentGotoLabels: false
|
||||||
IndentPPDirectives: AfterHash
|
IndentPPDirectives: AfterHash
|
||||||
|
|
|
||||||
|
|
@ -176,7 +176,7 @@ void GgmlOvDecoder::set_input_output(ggml_tensor* node, bool naive) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case GGML_OP_CPY: {
|
case GGML_OP_CPY: {
|
||||||
if (ggml_is_contiguous(node)) {
|
if (std::string(node->src[1]->name).find("cache_k") == 0) {
|
||||||
// Write K to cache_k
|
// Write K to cache_k
|
||||||
m_op_case = 1;
|
m_op_case = 1;
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -184,7 +184,7 @@ void GgmlOvDecoder::set_input_output(ggml_tensor* node, bool naive) {
|
||||||
m_op_case = 2;
|
m_op_case = 2;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case GGML_OP_PERMUTE: {
|
case GGML_OP_PERMUTE: {
|
||||||
if (node->src[0]->view_src == nullptr) {
|
if (node->src[0]->view_src == nullptr) {
|
||||||
// Permute Qcur
|
// Permute Qcur
|
||||||
|
|
@ -198,23 +198,21 @@ void GgmlOvDecoder::set_input_output(ggml_tensor* node, bool naive) {
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case GGML_OP_GET_ROWS:
|
case GGML_OP_GET_ROWS: {
|
||||||
{
|
if (node->src[1]->op == GGML_OP_VIEW) {
|
||||||
if (node->src[1]->op == GGML_OP_VIEW) {
|
m_op_case = 2;
|
||||||
m_op_case = 2;
|
} else {
|
||||||
} else {
|
m_op_case = 1;
|
||||||
m_op_case = 1;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
case GGML_OP_ROPE:
|
break;
|
||||||
{
|
}
|
||||||
if (node->src[0]->op == GGML_OP_VIEW) {
|
case GGML_OP_ROPE: {
|
||||||
m_op_case = 2;
|
if (node->src[0]->op == GGML_OP_VIEW) {
|
||||||
} else {
|
m_op_case = 2;
|
||||||
m_op_case = 1;
|
} else {
|
||||||
}
|
m_op_case = 1;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
@ -405,17 +403,16 @@ std::shared_ptr<ov::Node> GgmlOvDecoder::create_weight_node(ggml_tensor* tensor)
|
||||||
weight_node = std::make_shared<ov::op::v0::Constant>(node_type, node_shape, data_f16);
|
weight_node = std::make_shared<ov::op::v0::Constant>(node_type, node_shape, data_f16);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case GGML_TYPE_BF16:
|
case GGML_TYPE_BF16: {
|
||||||
{
|
const auto* ptr = reinterpret_cast<const uint16_t*>(tensor->data);
|
||||||
const auto* ptr = reinterpret_cast<const uint16_t*>(tensor->data);
|
std::vector<ov::bfloat16> data_bf16;
|
||||||
std::vector<ov::bfloat16> data_bf16;
|
data_bf16.reserve(ne_total);
|
||||||
data_bf16.reserve(ne_total);
|
for (int i = 0; i < ne_total; ++i) {
|
||||||
for (int i = 0; i < ne_total; ++i) {
|
data_bf16.push_back(ov::bfloat16::from_bits(ptr[i]));
|
||||||
data_bf16.push_back(ov::bfloat16::from_bits(ptr[i]));
|
|
||||||
}
|
|
||||||
weight_node = std::make_shared<ov::op::v0::Constant>(node_type, node_shape, data_bf16);
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
weight_node = std::make_shared<ov::op::v0::Constant>(node_type, node_shape, data_bf16);
|
||||||
|
break;
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
throw std::invalid_argument("Unsupported tensor type");
|
throw std::invalid_argument("Unsupported tensor type");
|
||||||
}
|
}
|
||||||
|
|
@ -614,8 +611,8 @@ int32_t* GgmlOvDecoder::get_output_op_params(const std::string& name) const {
|
||||||
|
|
||||||
void GgmlOvDecoder::visit_subgraph(std::function<void(std::shared_ptr<GgmlDecoder>)> node_visitor) const {
|
void GgmlOvDecoder::visit_subgraph(std::function<void(std::shared_ptr<GgmlDecoder>)> node_visitor) const {
|
||||||
for (const auto& node : m_nodes) {
|
for (const auto& node : m_nodes) {
|
||||||
auto decoder = std::make_shared<GgmlOvDecoder>(node, m_cgraph, m_is_static, m_is_first_token, m_context_size,
|
auto decoder = std::make_shared<GgmlOvDecoder>(
|
||||||
m_num_heads, m_num_heads_kv, m_head_size);
|
node, m_cgraph, m_is_static, m_is_first_token, m_context_size, m_num_heads, m_num_heads_kv, m_head_size);
|
||||||
node_visitor(decoder);
|
node_visitor(decoder);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -667,12 +664,12 @@ const std::string& GgmlOvDecoder::get_op_type() const {
|
||||||
};
|
};
|
||||||
|
|
||||||
switch (m_node->op) {
|
switch (m_node->op) {
|
||||||
case GGML_OP_UNARY:
|
case GGML_OP_UNARY:
|
||||||
return unary_ops.at(ggml_get_unary_op(m_node));
|
return unary_ops.at(ggml_get_unary_op(m_node));
|
||||||
case GGML_OP_GLU:
|
case GGML_OP_GLU:
|
||||||
return glu_ops.at(ggml_get_glu_op(m_node));
|
return glu_ops.at(ggml_get_glu_op(m_node));
|
||||||
default:
|
default:
|
||||||
return ops.at(m_node->op);
|
return ops.at(m_node->op);
|
||||||
}
|
}
|
||||||
static const std::string unknown_op = "UNKNOWN_GGML_OP";
|
static const std::string unknown_op = "UNKNOWN_GGML_OP";
|
||||||
return unknown_op;
|
return unknown_op;
|
||||||
|
|
|
||||||
|
|
@ -309,7 +309,7 @@ static bool is_op_unsupported_case(const ggml_tensor* op) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool ggml_backend_openvino_device_supports_op(ggml_backend_dev_t dev, const ggml_tensor * op) {
|
static bool ggml_backend_openvino_device_supports_op(ggml_backend_dev_t dev, const ggml_tensor* op) {
|
||||||
GGML_ASSERT(dev->reg != nullptr);
|
GGML_ASSERT(dev->reg != nullptr);
|
||||||
|
|
||||||
static const std::set<ggml_type> supported_types{
|
static const std::set<ggml_type> supported_types{
|
||||||
|
|
@ -327,34 +327,29 @@ static bool ggml_backend_openvino_device_supports_op(ggml_backend_dev_t dev, con
|
||||||
};
|
};
|
||||||
|
|
||||||
switch (op->op) {
|
switch (op->op) {
|
||||||
case GGML_OP_UNARY:
|
case GGML_OP_UNARY: {
|
||||||
{
|
auto supported = supported_unary_ops.find(ggml_get_unary_op(op)) != supported_unary_ops.end();
|
||||||
auto supported = supported_unary_ops.find(ggml_get_unary_op(op)) != supported_unary_ops.end();
|
if (!supported) {
|
||||||
if (!supported) {
|
GGML_LOG_WARN("OpenVINO backend does not support unary op %s\n", ggml_unary_op_name(ggml_get_unary_op(op)));
|
||||||
GGML_LOG_WARN("OpenVINO backend does not support unary op %s\n",
|
return false;
|
||||||
ggml_unary_op_name(ggml_get_unary_op(op)));
|
}
|
||||||
return false;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
case GGML_OP_GLU: {
|
||||||
}
|
auto supported = supported_glu_ops.find(ggml_get_glu_op(op)) != supported_glu_ops.end();
|
||||||
case GGML_OP_GLU:
|
if (!supported) {
|
||||||
{
|
GGML_LOG_WARN("OpenVINO backend does not support GLU op %s\n", ggml_glu_op_name(ggml_get_glu_op(op)));
|
||||||
auto supported = supported_glu_ops.find(ggml_get_glu_op(op)) != supported_glu_ops.end();
|
return false;
|
||||||
if (!supported) {
|
}
|
||||||
GGML_LOG_WARN("OpenVINO backend does not support GLU op %s\n",
|
break;
|
||||||
ggml_glu_op_name(ggml_get_glu_op(op)));
|
}
|
||||||
return false;
|
default: {
|
||||||
}
|
auto supported = supported_ops.find(op->op) != supported_ops.end();
|
||||||
break;
|
if (!supported) {
|
||||||
}
|
GGML_LOG_WARN("OpenVINO backend does not support op %s\n", ggml_op_name(op->op));
|
||||||
default:
|
return false;
|
||||||
{
|
}
|
||||||
auto supported = supported_ops.find(op->op) != supported_ops.end();
|
}
|
||||||
if (!supported) {
|
|
||||||
GGML_LOG_WARN("OpenVINO backend does not support op %s\n", ggml_op_name(op->op));
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (supported_types.find(op->type) == supported_types.end()) {
|
if (supported_types.find(op->type) == supported_types.end()) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue