aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-11-10MLIA-411 Report Cortex-A operator compatibilityBenjamin Klimczak
Check input model for Arm NN TensorFlow Lite Delegate 22.08 support. Change-Id: I1253c4c0b294c5283e08f0a39561b922ef0f62e6
2022-11-09MLIA-698 Update RELEASES.mdDiego Russo
Update RELEASES.md for upcoming 0.5.0 release Change-Id: I3179aeda828d8cdb2a9977adcfa6aeb9517186c0
2022-11-09MLIA-275 Remove support for CSV outputBenjamin Klimczak
Change-Id: I212c9cad5f2ac28b75b1d9e2fb8f1f8b444b8397
2022-11-09MLIA-675 Re-position inclusive language sectionRaul Farkas
* Fix minor typo * Position inclusive language section at the top of the README.md Change-Id: I90538a497d1acbac3463e9af7eb00091337c69d3
2022-11-08MLIA-675 Add inclusive language section to READMERaul Farkas
Change-Id: If922df0eb21b988da2fa377008c1777499a266c1
2022-11-08MLIA-630 Fix links to other files in README.mdRaul Farkas
* Update setup.py to replace relative paths in README.md with links to files on review.mlplatform.org * Add a mechanism that replaces relative paths to images with the link to the plain image on review.mlplatform.org Change-Id: Ifeb17e3c03e8366bd12665eb9f4a630fc9933e26
2022-11-07MLIA-688 Fix --supported-ops-report flagRaul Farkas
* Add `api.generate_supported_operators_report` that calls a report generator based on given target profile. * Update `--supported-ops-report` cli flag help section and README.md info by specifying that it is currently only supported for Ethos-U. * Add tests for `generate_supported_operators_report` method. * Add stub methods `report` for Cortex-A and Tosa operators.py module that throw a "Not supported" exception. Change-Id: Iaf373fe48299d807e48fd6a0e6c029ce32203f4f
2022-11-02Add links to other reasurces in README.mdRaul Farkas
* Add link to SECURITY.md and RELEASES.md in the Resources section of README.md Change-Id: I16c5d31f11297c4f62cb62a586b3aaf6f7363e44
2022-11-01MLIA-681 Add pip.conf as secret on docker buildRaul Farkas
* Update commands that use pip to install python packages by mounting a pip.conf file (where available). Change-Id: Id76c03d6970ea927cea1078f4954f0733534e257
2022-10-26MLIA-433 Add TensorFlow Lite compatibility checkDmitrii Agibov
- Add ability to intercept low level TensorFlow output - Produce advice for the models that could not be converted to the TensorFlow Lite format - Refactor utility functions for TensorFlow Lite conversion - Add TensorFlow Lite compatibility checker Change-Id: I47d120d2619ced7b143bc92c5184515b81c0220d
2022-10-21MLIA-671 Update generic inference runner to 22.08Diego Russo
Due to the new version of Corstone-310, the generic inference runner has been updated to 22.08: * The inference runner 22.08 doesn't have timing adapters because incompatible with new version of Corstone-310 * Remove some memory mode logic which is not needed anymore * Corstone-310 allows to run Ethos-U65 simulation hence adding the binary for enabling this case * Delete the inference runner 22.05 * Fix codebase and tests to cope with changes above Change-Id: I3dc894d7cb49b09102a19b0d7f588694a0f3b99f
2022-10-18MLIA-409 Create new Cortex-A device skeletonRaul Farkas
* Add Cortex-A device skeleton * Add unit tests for the Cortex-A device skeleton * Update profiles.json by adding the new "cortex-a" profile * Add new cortex-a factory to the get_advisor method in api.py * Disable performance and optimization commands for the cortex-a profile. * Update trademarks section in README.md * Update pyproject.toml to not run similarity check in imports Change-Id: I2e228aaada1e2d3c5cc329d70572b51962ff517f
2022-10-17MLIA-646 Add environment to setup pre-commit hooksBenjamin Klimczak
- Add new environment 'lint_setup' to set up the pre-commit hooks used by the environment 'lint' without running the actual tests. - Add docker file for linting and testing to the project root. - Add helper script 'install_python_versions.sh' for docker creation. Change-Id: I5f264df72a72d7a118ab798eddcf0febd4e1125b
2022-10-07MLIA-607 Update documentation and commentsDmitrii Agibov
Use "TensorFlow Lite" instead of "TFLite" in documentation and comments Change-Id: Ie4450d72fb2e5261d152d72ab8bd94c3da914c46
2022-10-06MLIA-619 Use --build-option flag when building MLIADiego Russo
Replace --global-option flag with --build-option flag to pass the platform name when building MLIA. Change-Id: I4b66a6480e0713070c5db35d4301a0129c5af330
2022-10-05MLIA-622 Fix TOSA checker dependencyRaul Farkas
Change TOSA checker dependency in setup.cfg from "tosa_checker" to "tosa-checker". Change-Id: I52f7e545c3e4c0d8e70118b85c7c549568f17bc4
2022-10-04MLIA-670 Use importlib for getting package versionDmitrii Agibov
Change-Id: I2ce8ccebf8a9972d9936164ae52912044c682633
2022-10-04MLIA-673 Use inclusive language in the source code and filenamesDmitrii Agibov
- Update configuration for inclusive language linter - Fix reported issues Change-Id: If0f8b6e20c17d8ee1c6179c61040fc351437f036
2022-10-04MLIA-580 Fix test that produces untracked filesDmitrii Agibov
- Create separate test for the application execution, update test application configuration file - Use simple mock object in the test for the backend manager Change-Id: Ia0f7f29d43a55223d7b2fb47348b0779a26e2268
2022-09-30MLIA-647 Fix backend install for Corstone-300 on AVH/VHTGergely Nagy
- Remove the extra 's' character which broke the path detection mechanism when installed from /opt/VHT location on AVH instances - Add unit tests to make sure we fixed the problem Change-Id: Ic33a3c6c4d2b33181268d0efbc0324962e741dd4
2022-09-21MLIA-618 MLIA performance for Ethos-U65-256Ruomei Yan
- added the target profile for ethos-u65-256 - modified the unit tests regarding target profiles - updated the README.md Change-Id: I0f6b50199e735a18f0b436d291c871e1fa0460dd
2022-09-20Make python syntax consistent across codebaseDmitrii Agibov
- Use pyupgrade tool for the syntax upgrade Change-Id: I3b9ae6cc5da193329e37028cde967ae049388361
2022-09-14MLIA-571 Use tox to run additional project tasksBenjamin Klimczak
- Remove coverage from the pre-commit hooks as it takes too long and is not really suited to be a pre-commit hook - Added tox environments: - 'coverage': Run the code coverage. The code coverage was moved from the pre-commit hooks to tox. - 'lint': Run the pre-commit hooks - 'build': Build a distribution of MLIA - 'docs': Create documentation from the source code. Directory docs/ was added and copyright and license information add to files. Change-Id: Ife92b68043295ce41a0f2352ee2b2878329f4953
2022-09-09MLIA-386 Simplify typing in the source codeDmitrii Agibov
- Enable deferred annotations evaluation - Use builtin types for type hints whenever possible - Use | syntax for union types - Rename mlia.core._typing into mlia.core.typing Change-Id: I3f6ffc02fa069c589bdd9e8bddbccd504285427a
2022-09-02MLIA-602 Fix output formatting issueDmitrii Agibov
Apply the same formatting rules for each section in the output of the command "backend status" Change-Id: I253c513f99826ef1eb916285ca4c2cc1840633ac
2022-09-02MLIA-496 Define incident response planRaul Farkas
- Add a SECURITY markdown file containing information about how to report securty issues. Change-Id: Iea9aaefa9f9676142f6d5fc0b432cc3c32cc4038
2022-09-01MLIA-506 Fix setuptools warning during wheel creationDmitrii Agibov
Use option "find_namespace" for the package discovery Change-Id: I22af45d348d6f56adcf0ce05219fbec820c559d1
2022-08-31MLIA-599 Enable testing for aarch64: unit testsRuomei Yan
- mypy issue: to make the comment #type: ignore platform specific, flags like platform.machine() cannot be recognized by mypy, so we cannot isolate the specific lines of code that fail mypy tests - numpy issue: for numpy version < 1.20, the function np.unique has not been type annotated, which caused mypy throwing the error when we run our unit tests in aarch64 - because of the above two reasons, we use function decorator to turn off type checking for entire functions to remove all annotations so that the mypy error for certain lines can be silented Change-Id: Id91e65ef7677b78b4c9c85b8412229e3672e3a66
2022-08-30MLIA-584 Enable testing for aarch64 packageRuomei Yan
Add conditional dependencies in setup.cfg so that the mlia package can be built in aarch64 Change-Id: I4d878255757818449ba0bda209233c6f9ba9f7d0
2022-08-25MLIA-615 Fix format in Trademarks and copyrightsBenjamin Klimczak
Fix formatting of Trademarks and Copyrights section in README. Change-Id: Idd9663fd05cdc9921908ea4a0781b48d19541b32
2022-08-19MLIA-539 Update README with compatibility matrix of backends0.4.0Ruomei Yan
Change-Id: I9f2ee03a5db79fcb14464c5f276d8790b1788bbd
2022-08-19MLIA-601 Update README after reviewRaul Farkas
- Remove `--layers-to-optimize` option from README as it is no longer available in the CLI. - Add `--evaluate-on` option in README for `mlia optimization` and `mlia performance` commands. - Update tosa_checker link with the correct one. Change-Id: Ifc19d244f3e11c24bfbcfd9838c671c13cf91d39
2022-08-19MLIA-597 Update RELEASES.md with 0.4.0 changesDiego Russo
Change-Id: If664be64246d3ca1821ef386828afd9eb419391b
2022-08-19MLIA-579 Add TOSA checker references in the READMEDiego Russo
Add repository and pypi urls of TOSA checker in the README. Change-Id: I83f73d72533485519d79ab8f44aaf80fa313e6b0
2022-08-19MLIA-548 Enable installation of the TOSA checkerDmitrii Agibov
Change-Id: I364527fd2d7990d37c6754907dd3609916e0a31c
2022-08-19MLIA-550 Enable TOSA checker in the CLIDmitrii Agibov
Change-Id: I9dfa9f17a93ac24be0aa9ad68e4a72b79aecfb9d
2022-08-19MLIA-549 Integrate TOSA checker into MLIADmitrii Agibov
- Add new module for TOSA - Add advisor workflow components - Use TOSA checker for getting operators compatibility information Change-Id: I769e5e2a84e15779658f0895b4a347384def63bf
2022-08-19MLIA-549 Refactor API module to support several target profilesDmitrii Agibov
- Move target specific details out of API module - Move common logic for workflow event handler into a separate class Change-Id: Ic4a22657b722af1c1fead1d478f606ac57325788
2022-08-09MLIA-541 Use tox to run unit testsBenjamin Klimczak
Add tox.ini to easily run unit tests with different Python versions. Change-Id: I2153cc7d1eaf49cad9739b6d797e4a6706679c7e
2022-08-04MLIA-583 Add RELEASES.md fileDiego Russo
The file contains the changelog of the different MLIA releases. Change-Id: I121bb5cbf927f35f234511de1756bd86d681dda5
2022-08-03MLIA-389 Enable bandit check in pre-commitDiego Russo
Add bandit to pre-commit and fix some bandit errors. We use the default security level (low) with few exceptions: * B101 assert_use: apart of tests, we use assert in our codebase hence we globally ignore error B101. * B404/B603: these are errors related to subprocesse and they are being ignored locally when used. * B604 Test for any function with shell equals true: we have disabled this locally because of its safe use in the tests. Change-Id: If654e5e92285f7c86ac210a6f1373dbab6be17c9
2022-07-26MLIA-551 Rework remains of AIET architectureBenjamin Klimczak
Re-factoring the code base to further merge the old AIET code into MLIA. - Remove last traces of the backend type 'tool' - Controlled systems removed, including SSH protocol, controller, RunningCommand, locks etc. - Build command / build dir and deploy functionality removed from Applications and Systems - Moving working_dir() - Replace module 'output_parser' with new module 'output_consumer' and merge Base64 parsing into it - Change the output consumption to optionally remove (i.e. actually consume) lines - Use Base64 parsing in GenericInferenceOutputParser, replacing the regex-based parsing and remove the now unused regex parsing - Remove AIET reporting - Pre-install applications by moving them to src/mlia/resources/backends - Rename aiet-config.json to backend-config.json - Move tests from tests/mlia/ to tests/ - Adapt unit tests to code changes - Dependencies removed: paramiko, filelock, psutil - Fix bug in corstone.py: The wrong resource directory was used which broke the functionality to download backends. - Use f-string formatting. - Use logging instead of print. Change-Id: I768bc3bb6b2eda57d219ad01be4a8e0a74167d76
2022-07-22MLIA-569 Update TensorFlow to version 2.8Raul Farkas
- Update TensorFlow to version 2.8 (now supported by Vela 3.4) - Adapt existing codebase to preserve intermediary tensors in the interpreter in order to avoid errors when trying to print all of them in the future. - Ignore types for numpy methods that do not have typing annotations in their definitions. This is needed because otherwise mypy would consider the calling function to also be untyped. Change-Id: I943ac196fd4e378f5238949b15c23a2d628c8b5e
2022-07-22MLIA-507 Upgrade Vela versionRaul Farkas
Upgrade Vela version from 3.3.0 to 3.4.0. - Adapt code to use new typing notation by replacing `numpy.array` with `numpy.ndarray` where necessary. Change-Id: I035e9564d448652aa09a52d79c71ef09663ea776
2022-07-20MLIA-529 Add pre-commit configurationRaul Farkas
- Add pre-commit configuration file that is used to run a series of hooks on the codebase. - Update setup.cfg to include required pre-commit library when installing MLIA with the [dev] extra require. Change-Id: I8e88cd2bae98c03c20a70a320e82d2eb38ce127c
2022-07-08MLIA-546 Merge AIET into MLIABenjamin Klimczak
Merge the deprecated AIET interface for backend execution into MLIA: - Execute backends directly (without subprocess and the aiet CLI) - Fix issues with the unit tests - Remove src/aiet and tests/aiet - Re-factor code to replace 'aiet' with 'backend' - Adapt and improve unit tests after re-factoring - Remove dependencies that are not needed anymore (click and cloup) Change-Id: I450734c6a3f705ba9afde41862b29e797e511f7c
2022-07-04MLIA-316 Specify cache arena size in the Vela memory profilesRuomei Yan
When running the e2e test of Wav2Letter, the tensor allocation failed. To resolve this, we changed the arena cache size to 2096768. This is due to the requirement in Vela. We need to make it aware of the memory limitation on the target we are deploying for. Change-Id: I192790033954058fa5db249452d998764df52663
2022-06-27MLIA-522 No 'perf' in mode 'all' for TFLite filesBenjamin Klimczak
Fix the issue that no performance information is shown for TFLite files when the mode 'all_tests' is used. Change-Id: I8b4df4ab84ba9783b582ad449a34bf6177037e14
2022-06-23MLIA-545 Make quantization non-strictBenjamin Klimczak
Use TFLITE_BUILTINS instead of TFLITE_BUILTINS_INT8 to make the quantization non-strict. Note: De facto this does not change the behavior of MLIA because the TFLITE_BUILTINS_INT8 is not correctly applied with the new quantizer. See: https://github.com/tensorflow/tensorflow/issues/56535 Change-Id: Ia0782ba22c5e9223fa10fec71c16aee60b79bb57
2022-06-09Update readme with new contents of --outputRuomei Yan
Change-Id: I00669320303020b1953b3ba505d108b87cb89327