* Recently we have merged the WA for MyriadPlugin to be not unloaded at runtime for Linux systems.
It has been found that there are some problems with the usage of this linker option on CentOS, which led to Segmentation Fault on it, on the second call of dlopen() on myriadPlugin.
I tried to update glibc version on CentOS (to 2.28) and the problem disappeared.
Both Ubuntu 18 and 20 works fine and as it was requested as the used platform for the initial problem, I've decided to limit the solution for Ubuntu OS only.
* Created opset7.md to add the specification of the operation FFT.
* Started to write the specification of the operation FFT.
* Added link to the specification of the operation FFT.
* Continued to write the specification of the FFT.
* Written about inputs and outputs of FFT.
* Started to write examples.
* Added example when there is no input 'signal_size'.
* Added more example.
* Small fixes.
* Small fix.
* Renamed FFT to DFFT.
* Small fix.
* Small fix.
* Started to write the algorithm of FFT.
* Added asserts.
* Started to write the method __call__ of the class of DFFT calculation.
* Fixed category.
* Continued to write the algorithm of the FFT calculation.
* Continued to write the algorithm of the FFT calculation.
* Continued to write the algorithm of the FFT calculation.
* Continued to write the algorithm of the calculation of DFFT.
* Written the algorithm of the calculation of DFFT.
* Small fix.
* Renamed operation.
* Added examples of 3D input tensors.
* Covered complex number representation.
* Written formulas for FFT.
* Written about start point of trimming.
* Small fixes.
* Small fixes.
* Some fixes.
* Added some note.
* Added a description of the calculation of the output shape.
* Added examples with unsorted axes and with (-1) in signal_size.
* Fixed range of axes indices.
* Small fix.
* Small change.
* Added T_SIZE type.
* Added negative axes support.
* Some fixes.
* Some fixes.
* Written the draft of the specification of the operation IFFT.
* Small fix.
* Renamed the operation IFFT into DIFFT. Deleted attribute.
* Renamed operation to IDFT.
* Deleted int8 type.
* Added examples of 3D input tensors.
* Added formulas and text.
* Fixed ie_docs.xml.
* Fixed sign in the IFFT formula.
* Some fixes.
* Added examples with unsorted axes and with (-1) in signal_size.
* Some fixes.
* Small fix.
* Small fixes.
* Added type T_SIZE.
* Deleted redundant sentence.
* Added support for negative axes.
* Some changes.
* Model caching support - Core part
Introducing model caching support
Use core.SetConfig({{CONFIG_KEY(CACHE_DIR), <dir>}}); to enable caching of models
OpenVINO will try to create caching folder if it doesn't exist, but it is recommended for client to create caching folder with necessary permissions before enabling cache in config
For caching, plugins shall support import/export functionality
Plugin requirements:
- Add METRIC_KEY(IMPORT_EXPORT_SUPPORT) in SUPPORTED_METRICS to support caching
If plugin has different device architectures with different caches, i.e.
For "GNA.0" - one cache, for "GNA.10" - another cache
In this case plugin shall support DEVICE_ARCHITECTURE metric and return different strings for different DEVICE_ID's
Added functional tests
* Fix CentOS build issues
* Few updates according to code review
* Revert unnecessary changes for Import/Export core implementation
These changes affect old behavior and may be undesired
For caching support these is no need to change anything in this area
If needed, such removal of 'Magic' usage can be done under separate task in future
* More tests:
1) Verify that Imported data from stream is the same as was exported
2) Verify that cache is not loaded when config in LoadNetwork is changed
3) Verify that if CNN Network is changed between ReadNetwork and LoadNetwork - cache is not loaded
* Update of NetworkCompilationContext
Put back functionality of calculating hash based on runtime information, weights
Implemented OstreamHashWrapper to avoid serialization to buffer
* Correction of CACHE_DIR key description
* Unit tests for compilation_context
Changes:
1) Improved handling of OstreamHashAdapter
2) Improved runtime info serialization (not just PrimitivesPriority and affinity)
3) Removed redundant weights hash calculation
* Fix GCC 4.8 build issues
* Compilation context updates
1) Use hash of sum of serialized data to get hash of network. It is more efficient comparing to weights sum calculation
2) CalculateFileInfo - convert path to absolute ("./test.blob" and "test.blob" shall give same hash)
* Hash - added more rt_info attributes + tests
- PrimitivesPriority
- FusedNames
- Dequantization
* Moved "get_absolute_path" macro to file_utils.h
* Make 'absoluteFilePath' a library API, not macro
* One more unit test for fileName hashing
* Fix compilation error after merge with latest master
* Allow tests to be executed in parallel (stress mode)
* More minor updates for stress testing
Now it allows to execute tests with '--repeat=100' option where one test is executed in multiple processes simultaneously
Example:
./gtest-parallel <openvino_dir>/bin/intel64/Debug/ieFuncTests --gtest_filter=CachingTest* --repeat=10
* Use absolute model file path for calculating blob name
* Added 'createDirectoryRecursive' API to plugin_api/file_utils
* Fix issue with GNA Import/Export.
Application may create ostream and write some app-specific header to beginning of stream.
GNA plug-in shall not 'seekg' to beginning of stream where app-specific content is located.
Instead it shall seek to the original position of stream
Functional test is also updated to cover this case
* Updated according to review comments
- Check return code right after 'istream::tellg'
- Added 'applicationHeader' as parameter to base ImportExport tests
* Error check for startPos + unit test
* Suppress deprecated warnings like in other GNA tests
* Feature/vpu doc fixes 2021 3 (#4635)
* Documentation fixes and updates for VPU
* minor correction
* minor correction
* Fixed links
* updated supported layers list for vpu
* Auto benchmarks for evaluate(...) and extra unit tests.
* Test suite for manual i/o examination.
* Template on input type. Constant folding tests the 'count_ops_of_type' issue.
* Multidim manual tests
* NgOp&Ref: Unit tests Ok. NB evaluates_map
* Stable. Negative indices as if larger than depth. Benchmarks removed.
* Added Serialization SLT
* I/O shapes consistency checks
* Consistency checks in evaluate(). Removed the ref from evaluates_map.
* removed excessive #include from evaluates_map
* Code style
* [GNA] Support Pooling 2D
Refactor Pooling
Remove unused sum pooling
Skip ReorderPoolActivation pass when 2D pooling detected
Enable fusing of Pool2D with other components into GNA Operation
* Support GNA_SW_FP32 mode for Pooling 2D with tests
* Apply review
typo
* Apply review
Restore indentation
* Only executor threads now have top task priority. Other runtime threads have lower priority. Other non-runtime tasks (which do not participate in inference) have much lower priority.
* Initial Subgraphs Dumper and IR runner test inplementation
* Implement matchers configuration
* Refactor MatcherConfig
* Add OP cloners factory
* Remove IR runner test (to be added in separate PR)
* Use different nodes comparison method
* Remove extra include of <any> which fails build with old glibc
* Add README.md
Co-authored-by: Mikhail Treskin <mikhail.treskin@intel.com>
SubGraph might have inputs and outputs in different order and still be
the same Function.
Co-authored-by: Patryk Elszkowski <patryk.elszkowki@intel.com>