Skip to content
Open
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
6a1e938
OpenVINO backend: 1) enable gpt-oss moe on OV bk; 2) enable mxfp4 sup…
zhaixuejun1993 Jun 23, 2026
667780b
OpenVINO backend: disable TOPK_MOE op test
zhaixuejun1993 Jun 24, 2026
57925d0
OpenVINO Backend: Add op FILL support
zhaixuejun1993 Jun 25, 2026
2d99fc2
OpenVINO backend: enable set rows with multi dims
zhaixuejun1993 Jun 25, 2026
53fbb6a
fix the name missmatch in setrow + view
zhaixuejun1993 Jun 25, 2026
cbcb886
OpenVINO backend: enable op GGML_UNARY_OP_SIGMOID
zhaixuejun1993 Jun 25, 2026
ca3f65f
OpenVINO Backend: enable SQR & SQRT
zhaixuejun1993 Jun 25, 2026
83f98bd
OpenVINO backend: 1) ensure unique node names for OpenVINO; 2) add or…
zhaixuejun1993 May 27, 2026
2ede174
OpenVINO backend: enable fallback for openVINO to CPU backend
zhaixuejun1993 May 27, 2026
a91e779
OpenVINO backend: fix accurace issue in gemma3n arch test
zhaixuejun1993 Jun 30, 2026
9f60666
fix mpt failed case
zhaixuejun1993 Jun 30, 2026
27ccd51
OpenVINO backend: clean nodeinfo
zhaixuejun1993 Jul 3, 2026
d69d79c
Merge pull request #239 from zhaixuejun1993/xuejun/remove_node_output…
zhaixuejun1993 Jul 3, 2026
c872f4c
OpenVINO Backend: enable zero-size copy for view
zhaixuejun1993 Jul 7, 2026
887dade
Merge pull request #243 from zhaixuejun1993/xuejun/fix-view_cpy-issue
zhaixuejun1993 Jul 7, 2026
75ff066
add concat ssm_conv in compute_dynamic_dim
wine99 May 21, 2026
30c0bcb
OpenVINO backend: disable EXP with FP32, which failed in op test. Roo…
zhaixuejun1993 Jun 16, 2026
842ee70
OpenVINO backend: fix CPY op test failed issue
zhaixuejun1993 Jun 16, 2026
612ccf7
OpenVINO backend: fix GATED_DELTA_NET op test failed issue
zhaixuejun1993 Jun 16, 2026
0c67d7f
handle in-place op, handle qwen35 dynamic clearing of cache in cgraph
wine99 Jun 18, 2026
2b28da4
handle qwen35 dynamic clearing of cache correctly
wine99 Jun 23, 2026
4cd88eb
Enable qwen35 dense multi seq
wine99 Jun 29, 2026
7631cf3
Fix qwen35 9b gqa
wine99 Jun 30, 2026
f0135e3
Fix after rebase
wine99 Jul 1, 2026
0bf9b5c
Disable SOLVE_TRI
wine99 Jul 7, 2026
4102b17
openvino: fix NEOX RoPE accuracy on GPU stateful (mixed-rank Multiply)
cavusmustafa Jul 7, 2026
49852ce
OpenVINO backend: 1) remove the unique name in llama.cpp; 2) add new …
zhaixuejun1993 Jul 8, 2026
8145086
OpenVINO Backenb: remove changes in llama.cpp
zhaixuejun1993 Jul 8, 2026
eed038c
Merge pull request #246 from zhaixuejun1993/xuejun/fix-arch-issues
zhaixuejun1993 Jul 9, 2026
63e44c9
Merge pull request #247 from zhaixuejun1993/xuejun/remove-changes-in-…
zhaixuejun1993 Jul 9, 2026
131e9fc
Doc change (use x64 Native Tools Command Prompt for VS)
virajwad Jul 9, 2026
810fffd
Cleaner sentence
virajwad Jul 9, 2026
c6311c3
Merge pull request #249 from ravi9/build_doc_change
ravi9 Jul 9, 2026
b601163
ggml-openvino: make get_tensor_ov_name suffix stable across cgraph in…
cavusmustafa Jul 10, 2026
65fb739
Merge branch 'dev_backend_openvino' into fix_thread_safety_upstream
ravi9 Jul 14, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 20 additions & 4 deletions ggml/src/ggml-openvino/ggml-decoder.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -122,10 +122,26 @@ static std::string get_tensor_ov_name(const ggml_cgraph * cgraph, const ggml_ten
if (tensor == nullptr) {
return "";
}
const size_t hash_pos = ggml_hash_find(&cgraph->visited_hash_set, tensor);
if (((tensor->flags & GGML_TENSOR_FLAG_COMPUTE) || GgmlOvDecoder::is_kvcache(tensor, nullptr)) &&
hash_pos != GGML_HASHSET_FULL && ggml_bitset_get(cgraph->visited_hash_set.used, hash_pos)) {
return std::string(tensor->name) + "#" + std::to_string(hash_pos);
// Disambiguate distinct COMPUTE/kvcache tensors that share a ggml name by appending a
// per-graph index suffix. This MUST be stable across cgraph instances that share the same
// structure: the decoder/infer-request cache is keyed by graph_key (node names + count) and
// is process-global, so the same OV name is generated at compile time and looked up again on
// a cache hit from a *different* cgraph instance (e.g. another context or same-architecture
// model in test-thread-safety). ggml_hash_find() returns a hash-set slot derived from the
// tensor POINTER, which differs per instance -> the cached name would miss on reuse and throw
// map::at. Use the tensor's topological index in nodes[]/leafs[] instead, which is identical
// for corresponding tensors across same-structure graphs.
if ((tensor->flags & GGML_TENSOR_FLAG_COMPUTE) || GgmlOvDecoder::is_kvcache(tensor, nullptr)) {
for (int i = 0; i < cgraph->n_nodes; i++) {
if (cgraph->nodes[i] == tensor) {
return std::string(tensor->name) + "#" + std::to_string(i);
}
}
for (int i = 0; i < cgraph->n_leafs; i++) {
if (cgraph->leafs[i] == tensor) {
return std::string(tensor->name) + "#l" + std::to_string(i);
}
}
}
return tensor->name;
}
Expand Down
Loading