Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
1202706
ggml-openvino: extract op support policy into dedicated module
zhaixuejun1993 Aug 4, 2026
392adc9
ggml-openvino: document full op policy table
zhaixuejun1993 Aug 4, 2026
aab1d59
ggml-openvino: manage buffer extras with RAII
zhaixuejun1993 Aug 6, 2026
5bcc919
ggml-openvino: split weight buffer release helper
zhaixuejun1993 Aug 7, 2026
255ada9
ggml-openvino: avoid duplicated buffer storage state
zhaixuejun1993 Aug 7, 2026
f34322f
ggml-openvino: drop unused buffer context name
zhaixuejun1993 Aug 7, 2026
c103978
ggml-openvino: split concrete buffer implementation
zhaixuejun1993 Aug 10, 2026
3b8ac3c
ggml-openvino: document public backend API
zhaixuejun1993 Aug 10, 2026
16fbf8a
ggml-openvino: tag buffer type contexts
zhaixuejun1993 Aug 10, 2026
d03324e
ggml-openvino: share stateful execution helper
zhaixuejun1993 Aug 10, 2026
30257f2
ggml-openvino: move unused markers before returns
zhaixuejun1993 Aug 10, 2026
10d5d97
ggml-openvino: share buffer type initialization
zhaixuejun1993 Aug 10, 2026
80b6aa2
ggml-openvino: trim stale main includes
zhaixuejun1993 Aug 10, 2026
e8d7cfa
ggml-openvino: document logical device count
zhaixuejun1993 Aug 10, 2026
1037602
ggml-openvino: document registry singleton ownership
zhaixuejun1993 Aug 10, 2026
be0363c
openvino: split quantization layout helpers
zhaixuejun1993 Aug 10, 2026
1e98e5d
openvino: add quantization storage plan
zhaixuejun1993 Aug 10, 2026
cb890c7
openvino: share integer weight graph builder
zhaixuejun1993 Aug 10, 2026
e6a0ef3
openvino: name integer zero point modes
zhaixuejun1993 Aug 10, 2026
beb57b4
openvino: centralize quantized weight shapes
zhaixuejun1993 Aug 10, 2026
2efc60c
openvino: split quantized weight graph builders
zhaixuejun1993 Aug 10, 2026
da04631
openvino: split quantized weight extraction
zhaixuejun1993 Aug 10, 2026
14c3abb
openvino: split quantized weight requantization
zhaixuejun1993 Aug 10, 2026
2072feb
openvino: rename quantized weight orchestration
zhaixuejun1993 Aug 10, 2026
e8ccbe7
openvino: rename quant weight header
zhaixuejun1993 Aug 10, 2026
d18713a
Update implementations to match base and resolve errors
mostafafaheem Sep 20, 2026
2b1be58
ggml-openvino : make op support a property of the registry
cavusmustafa Sep 2, 2026
b45f6d5
Consolidate anonymous namespaces remove unnecessary includes, and mov…
mostafafaheem Sep 20, 2026
22da6da
Fix linter errors
mostafafaheem Sep 20, 2026
e666cc1
Apply formatting
mostafafaheem Sep 20, 2026
eaa384f
Unify op support to op_table.{h.cpp}
mostafafaheem Sep 20, 2026
9a2baa9
Move support function declarations to header
mostafafaheem Sep 20, 2026
d3aa6bb
Restore AGENTS.md
mostafafaheem Sep 22, 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
28 changes: 28 additions & 0 deletions ggml/include/ggml-openvino.h
Original file line number Diff line number Diff line change
Expand Up @@ -11,25 +11,53 @@ extern "C" {
#define GGML_OPENVINO_NAME "OPENVINO"

// backend API
/// \brief Initialize an OpenVINO backend instance for the given device.
/// \param device OpenVINO device index to initialize.
/// \return OpenVINO backend instance, or nullptr if initialization fails.
GGML_BACKEND_API ggml_backend_t ggml_backend_openvino_init(int device);

/// \brief Return whether the backend instance is an OpenVINO backend.
/// \param backend Backend instance to query.
/// \return True if the backend is an OpenVINO backend.
GGML_BACKEND_API bool ggml_backend_is_openvino(ggml_backend_t backend);

/// \brief Return whether the buffer instance is an OpenVINO backend buffer.
/// \param buffer Backend buffer instance to query.
/// \return True if the buffer is an OpenVINO backend buffer.
GGML_BACKEND_API bool ggml_backend_buffer_is_openvino(ggml_backend_buffer_t buffer);

/// \brief Return whether the buffer type is an OpenVINO device buffer type.
/// \param buft Backend buffer type to query.
/// \return True if the buffer type is an OpenVINO device buffer type.
GGML_BACKEND_API bool ggml_backend_buft_is_openvino(ggml_backend_buffer_type_t buft);

/// \brief Return whether the buffer type is an OpenVINO host buffer type.
/// \param buft Backend buffer type to query.
/// \return True if the buffer type is an OpenVINO host buffer type.
GGML_BACKEND_API bool ggml_backend_buft_is_openvino_host(ggml_backend_buffer_type_t buft);

/// \brief Return the context identifier for an OpenVINO backend buffer.
/// \param buffer Backend buffer instance to query.
/// \return OpenVINO buffer context identifier, or 0 if the buffer is not an OpenVINO buffer.
GGML_BACKEND_API size_t ggml_backend_openvino_buffer_get_ctx_id(ggml_backend_buffer_t buffer);

// device buffer
/// \brief Return the OpenVINO device buffer type for the given device.
/// \param device OpenVINO device index.
/// \return OpenVINO device buffer type.
GGML_BACKEND_API ggml_backend_buffer_type_t ggml_backend_openvino_buffer_type(int device);

/// \brief Return the OpenVINO host buffer type for the given device.
/// \param device OpenVINO device index.
/// \return OpenVINO host buffer type.
GGML_BACKEND_API ggml_backend_buffer_type_t ggml_backend_openvino_host_buffer_type(int device);

/// \brief Return the number of OpenVINO devices available to the backend.
/// \return Number of OpenVINO devices.
GGML_BACKEND_API int ggml_backend_openvino_get_device_count(void);

/// \brief Return the OpenVINO backend registry instance.
/// \return OpenVINO backend registry instance.
GGML_BACKEND_API ggml_backend_reg_t ggml_backend_openvino_reg(void);

#ifdef __cplusplus
Expand Down
6 changes: 3 additions & 3 deletions ggml/src/ggml-openvino/ggml-decoder.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,16 @@
#include "ggml-impl.h"
#include "ggml-openvino-extra.h"
#include "ggml-openvino.h"
#include "ggml-quants.h"
#include "ggml-openvino/ggml-openvino-buffer.h"
#include "ggml.h"
#include "utils.h"
#include "quant/weights.h"

#include <algorithm>
#include <cassert>
#include <cstddef>
#include <cstdint>
#include <cstdlib>
#include <cstring>
#include <fstream>
#include <iomanip>
#include <map>
Expand All @@ -31,7 +32,6 @@
#include <set>
#include <stdexcept>
#include <string>
#include <cstring>
#include <unordered_map>
#include <vector>

Expand Down
Loading