Age | Commit message (Collapse) | Author |
|
Replaces the PAD operator by hardware padding when possible.
Change-Id: I9dce0885e51a4a73715824d7368637222e39b2b3
Signed-off-by: Louis Verhaard <louis.verhaard@arm.com>
|
|
- Reshape/rearrange IFM and weight tensor for better HW utilization
- Update estimator to cover this case
Change-Id: I4be70a69fa600a1951bf1c247f9973e6cc9b03f4
Signed-off-by: Diqing Zhong <diqing.zhong@arm.com>
|
|
Fix converting axis to 4D axis.
Signed-off-by: Patrik Gustavsson <patrik.gustavsson@arm.com>
Change-Id: I83501494738f402b374efd8a369e5001f17b8152
|
|
Fixes for MLBEDSW-3790, MLBEDSW-3792 and MLBEDSW-3794
3790: Fix for cpu ops has no op.ifm_shapes
- Check before added to pass
3792: Debug database, fix for cpu op with 5D tensor
- Do not try to convert to 4D
3794: Fix covert ResizeBilinear to 2x2 maxpool
-set ifm ofm shapes
Signed-off-by: Patrik Gustavsson <patrik.gustavsson@arm.com>
Change-Id: I9144dc77e2f6e5c3707c5bf2f204c1d13d5148ba
|
|
Ofm_shapes only set on operator for npu_ops.
Signed-off-by: Patrik Gustavsson <patrik.gustavsson@arm.com>
Change-Id: Iab98e24132f3a4004debce9013355e2ef16b0b6f
|
|
This reverts commit df0a5905177f3a1b836076bc3f9f39b2e86f1794.
Reason for revert: <INSERT REASONING HERE>
Change-Id: I891c66fb29db9d25e942947e8d1c29a10610de51
|
|
This reverts commit bf31d647dc5df47410ee577b12427ddf076d816b.
Reason for revert: <INSERT REASONING HERE>
Change-Id: I7b6c585b7658f94dbaa916c2b6bfe9fb463b8d37
|
|
Add 4D shape class for op Ifm/ofm shapes
Signed-off-by: Patrik Gustavsson <patrik.gustavsson@arm.com>
Change-Id: Ic0a98da9d2f9d085605e39a9ab5a26bad6e702a3
|
|
Add ifm/ofm shapes to op
Changed to rely on these shapes
Signed-off-by: Patrik Gustavsson <patrik.gustavsson@arm.com>
Change-Id: I571535a1dcadc2bdb04a3c727a8e1c49703b174d
|
|
Due to an issue with potential cyclical imports, especially when running
individual parts of vela standalone for example with pytest, the
specialised error functions are moved out of errors.py to their
respective locations.
The use of getattr over isinstance prevents the need to import the
tensor/operator class causing the cyclical import issue.
Signed-off-by: Michael McGeagh <michael.mcgeagh@arm.com>
Change-Id: If8cee4b1a2562660c6a47e1c7aeb5d7fd4dd1fca
|
|
Updated setup.py with Microsoft Windows support.
Change-Id: I8cb042002c5530601e7ce2b3c99d40342886c3a9
Signed-off-by: Fredrik Svedberg <Fredrik.Svedberg@arm.com>
|
|
Various updates to make vela run and produce identical output on
Microsoft Windows.
* Fixed overflow errors
* Fixed compile warnings
* Avoid problematic numpy version
* Updated README.md
Signed-off-by: Fredrik Svedberg <Fredrik.Svedberg@arm.com>
Change-Id: Ie48c63a92a00c81b3247d07f05b75d881319ddbb
|
|
Added __lt__ for Tensor to avoid errors when sorting tensors.
Change-Id: I19bb591ef17aa0d4a3389da411bd8863c2218d55
Signed-off-by: Louis Verhaard <louis.verhaard@arm.com>
|
|
Use an Enum instead of a bytestring to specify VALID or SAME padding
Signed-off-by: Michael McGeagh <michael.mcgeagh@arm.com>
Change-Id: I4e87f8c32b3bfac176d822a68de061e85a558fce
|
|
Signed-off-by: Diqing Zhong <diqing.zhong@arm.com>
Change-Id: I4a5c53d0c5957595fc639b174b2b227ea043d409
|
|
Minor refactoring to use fstrings.
Improve Error classes to correctly inherit the base class.
Use existing exception classes instead of plain exceptions where it
makes sense.
Signed-off-by: Michael McGeagh <michael.mcgeagh@arm.com>
Change-Id: I0941c04e91010da1db77299517a8e2d896371e77
|
|
This commit corrects a number of type errors
reported by mypy and refactors some parts of
the code which are no longer necessary after
making adjustments to satisfy mypy.
Signed-off-by: Dwight Lidman <dwight.lidman@arm.com>
Change-Id: I16b880b228e57f2a92fb8936f53e94886e0f9f44
|
|
- We have combined estimates for conv and fc, add the fix back
Change-Id: I49a29c716189b37b387df4b46efab5f4e6125994
Signed-off-by: Diqing Zhong <diqing.zhong@arm.com>
|
|
Added a new tensor allocator that is based on searching,
implemented in C++ (C++11 compatible).
Change-Id: Ie96e9fcfc8e6c58d1fa53911f37de290eeba88cf
Signed-off-by: Louis Verhaard <louis.verhaard@arm.com>
|
|
Change-Id: I1b35e039f43471cc0f61cb46ed4d5aff5469d11d
Signed-off-by: Louis Verhaard <louis.verhaard@arm.com>
|
|
Added pylint to pre-commit, but enabled only for scanning W0102
"dangerous-default-value".
Signed-off-by: Michael McGeagh <michael.mcgeagh@arm.com>
Change-Id: I49b887f6b862dd05fdcb465ae5097e5c2dc335aa
|
|
- Combine conv and vector_product calculation
- Remove internal bandwidth
- Remove blocks and hw_macs from report
- Use scaled_bws for cycle estimation
Related to: MLBEDSW-3598
Change-Id: I1927a8311ec563f68115e0f2ed077806b86fd717
Signed-off-by: Diqing Zhong <diqing.zhong@arm.com>
|
|
Added a new CLI option which simply force-enables all the other verbose
options available to vela
Signed-off-by: Michael McGeagh <michael.mcgeagh@arm.com>
Change-Id: I0dddbc86a76ea0de57266452f39fd0a5ca57eeb3
|
|
Replace conditional checks against sets with tuples.
If not requiring uniqueness, or complex set operations, it is quicker to
use tuples instead.
Signed-off-by: Michael McGeagh <michael.mcgeagh@arm.com>
Change-Id: Ie8732c8d46067244963936c53f0ec81adda50372
|
|
Move operator generation code to common functions.
Signed-off-by: Fredrik Svedberg <fredrik.svedberg@arm.com>
Change-Id: I02e185fd793a96ae435fa7d235c9d1e97f388a03
|
|
Fix signed/unsigned warning
Removed from README.md as it adds no value. The standalone tool is not
expected to be used by customers.
Signed-off-by: Michael McGeagh <michael.mcgeagh@arm.com>
Change-Id: I09034478a14c37d30874d5182a096591dfdd6eb2
|
|
Pylint W0102:
When a mutable value as list or dictionary is detected in a
default value for an argument.
Replace detected instances with None, and upon checking for None, sets
the default accordingly
Signed-off-by: Michael McGeagh <michael.mcgeagh@arm.com>
Change-Id: I4eb73d07d01d4cdefa586eb71b9c76746eee3b11
|
|
Replace exact instances, not just any occurance
Add ability to dump modified contents to a file "PYPI.md" to verify
changes are as expected.
To enable that mode, an environment variable is required to exist when
running pip or setup.py. e.g:
ETHOSU_VELA_DEBUG=1 pip install -e .
Signed-off-by: Michael McGeagh <michael.mcgeagh@arm.com>
Change-Id: Ia95530f38d5d78433c2d0e7c42bfff9532114285
|
|
Moved blockdep calculation and other helper functions for
code generation to a separate file.
Change-Id: I2f8ccea478654272ebf42217fc5c1800e9ad177a
Signed-off-by: Louis Verhaard <louis.verhaard@arm.com>
|
|
Changed to use f-strings for all generated name strings in Softmax.
Signed-off-by: Fredrik Svedberg <fredrik.svedberg@arm.com>
Change-Id: I6a380eacb7ca4c56da735bc0eb2a1fb230e6cc22
|
|
Instead of just detecting MD files, detect any local files by checking
if they exist
Signed-off-by: Michael McGeagh <michael.mcgeagh@arm.com>
Change-Id: I02bd790b5bb148abfe16e4bdb3e38e68750cfb94
|
|
Signed-off-by: Jacob Bohlin <jacob.bohlin@arm.com>
Change-Id: I5c32b17caa8155e99387195732ce0141030d5599
|
|
Minor fix in SPLITV tensor indexing for supported operators check.
Signed-off-by: Jacob Bohlin <jacob.bohlin@arm.com>
Change-Id: If8fa702bfbb25a4a7e5bdb136a19ef72eec7e1c2
|
|
- Updated for 20.11 release
Signed-off-by: Tim Hall <tim.hall@arm.com>
Change-Id: I24332b83a72250dfc64a245be796ed0f618a4234
|
|
- Changed to --cache-bias-scale-tensor
Signed-off-by: Tim Hall <tim.hall@arm.com>
Change-Id: I285fe253f03ba98eff36dbe996ad3a57e2ee3d99
|
|
Default arch instances are cached as they are expensive to create,
and they are created often when using the external APIs.
Change-Id: I16802fa767e6750da4227c6266d7c4453c047001
Signed-off-by: Louis Verhaard <louis.verhaard@arm.com>
|
|
Blockdep calculation can now handle different sized IFM/OFM.
Change-Id: I898a3c1c3a6778916802f3dbfa658328e5093096
Signed-off-by: Louis Verhaard <louis.verhaard@arm.com>
|
|
Reordered based on order of --help output
Matched consistency with boolean types
Added Ethos-U65 accelerator configs
Signed-off-by: Michael McGeagh <michael.mcgeagh@arm.com>
Change-Id: I9b3f50e6be37c689da11bb418961d02d4e892b4b
|
|
Signed-off-by: Michael McGeagh <michael.mcgeagh@arm.com>
Change-Id: I9fe5504dd725f6c5caa55e623391d0a70c4c59ef
|
|
Do not use DMA for weights of a FullyConnected op that has
been converted to a Conv2D.
Change-Id: Ibf6710c0a1723c8b48c563ca204f274af5ca88ce
Signed-off-by: Louis Verhaard <louis.verhaard@arm.com>
|
|
This commit adds a constraint to FullyConnected
ops in supported_operators.py that puts any
such op on the CPU if tensor dimensions of the
output(s) are not 2D.
Signed-off-by: Dwight Lidman <dwight.lidman@arm.com>
Change-Id: I8c898a780b40fc4a1383c09213f0696ea6699b7d
|
|
Added public API function npu_find_block_configs.
Change-Id: Ib0925a62d7c5d19a9b9fbd8d808943c2ea2df02f
Signed-off-by: Louis Verhaard <louis.verhaard@arm.com>
|
|
-Fix for end_coord for upsampling
-Remove restriction for ifm streaming
-Added restriction for cascading on ResizeBilinear
Signed-off-by: Patrik Gustavsson <patrik.gustavsson@arm.com>
Change-Id: I384abf12cfe8ac9ce7b76066b709600ea901b248
|
|
- Added API.md that describes the external APIs.
- Renamed npu_get_api_version
Signed-off-by: Louis Verhaard <louis.verhaard@arm.com>
Change-Id: I6e6e6103a889da656b4e00c3cce3eee60dfa844a
|
|
Instead of maintaining two almost identical readme files, have setup.py
read in the canonical README.md and modify it to replace the links
accordingly.
Signed-off-by: Michael McGeagh <michael.mcgeagh@arm.com>
Change-Id: Ia27cd48f3c945b3fac892ab1784ce394119968ac
|
|
- Improve conv estimation by adding delay cycles
- Estimate minimal block cmd cycles
Change-Id: Ibea818e8e820731fc7d05c948d5d1abd22e17089
Signed-off-by: Diqing Zhong <diqing.zhong@arm.com>
|
|
Changed so it is not allowed to do ifm-streaming for
TransposeConv and ResizeBilinear
Signed-off-by: Patrik Gustavsson <patrik.gustavsson@arm.com>
Change-Id: I85da279fae6202830c46e4a5500fb1b0dd6ef542
|
|
When printing a set in the docstrings for the SUPPORTED_OPS.md file, the
order is random.
Reuse existing sorted string repr for the operator list and apply to
other printed sets (data types)
Signed-off-by: Michael McGeagh <michael.mcgeagh@arm.com>
Change-Id: I2ac12ea91c2637219e5c24f9a863aa0fc2086e77
|
|
mlplatform uses gitiles, which in turn renders markdown differently:
"There must be at least three hyphens in each column of the header row"
Updated the generation code and the snapshot file to respect this,
as well as changed the link from commonmark (which does not support
tables)
Signed-off-by: Michael McGeagh <michael.mcgeagh@arm.com>
Change-Id: If31860ce8e38ebe7d68bfec61faff805fc00345b
|
|
Signed-off-by: Michael McGeagh <michael.mcgeagh@arm.com>
Change-Id: I2e8384a044ee5458bc8c92562153b6383de5f17a
|