* Initial commit
* More changes
* More changes
* More changes
* More changes
* PR feedback
* Commiting Azure build config file
* Fix build pipeline
* Cleanup build dir template addition
* Remove conda modules download step
* PR feedback
* Revert x86 arguments to as they are currently
* More changes
Promote to ONNX commit that has StringNormalizer
Adjust implementation to match ONNX spec.
Remove test exclusions.
Override BackendTest class to handle strings comparision
properly until this is fixed in ONNX.
Restore test_gru_seq_length_cpu exclusion
Thanks to cbecker for highlighting the problem in PR#565. That change used the GOT to access MlasMaskMoveAvx, but was incomplete: the GOT has a pointer to the global data, not the data directly. I updated the kernels to use a free register to load the address and then use that for the data. I ran through onnxruntime_mlas_test for AVX and FMA3 to verify the changes.
* use CUDA 9.1 for both linux and windows
* added powershell scripts for cuda props setup/cleanup
* fix yml syntax
* set path to cuda9.1 bin
* correct label
* ad --cuda_version
* added some log to browse the directory
* disabled jobs other than win gpu to save some resource while testing
* add msvc_toolset=14.11
* added more logs
* log the props file
* remove setting vcvarsall
* try some modificationi n build.py
* fix typo
* let the config Step modify envoronment
* set some more env vars manually
* try reordering vcvars after cuda props copying
* use single script for build and test
* single line script
* remove extra quote
* cleanup trial changes
* add option numpy_version to build against the installed numpy version and not 1.15.0 (hardcoded version number), default is still 1.15.0
* add option skip_keras_test to skip keras test even if keras is installed (still enabled by default)
disable unnecessary warnings about ubuntu
* enable option PRIVATE for the compilation of the Python bindings (settings recommended on pybind11 documentation)
* test on debian 9
* Prototype version that demonstrates it can work
* Switched to OrtValue and removed the OrtCustomOpTensor code.
* Support multiple outputs and reading of attributes
* Add custom domain handling to custom ops
* Update documentation
* more wording changes
* added linux packaging template and pipeline
* Update linux-packaging-pipeline.yml for Azure Pipelines
* fix path seperator
* update copy command for linux
* fixed linux gpu artifact name, added mac build
* fixed linux gpu artifact name, added mac build
* fixed vmImage syntax
* use 1 model at a time for macos
* added onnx test on Mac CI
* some refactor of the pipeline scripts
* try fixing the tensorproto for x86 build
* try __cdecl
* try C-style cast
* use ORTAPICALL
* put the deleter under the namespace
1. Support the new external data extension in ONNX 1.4 onnx/onnx#678
2. Enable onnxruntime_perf_test in Mac Build
3. move path_lib.h from onnx_test_runner source dir to onnxruntime_framework
4. Enable memory planner for string tensors
5. Make memory planner always enabled, to simplify model loading logic
6. Delete some duplicated code between onnxruntime_perf_test and onnx_test_runner
7. Delete win_getopt_mb lib.
8. Remove the dependency on Pathcch lib, which is only available on Windows 8 and newer.
* added packaging pipeline
* Update win-ci-pipeline.yml for Azure Pipelines
* Update win-ci-pipeline.yml for Azure Pipelines
* Update win-ci-pipeline.yml for Azure Pipelines
* Update win-ci-pipeline.yml for Azure Pipelines
* Update win-ci-pipeline.yml for Azure Pipelines
* Update win-ci-pipeline.yml for Azure Pipelines
* Update win-ci-pipeline.yml for Azure Pipelines
* Update win-ci-pipeline.yml for Azure Pipelines
* put the c-api header file at root instead of under core/session
* Update win-ci-pipeline.yml for Azure Pipelines
* Update win-ci-pipeline.yml for Azure Pipelines
* Update win-ci-pipeline.yml for Azure Pipelines
* parameterize the windows build script
* Update win-package-pipeline.yml for Azure Pipelines
* fixed indenting
* fixed indenting
* fix parameter reference syntax
* try using arch = amd64 for the vcvarsall
* remove duplicate tasks
* use vcvarsall
* some more refactor
* fix typo
* fix typo
* factored out the packaging step into a template
* add x86 build to package pipeline
* use amd64 for vcvars arg
* added gpu pipeline. added msbuild platform param
* fix the msbuild platform
* use amd64 host for x86 build
* use buildarch=x86 for vcvarsall
* remove vcvars from setup steps
* add some logging for PNG lib, and disable fns_candy demo for win32
* set allocator alignment to 32 bit for win32 compiler
* disable parallel execution test for x86
* use 64 bit toolchain for x86 build
* add missing -T flag for toolset
* fix string delimietr in workingdirectory name for package build test step
* fix gpu pipeline
* make io_types test conditional
* use cuda 10 instead of cuda 9.1, similar to the ci build
* try some workaround on the io test
* undo inadvertent local change in build.py, also reenable the io test
* make all test run single threaded
* blacklist few failing tests for x86
* added some log in build.py
* edit build.py to disable parallel test
* add the failed tests into the blacklist for win32
* add tf_pasnet_large to blacklist
* change control flow for build.py onnx tests
* add README, license and TPN to the package
* updated build.py test sequence for parallel executor
* updated onnx test flow as per review comment
* add type checking log in the compare_mlvalue
* fix type cast
* blacklist some failed test as of now
* one more blacklisted test
* minor changes for ValidateInput in inferencesession level api.
* update
* valid real graph input and don't validate initializers
* refine the validation logic.
* remove the unnecessary validatation test.
* ensure that the exact input feeds provided from caller.
* fix tests.
* fix c# test failure.
* fix test case
* don't verify the error message which is hard to maintain.
* fix c# test case
* c# test
* c# test
* fix test cases.
* test update
* update packaging numpy version to 1.15.0
* update version in numpy version in linux
* Install numpy 1.15.0
* Finish up numpy requirement after test
* Try fix
* Fix ci script
* Initial commit
* Adding shrink tests
* Fix formatting in shrink_test.cc
* Fix broken build
* More changes
* PR feedback and formatting
* Place files in the right location corresponding to def file location in onnx
* Exclude shrink model test in test_series.py
* Remove shrink from exclusion list in main.cc
* Adding test to exclusion list
* More tests
* Formatting
* PR feedback
* PR feedback
* More changes
* PR feedback
* More changes
* Fix broken build
* Fix nit
* Fix nit
* Break dependency on SessionState for ExecutionFrame and OpKernelContext so optimizers can execute a node with a minimal setup.
- Create IExecutionFrame
- split out core logic and interface from extended logic used in full Graph execution (that uses allocation plan and memory pattern planner)
- Update NodeIndexInfo to allow contruction from a subset of nodes
- split out logic from GraphNodes into a re-usable template so it can be used with a vector of const Node* as well as a vector of unique_ptr<Node>
- Remove SessionState from OpKernelContext
- Misc cleanups
- move AllocPlanPerValue out of SequentialExecutionPlan as it's used in a more generic manner that isn't specific to a sequential execution plan
NOTE: I manually tested the new paths, especially NodeIndexInfo. There will shortly be optimizers added that use the new infrastucture so they'll get test coverage as part of those changes.
* Fix linux build issue.
Handle graph with no nodes in NodeIndexInfo.
* Add ability to enable caching to the C API, and update the internals to pass the feed names and MLValue instances in vectors so the order is deterministic (so cache entry matching works as expected).
* Address PR comment and don't use 'bool'
* Remove meaningless C# test around duplicate input.
We _could_ check input names for duplicates (previously we did this via the usage of unordered_map), but the system will gracefully handle with the duplicate anyway (will just use the last value provided for the input name).
Based on that, I don't think the cost of checking for duplicates is worth it.
* Fix c-style cast in test_run_options.