OpenVINO™ is an open-source toolkit for optimizing and deploying AI inference
Go to file
Mikhail Nosov a635150b9d
[IE Common] Enable explicit TBlob declaration in all compilers (#11183)
* Enable explicit TBlob declaration in all compilers

This fixes problems when linking gcc compiled IE with clang compiled
applications.

Previous to this change, only clang compilers would consider TBlob<T>
templated types as declared externally. When *declared* explictly (with
the `extern template` syntax), the C++ spec says
that any inline methods of the templated class (such as TBlob<T>
constructors) should be ignored in favor of the externally instantiated
version of that templated type:

    "An explicit instantiation declaration (an extern template) skips
    implicit instantiation step: the code that would otherwise cause an
    implicit instantiation instead uses the explicit instantiation
    definition provided elsewhere (resulting in link errors if no such
    instantiation exists)."

However, when IE is compiled with gcc, it does not see the explicit
`extern template` declarations of TBlob<T> (due to the `#ifdef
__clang__` guards in `ie_blob.h`). As an end result, presumably due to
link-time-optimizations during IE library compilation(?), none of the
TBlob<T> implementations are actually included in the IE dynamic
libraries.

* Fix warnings for windows

* Fix typo
2022-03-30 18:56:49 +03:00
.ci [IE Common] Enable explicit TBlob declaration in all compilers (#11183) 2022-03-30 18:56:49 +03:00
.github GitHub org control: all ignored accounts are showed now 2022-03-15 17:27:08 +03:00
cmake changed symlink order of libgna (#11267) 2022-03-28 19:48:08 +03:00
docs [docs] port from release branch (#11309) 2022-03-30 17:03:29 +03:00
licensing Removed duplicated words (#10754) 2022-03-03 06:50:54 +00:00
samples CMAKE: IE_VERSION => OpenVINO_VERSION (#11242) 2022-03-28 19:32:21 +03:00
scripts Install 97-myriad-usbboot.rules to install_dependencies (#11301) 2022-03-30 13:03:42 +03:00
src [IE Common] Enable explicit TBlob declaration in all compilers (#11183) 2022-03-30 18:56:49 +03:00
tests Update mo_tool parameter for converter.py (#11319) 2022-03-30 18:32:53 +03:00
thirdparty [OMZ]: update submodule (#11279) 2022-03-28 19:48:53 +03:00
tools Fixed conflicts (#11332) 2022-03-30 16:10:03 +03:00
.gitattributes [POT] Update tests with new data (#8209) 2021-10-27 12:40:19 +03:00
.gitignore [Python API] Move old python bindings (#9134) 2022-01-24 13:16:07 +03:00
.gitmodules [GPU] Moved onednn_gpu to plugin folder (#9458) 2021-12-29 11:06:14 +03:00
CMakeLists.txt If CMAKE_BUILD_TYPE is not set - set it to 'Release' by default (#11026) 2022-03-18 06:59:36 +03:00
CODEOWNERS DOCS: port changes from releases/2022/1 (#11040) 2022-03-18 17:48:45 +03:00
CONTRIBUTING.md Add changes to contribution guide (#10675) 2022-03-22 11:51:53 +03:00
install_build_dependencies.sh CMAKE: IE_VERSION => OpenVINO_VERSION (#11242) 2022-03-28 19:32:21 +03:00
Jenkinsfile Beautify Jenkinsfile a little bit 2021-05-31 15:24:56 +03:00
LICENSE Publishing R3 2018-10-16 13:45:03 +03:00
README.md Fixed conflicts (#11332) 2022-03-30 16:10:03 +03:00
SECURITY.md Added SECURITY.md back (#3177) 2020-11-17 16:44:44 +03:00

OpenVINO™ Toolkit

Stable release Apache License Version 2.0 GitHub branch checks state Azure DevOps builds (branch) PyPI Downloads

This toolkit allows developers to deploy pre-trained deep learning models through a high-level OpenVINO™ Runtime C++ and Python APIs integrated with application logic.

This open source version includes several components: namely Model Optimizer, OpenVINO™ Runtime, Post-Training Optimization Tool, as well as CPU, GPU, MYRIAD, multi device and heterogeneous plugins to accelerate deep learning inferencing on Intel® CPUs and Intel® Processor Graphics. It supports pre-trained models from the Open Model Zoo, along with 100+ open source and public models in popular formats such as TensorFlow, ONNX, PaddlePaddle, MXNet, Caffe, Kaldi.

Repository components

License

OpenVINO™ Toolkit is licensed under Apache License Version 2.0. By contributing to the project, you agree to the license and copyright terms therein and release your contribution under these terms.

Resources

Support

Please report questions, issues and suggestions using:


* Other names and brands may be claimed as the property of others.