aboutsummaryrefslogtreecommitdiff
path: root/CMakeLists.txt
AgeCommit message (Collapse)Author
2021-02-12IVGCVSW-4893 Refactor ILayerVisitor using unified interface strategy.Finn Williams
Signed-off-by: Jan Eilers <jan.eilers@arm.com> Signed-off-by: Finn Williams <Finn.Williams@arm.com> Signed-off-by: Francis Murtagh <francis.murtagh@arm.com> Change-Id: Id7bc8255a8e3f9e5aac65d510bec8a559bf37246
2021-02-09MLCE-347 'REDUCE_MIN, REDUCE_MAX, REDUCE_SUM Support'Sadik Armagan
* Added TfLiteParser support for REDUCE_MIN and REDUCE_MAX operators * Added ACL workloads support for REDUCE_MIN, REDUCE_MAX, and REDUCE_SUM operators * Added TfLite Delegate support for REDUCE_MIN, REDUCE_MAX, and REDUCE_SUM operators Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I8085d59946bfd4ab78a59a61f899031ae53371a8
2021-02-08IVGCVSW-4901 Add semantic versioning to Parsers and TfLite DelegateMatthew Sloyan
* Added Version.hpp to all Parsers * Added Version.hpp to TfLite Delegate * Updated CMakeLists to use new versions * Added GetVersion method to parsers and TfLite Delegate Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Change-Id: If29e1e6d9e615f9095ec1c01ad47acfff40b1dd5
2021-02-06ArmnnConfig.cmake install to correct directoryKeith Mok
Signed-off-by: Keith Mok <ek9852@gmail.com> Change-Id: I9b1037275379bdbf452589357576cfa763b7c128
2021-02-03backends/reference: Add ReduceSum operation supportSadik Armagan
This patch addes ReduceSum operation support for reference backend, which computes the sum of elements across dimensions of a tensor. Changelog v1: - Fix file header descriptions. Chagelog v2: - Fix line limit issue. - Fix type conversion issue. Changelog v3: - Remove tabs. - Modify newly added file headers. Changelog v4: - Symbol on header isn't allowed so drop it from newly added file headers. Changelog v5: - Remove tabs, fix the use of brackets and align lines correctly. Changelog v6: - Add serializer and deserializer support. Changelog v7: - Fix build error add missed code. Changelog v8: - Rename ReduceSumDecriptor to ReduceDescriptor - Update m_KeepDims field data type to bool on ReduceDescriptor - Add ReduceOperation field to ReduceDescriptor - Rename ReduceSumLayer to ReduceLayer - Update ReduceLayer to use ReduceDescriptor - Update ReduceLayer::ValidateTensorShapesFromInputs() function - Rename RefReduceSumWokload to RefReduceWorkload - Update workload to use ReduceDescriptor - Update workload to use Decoders and Encoders - Remove ReduceSum.hpp and ReduceSum.cpp - Added Reduce.hpp and Reduce.cpp - Move Mean.cpp (which is implementing REDUCE_MEAN) functionality to Reduce.cpp - Update RefMeanWorkload to call Reduce function with ReduceOperation::Mean argument - Remove Mean.hpp and Mean.cpp - Update the Serializer/Deserializer ArmnnSchema.fbs for ReduceLayer, ReduceDescriptor, and ReduceOperation - Update Serializer and Deserializer for serializing/parsing ReduceLayer - Added TfLiter parser Sum test for REDUCE_SUM operator - Make corresponding changes on front-end and Ref backend to support REDUCE_SUM operator Changelog v9: - Fixed build errors. Change-Id: I8c8e034f3df73f9565b3c18eff51ecca6c542195 Signed-off-by: Inki Dae <inki.dae@samsung.com> Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
2021-01-22MLCE-335 'DEPTH_TO_SPACE and GATHER operator support in TfLiteParser'Sadik Armagan
* Added GATHER operator support to TfLiteParser * Added DEPTH_TO_SPACE operator support to TfLiteParser Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: Id5d3b54e2d850eb9f19417029efbeb73a3029e69
2021-01-13Fix build breaks on file insensitive systemKeith Mok
Current we use 'A'rmNNQuantizer name for executable and 'a'rmNNQuantizer as library name. Since cmake does not allow same name for executable and library. The old way is to use a captial letter for the executable name. But it will create a problem on system (like macosx) that the file system is case insensitive by default. Since it will create/overwritten file on the same folder during the cmake build which makes build failed when BUILD_ARMNN_QUANTIZER is enabled. Fixed this by using ArmNNQuantizerMain as the executable name during build, then rename it back to ArmNNQuantizer using set_target_property OUTPUT_NAME function. Signed-off-by: Keith Mok <ek9852@gmail.com> Change-Id: I3e0779770c851c0eb6804e300a24836be955d07a
2020-11-30IVGCVSW-5587 Remove Tensorflow requirement from Arm NN TfLite delegateFinn Williams
* Added support for building the delegate with an external armnn path * Replaced potentially troublesome package manager * Explicitly set the privacy levels of delegate libraries * Fixed some error handling in ExecuteNetwork Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I2a7abc099796012cbb043c5b319f81778c9f3b56
2020-11-17IVGCVSW-5377 Add ArmNN TfLite delegate to ExecuteNetworkSadik Armagan
* Added package manger to turn internal calls to find_package into a no-op * Changed delegate cmake so it can now be built within armnn Change-Id: I2a7ecb9a3c1ca05474cd1dccd91498f6f6c0b32e Signed-off-by: Finn Williams <Finn.Williams@arm.com> Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
2020-11-13IVGCVSW-5328-5329 Fuse ActivationMike Kelly
* Added Fused Activation Optimization to both CL and Neon backends. * Added Fused Activation support to all the CL and Neon workloads that support it. * Changed ProfilingTest network to be a Convolution layer followed by an Abs layer rather than an Activation layer. * Added IBackendInternal::OptimizeSubgraphView function that can accept a ModelOptions. * Network will now call OptimizeSubgraphView passing in the ModelOptions. Signed-off-by: Keith Davis <keith.davis@arm.com> Signed-off-by: Mike Kelly <mike.kelly@arm.com> Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: Ib536ac3cbafc7d9b35c139ad9a65b7735262cd9d
2020-11-09IVGCVSW-5091 Add Logical ops frontend and ref implJames Conroy
* Add frontend and reference implementation for logical ops NOT, AND, OR. * Unary NOT uses existing ElementwiseUnary layer and ElementwiseUnary descriptor. * Binary AND/OR uses new layer LogicalBinary and new LogicalBinary descriptor. * Add serialization/deserializion support and add missing ElementwiseUnary deserializer code. * Add additional Boolean decoder in BaseIterator.hpp. Signed-off-by: James Conroy <james.conroy@arm.com> Change-Id: Id343b01174053a166de1b98b6175e04a5065f720
2020-11-02IVGCVSW-5476 Fix Fuse_batchNorm_into_Conv2D_Float32_TestTeresa Charlin
* failing with no backends provided Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: I55ebfc52268ad667e495831c64977338d003db99
2020-10-29IVGCVSW-5468 Rewrite QuantizationDataSet.cpp to avoid use of CsvReaderJames Ward
* Remove armnnUtils/CsvReader and usage * Remove armnn/CsvReaderTest and usage * Replace functionality in QuantizationDataSet.cpp Signed-off-by: James Ward <james.ward@arm.com> Change-Id: I7213904482afa93ae6d607aa5e69117c8c34ea81
2020-10-29IVGCVSW-5265 Remove boost from core ArmNN CMakeColm Donelan
* Remove all but Boost_UNIT_TEST_FRAMEWORK_LIBRARY from ArmNN Cmake files. * Remove references to boost::fpc from old test applications. Signed-off-by: Colm Donelan <Colm.Donelan@arm.com> Change-Id: Ibb1261dee4b971d1788d2805528aa800a8b883ce
2020-10-28IVGCVSW-5433 Remove boost::transform_iterator and make_transform_iteratorFinn Williams
Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I28aace7092cff5743353df1b1de8e7a4691554d3
2020-10-28Bugfix: Don't try to link pipeCommon if it's not being builtFrancis Murtagh
* If BUILD_TIMELINE_DECODER=0 it gave /usr/bin/ld: cannot find -lpipeCommon Signed-off-by: Francis Murtagh <francis.murtagh@arm.com> Change-Id: Ib10e894c54f32370a96b702a6f1b462fda31388b
2020-10-27IVGCVSW-5077 Ensure ArmNN builds successfully with latest protobufNikhil Raj
* Use the single parameter version of SetTotalBytesLimit() * Update CMakeLists to turn off deprecated declarartions Signed-off-by: Nikhil Raj <nikhil.raj@arm.com> Change-Id: I2d360966743986872cfef40c2ab1a3505fc5d99a
2020-10-21Add IDeserializer support in pyarmnnwangg
Resources required for new unit tests are included for review. Signed-off-by: Guanqun Wang gemini910621@gmail.com Change-Id: Iead6cb5beaf824a6f467ad9da4aede5719ebe4ec
2020-10-16IVGCVSW-5435 Add FloatingPointComparison to remove boost::math::fpc usesMatthew Sloyan
* Added FloatingPointComparison.hpp and FloatingPointComparisonTest.cpp, which compares two floats and returns true if the values are within a specified or default tolerance of each other. * Also removed boost::math::fpc from test/TensorHelpers.hpp to validate. Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Change-Id: I164c32eccd213c53bb1bc4f9cd4ee4838f1781c9
2020-10-08IVGCVSW-5363 Add Unmap layer and Unmap workloadJim Flynn
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Signed-off-by: Jim Flynn <jim.flynn@arm.com> Change-Id: Ie5ecfa67e4763d0c058905592fe2e2fd7315f85c
2020-10-07IVGCVSW-5362 Add Map layer and Map workloadJim Flynn
Signed-off-by: Jim Flynn <jim.flynn@arm.com> Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Id2227c58809b84c7a7af61f7c0d88ad7d45ce558
2020-09-30IVGCVSW-4519 Remove Boost Variant and apply_visitor variantJames Ward
* add mapbox/variant third party package Signed-off-by: James Ward <james.ward@arm.com> Change-Id: I181302780edd9dace40f158a11327316a12ce69a
2020-09-29IVGCVSW-5295 Change fmt to be a header-only interface libraryJan Eilers
* Fix non-virtual-dtor warnings in fmt * Fix wrong fmt include in TfParser * Make fmt work in nn-driver * Make fmt a header-only interface library * Link fmt where necessary Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: I9db7cd9a133a81262cbf79f04fb419ab97b88ea8
2020-09-15IVGCVSW-5305 AddBroadcastReshapeLayer as optimizerNarumol Prangnawarat
* Remove AddBroadcastReshapeLayer from TfLiteParser * Add AddBroadcastReshapeLayer as optimizer * AddBroadcastReshapeLayer optimizer unit tests * Load-scope dynamic tensor broadcasting unit tests Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I3549e85b71b41cbd4d96c0f1ece7887acbca76d1
2020-09-08IVGCVSW-5244 Load-scope dynamic tensor TfLite testsNarumol Prangnawarat
* Infer tensor shapes at the beginning of Optimize function * Unit tests Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I511f1228a12ebcad570e42a0c46d461ab9ccdc2c
2020-08-27Export Armnn cmakeDerek Lamberti
Change-Id: I3c317e835aba5feafda240393ca26b6aebe8d655 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2020-08-14Fix linker err missing boost filesystem libraryAyan Halder
One needs Boost filesystem library to build armnn.so and GatordMock Signed-off-by: Ayan Halder <ayan.halder@arm.com> Change-Id: I108910047fa723e26c87ed6b1e9d401fae3e985e
2020-08-14Fix linker err missing boost filesystem libraryJim Flynn
Change-Id: I6b09b80cfde86cb0f496aa95a47b13ae30d5d99b Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2020-07-30IVGCVSW-5171 Change library name to allow adbPushJim Flynn
Change-Id: Ifc79b433dfcc034822cfb538102b936987e382c8 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2020-07-29IVGCVSW-5166 Pull out the common and server side code into standalone librariesJim Flynn
Change-Id: I180f84c493a9b2be4b93b25d312ebdd9e71b1735 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2020-07-23IVGCVSW-5165 add the fmt library to third-party folderJim Flynn
Change-Id: I5519ce6c7811152a6b534898b9fdbaf5214c28d5 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2020-07-10IVGCVSW-4929 Implement ShapeInferenceMethod in all LayersFinn Williams
Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I2c2d99f97cf89814140b057a9f93f41b364197f5
2020-07-09IVGCVSW-5095 Make timeline report the Linux Thread ID not the pthread IDJim Flynn
Change-Id: Id69519fd9ef57716de4e389ed4156710a904c701 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2020-07-06IVGCVSW-4624 Add a RANK Reference ImplementationFinn Williams
* Add Rank front end * Add Rank reference implementation * Add Rank serialization support * Add Scalar serialization support Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I06e4a468c2a84e79bae2e6c5348596bbbf853b4b
2020-06-30IVGCVSW-4487 Remove boost::filesystemFrancis Murtagh
* Replace filesystem::path * Replace filesystem::exists * Replace filesystem::is_directory * Replace filesystem::directory_iterator * Replace filesystem::filesystem_error exception * Replace filesystem::temp_directory_path * Replace filesystem::unique path * Replace filesystem::ofstream with std::ofstream * Replace filesystem::remove * Replace filesystem::is_regular_file * Replace boost::optional with armnn::Optional in touched files * Remove some superfluous includes * Update build guides, GlobalConfig.cmake and CMakeLists.txt * Remove redundant armnnUtils::Filesystem::Remove function. * Remove redundant armnnUtils::Filesystem::GetFileSize function. Temporarily adding back Boost::filesystem to enable Boost::dll. Signed-off-by: Francis Murtagh <francis.murtagh@arm.com> Signed-off-by: Colm Donelan <Colm.Donelan@arm.com> Change-Id: Ifa46d4a0097d2612ddacd8e9736c0b36e365fb11
2020-06-26IVGCVSW-4171 Makes DumpOutgoingValidFileEndToEnd test work reliablyJim Flynn
Change-Id: I51f244467a7b562344f04b910fe5be5e2ec0e3dc Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2020-06-19IVGCVSW-4488 Adding cxxopts to third-partyJan Eilers
* as alternative for boost::program_options * added to cmake * added to TPIP list in readme.md Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: Id8c6a12c988196cdac55650bc4761c08a39b3abb
2020-06-17IVGCVSW-4908 Add Serializer/Deserializer Support for FILL operatorKeith Davis
Signed-off-by: Keith Davis <keith.davis@arm.com> Change-Id: Icae26505d0e378ee5ffb3e92b35d78d48b369d2e
2020-06-11IVGCVSW-4906 Add front-end support for FILL operatorRyan OShea
* Added new fill layer * Added visitor tests Signed-off-by: Ryan OShea <Ryan.OShea2@arm.com> Change-Id: Iea677014866b4f2d514004623f59ee83f3c0eef8 Signed-off-by: Keith Davis <keith.davis@arm.com>
2020-06-09IVGCVSW-4968 Fix exception handling in TfLiteParser.Colm Donelan
* The function TfLiteParser::CreateNetworkFromModel was continuing to parse the input file even after a fatal exception was encountered. restructure catch exceptions outside the for loop. * Add simple unit tests to test some exception handling. Signed-off-by: Colm Donelan <Colm.Donelan@arm.com> Change-Id: I202ca6819d40a47159b4ac8f2847958f945666c2
2020-06-02IVGCVSW-4190 Add SplitV to Tflite ParserRyan OShea
* Refactored SplitV * Added unit tests * Updated Documentation Signed-off-by: Ryan OShea <Ryan.OShea2@arm.com> Change-Id: If1dfa5a8780ddf3fe8788ed7bf7fa5fa8dfd14ec
2020-06-02Tidy up uses of Windows.h by adding WindowsWrapper.hppRob Hughes
This header brings in the Win32 API header, with some small modifications applied to prevent clashes with our code. This means those modifications don't need to be made in each place that we bring in Windows.h Change-Id: Ie817c7a167eccbe1ac6a49d3fc940eef8b2f534d Signed-off-by: Robert Hughes <robert.hughes@arm.com>
2020-05-27Add NEG support to TFLite parserDarshan Patel
* Added unit tests * Updated Documentation Signed-off-by: Darshan Patel <darsh.jp@gmail.com> Change-Id: Id22ffebe60732a93798f72801eb8a2a23cdd7ec0
2020-05-27IVGCVSW-4187 Add LEAKY_RELU to TFLite parserSadik Armagan
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com> Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I3e934142487b92897eb487099a22d032f80e8e07
2020-05-26IVGCVSW-4595 Change FileOnlyProfilingConnection to all packet processor modelJim Flynn
Change-Id: Ieccb26190d80e570ddef8d7c22e824eda1b92d7f Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2020-05-25Add DIV support to TFLite parserDarshan Patel
* Added unit tests * Updated Documentation Signed-off-by: Darshan Patel <darsh.jp@gmail.com> Change-Id: Iadb5c76139d74d755d7f4be4b023b4417efe1e92
2020-05-25IVGCVSW-4186 Add EXP unit tests for TfLiteParserRyan OShea
* Updated Documentation * Created unit test file Signed-off-by: Ryan OShea <Ryan.OShea2@arm.com> Change-Id: Ic8384b5ed21ac53f918860be8a98c0ac7477d0e1
2020-05-21Integration of PyArmNN into CMakePavel Macenauer
Change-Id: Ice37e693f4598a6b3c38bd38d89f1d35cdaa8a18 Signed-off-by: Pavel Macenauer <pavel.macenauer@nxp.com>
2020-05-19Fix some Windows build errors:Rob Hughes
* Cast to correct datatype for Winsock API * Replace non-standard u_int32_t * Add missing link dependency of timelineDecoder on armnn * Don't try to link pthread if the platform doesn't have it * Use abstracted Socket type rather than int * Link to WinSock DLL on windows Change-Id: I9ace4af50257ce1e3da92fb4c452f36775dac973 Signed-off-by: Robert Hughes <robert.hughes@arm.com>
2020-05-15IVGCVSW-4831 Fix Packet header includes in backendsFinn Williams
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com> Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: Iedfcf0ef487bd7836b1bc4ba8a0e4337dc4da391