aboutsummaryrefslogtreecommitdiff
path: root/cmake
AgeCommit message (Collapse)Author
2024-05-08MLCE-1271 Enable ACL build with OpenMP as default scheduler.Colm Donelan
Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I7d1156812c8765ffccd1cc2cabd4f9450f14f676
2024-04-23Add a build option to enable the OpenMP scheduler in ACL.Colm Donelan
Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I75ee45444cd2f7b895e564e78c29fe67c1a8a4fc
2023-12-07IVGCVSW-8157 - Rebase existing GpuFsa patches to 23.11David Monahan
Squashed commit of the following: IVGCVSW-7159 Add GpuFsa backend skeleton IVGCVSW-7380 Update the GpuFsa Skeleton to build and load ACL IVGCVSW-7381 Add IsLayerSupported implementation to GpuFsa backend IVGCVSW-7382 Implementation of Conv2d within GpuFsa Signed-off-by: James Conroy <james.conroy@arm.com> Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Signed-off-by: David Monahan <david.monahan@arm.com> Change-Id: Id23d9ee598535de7b38a99ca223cdf0ad2102cef
2023-11-24Update ACL pin to e30c8740d2da7af52ae1320f4d597ffc73d41c5eNikhil Raj
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com> Change-Id: Ic69532e6d9101c76a45898e8204aa1ed9bf97e91
2023-05-08Improve reusability of code that is defined out by cmake build pathsRyan OShea
* Added new ARMNN_STUB_PROFILING and ARMNN_DISABLE_DYNAMIC_BACKEND defines to replace BUILD_BARE_METAL and BUILD_EXECUTE_NETWORK_STATIC * Add new CMake variables to disable sample apps and dynamic backends * Improve BUILD_SHARED_LIBS CMake variable * Add new archive output location to various libraries so that the static libraries appear in the same location as the shared libraries * Fixes for bare metal build * Add ARMNN_DISABLE_FILE_SYSTEM defines to missing locations Signed-off-by: Ryan OShea <ryan.oshea3@arm.com> Change-Id: I1db9a8f483e7134bd261294b35240cf21b150d45
2023-03-28IVGCVSW-7555 Restructure DelegateTeresa Charlin
* New folders created: * common is for common code where TfLite API is not used * classic is for existing delegate implementations * opaque is for new opaque delegate implementation, * tests is for shared between existing Delegate and Opaque Delegate which have test utils to work which delegate to use. * Existing delegate is built to libarmnnDelegate.so and opaque delegate is built as libarmnnOpaqueDelegate.so * Opaque structure is introduced but no API is added yet. * CmakeList.txt and delegate/CMakeList.txt have been modified and 2 new CmakeList.txt added * Rename BUILD_ARMNN_TFLITE_DELEGATE as BUILD_CLASSIC_DELEGATE * Rename BUILD_ARMNN_TFLITE_OPAQUE_DELEGATE as BUILD_OPAQUE_DELEGATE Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: Ib682b9ad0ac8d8acdc4ec6d9099bb0008a9fe8ed
2023-03-22IVGCVSW-7526 Upgrade ArmNN to Tensorflow 2.12Ryan OShea
When creating a flatbuffers model, we need to provide an empty buffer 0 that is reserved by tensorflow. When creating empty buffers for inputs and outputs we can not pass in an empty vector, or tflite will assume that we know how many bytes to allocate in advance. Instead we need to only pass in the builder. * Update libraries in FindTfLite.cmake * Add nullptr to delegate struct for OpaqueDelegateBuilder * Fix issue in unit tests where Flatbuffers model was not being parsed by tflite * Tensorflow 2.12 now includes C++ 17 features. Update our cmake build to require a compiler to support these features. * Change minimum cmake in Arm NN to 3.7 as that's the minimum for the delegate build. Signed-off-by: Ryan OShea <ryan.oshea3@arm.com> Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I7d15b196b8c59b1914f8fc1c4c2f8960630c069c
2023-03-08Add Arm NN TFLite Opaque Delegate build flagMatthew Sloyan
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Change-Id: I42a6f1d59d270e26c76f74ca4a295a142151ca01
2023-01-23Refactor TOSA Common to be built without enabling the TOSA Reference backendMatthew Sloyan
* The only way to build TOSA common was to enable ARMNNTOSAREF. * Only include and link the required headers/libraries for TOSA Common. * Remove duplicate include_directories calls. Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Change-Id: Ia5a19bf5b0bb903be0248ac550439df1e8ac5aa7
2023-01-18IVGCVSW-7438 Not finding JNI libraries while building Arm NNNikhil Raj
* This issue was caused by https://review.mlplatform.org/c/ml/armnn/+/8771 * Not able to find the lib suffix due to condition set in GlobalConfig Signed-off-by: Nikhil Raj <nikhil.raj@arm.com> Change-Id: I176279757dce7ba8262342d69a6f550e383cf138
2023-01-06IVGCVSW-7031 Generate static execute networkRyan OShea
* Build ExecNet lib dependencies as object libs except libarmnn * Disable PIPE when building static ExecNet * Remove multiple definition from AsyncExecutionCallback * Disable DynamicBackend for ExecNet Static build * Disable inference tests for TfLiteParser and ONNX during static ExecNet * Remove Tensorflow Parser if condition * Add Disable thread macro to InferenceModel * Don't compile dynamic backend symbols in Runtime.cpp for Baremetal and Exenet Static Signed-off-by: Ryan OShea <ryan.oshea3@arm.com> Change-Id: If41c063eab5f05b3df0a6e064924a36a177f116a
2022-12-14Update TOSA Reference Backend IsLayerSupportedMatthew Sloyan
* Replace current IsLayerSupported checks with ModelRunner for better validation. * Added options to be able to disable the output from the TOSA Reference Model during layer support. * Updated layer support tests to reflect actual support. Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Change-Id: Iaea17343d0ad51b495477024c44a34d9335d1438
2022-11-30IVGCVSW-7220 Remove referencetests repo and testing of itKevin May
* Remove mentions of reference tests Signed-off-by: Kevin May <kevin.may@arm.com> Change-Id: Idd3c8b2e48f03531b1ec6cc67fd3bd32e50086c3
2022-10-27IVGCVSW-7273 Integrate TOSA Reference Model into Arm NNMatthew Sloyan
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Change-Id: Ie9aa1aa20a5bc837e005a7a36d4d07b4cd8d021b
2022-08-30IVGCVSW-7133 Add TosaMappings backbone structure with support for Addition ↵Cathal Corbett
TosaMappings operator. Signed-off-by: Cathal Corbett <cathal.corbett@arm.com> Change-Id: Ibea0cf625b3af4ab38e8b985f7a129c983ca9659
2022-07-08IVGCVSW-7024 Add missing license info for reuse lintJim Flynn
Signed-off-by: Jim Flynn <jim.flynn@arm.com> Change-Id: I97dee6982e0a7be01c13e9e803c0997547a39ff1
2022-06-29Add jni interface for the ArmNN DelegateJan Eilers
* adds a version script to hide away all symbols that are not required to use the interface * the main purpose of the jni interface is to enable the delegate to be used in android apps * Add static building to patch - see patch 7 for JNI patch only Signed-off-by: Jan Eilers <jan.eilers@arm.com> Signed-off-by: Keith Davis <keith.davis@arm.com> Change-Id: I9bb2d698b5fdb0d1b30cf79e6f19746310cd61b2
2022-04-11Removing cmake policy CMP0077 as it isn't necessary.Colm Donelan
Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I99e2726ae76acdebaf17704ad5f12bccfc6051fe
2022-04-11IVGCVSW-6707 Enables a bare metal compileJim Flynn
Change-Id: Icc2f83c5f27f413758fee3e5c1445e9fc44f42c8 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2022-03-01IVGCVSW-6602 Put ArmnnTestUtils under abi-compliance checking.Teresa Charlin
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: I82f3bd99b3c1d4d8a013b1e987a533a8071fbeea
2021-11-30Fix the break caused by ACL Opencl header updateNikhil Raj
* Headers were updated in https://review.mlplatform.org/c/ml/ComputeLibrary/+/6751 * Update ACL pin to dc2282f40b40c0d85b113c792f90d1faa2759f46 Signed-off-by: Nikhil Raj <nikhil.raj@arm.com> Change-Id: I1ff5d017e1921e5acbf7a5a54abc57d165fa5269
2021-10-26IVGCVSW-6470 Create MemoryStrategyBenchmarkJim Flynn
* Refactor the strategy library to be more generic * Shorten the names of the current strategies * Change validatorStrat to throw exceptions Change-Id: I0d9c9ef609b2d8675e5788610d1accac6767c660 Signed-off-by: Finn Williams <finwil01@e127804.cambridge.arm.com> Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2021-09-15IVGCVSW-6296 Add -Wno-psabi to GCC flagsFinn Williams
Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I4f9800e53b80a836ab6fa0ee3bb5643ce8d7181b
2021-07-15IVGCVSW-5965: Remove the boost library from Arm NN build files.Sadik Armagan
* Remove all references to boost from the ArmNN build files: * Caught one remaining include in TensorTest.cpp. Signed-off-by: Colm Donelan <Colm.Donelan@arm.com> Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: Ib8c8014cf471aa0024c977ccb23ebf96b0236aca
2021-05-31MLCE-500 Link zlib library to ArmNNKeith Davis
* Bug fix: link only on Android Signed-off-by: Keith Davis <keith.davis@arm.com> Change-Id: I9f13da41bea9ffc72b75f21cef4faf1902341100
2021-05-14MLCE-500 Link zlib library to ArmNNKeith Davis
Signed-off-by: Keith Davis <keith.davis@arm.com> Change-Id: I7c47d0db778456380026cf56865e367e469067e3
2021-05-10IVGCVSW-5808 Fix ArmNN backend profiling tests which fail on Jenkins with ↵Nikhil Raj
NPU enabled Signed-off-by: Nikhil Raj <nikhil.raj@arm.com> Change-Id: Ie8f8d9d2dd65d85ed40529233ed45c09f862d602
2021-04-27IVGCVSW-5721 Remove the Tensorflow Parser from ArmNNNikhil Raj
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com> Change-Id: Ida37d3ee3a1af0c75aa905199bd861726c646846
2021-04-27IVGCVSW-5719 Remove QuantizerKevin May
Signed-off-by: Kevin May <kevin.may@arm.com> Change-Id: I8a29df03afdd6f1cc8413b219e179272cd2d51cf
2021-04-16IVGCVSW-5720 Remove the Caffe Parser from ArmNNNikhil Raj
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com> Change-Id: Ib00be204f549efa9aa5971ecf65c2dec4a10b10f
2021-02-15IVGCVSW-5679 Failure to run the build instructions to build ArmNN using ↵Nikhil Raj
android ndk * Provide FLATBUFFERS_INCLUDE_PATH in GlobalConfig.cmake if ARMCOMPUTECL is enabled Signed-off-by: Nikhil Raj <nikhil.raj@arm.com> Change-Id: Iabd5bb9b8a63970df9b7f485d07f8c1ee1a78560
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
2020-11-23IVGCVSW-5569 Fix Unittest failure while building using EthosNAcc backendNarumol Prangnawarat
* Correct the id when EthosN is enable Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I5203e615f809e56c7597ffeeec56b5ad38d4ff17
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-13Wrap FindBoost in if(BUILD_UNIT_TESTS) so that it can be excluded entirelyMatthew Bentham
Signed-off-by: Matthew Bentham <matthew.bentham@arm.com> Change-Id: Iabe1b10e53d393a19e681156c001d6a2e9eb835e
2020-11-08COMPMID-3639: (3RDPARTY_UPDATE) Move CL kernels to srcFrancis Murtagh
* Change file Armnn GlobalConfig.cmake uses to find ARMCOMPUTE_INCLUDE * Original file has been moved and no longer visible Signed-off-by: Francis Murtagh <francis.murtagh@arm.com> Change-Id: I91c1376124dad2b2db764f83c421a1cc110e5dd1
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-09-09fix cxxopts and ghc cross compilation issueVincent ABRIOU
While cross compiling using openembedded yocto environment, CXXOPTS_INCLUDE and GHC_INCLUDE variables remains empty because the search path point to the openembedded sysroot instead of the current directory. To avoid this situation, NO_CMAKE_FIND_ROOT_PATH must be added to the find_path call. Signed-off-by: Vincent ABRIOU <vincent.abriou@st.com> Change-Id: I3ba17a300d5ca7fbc58b6ec5c4eb15267dcee228
2020-08-27Export Armnn cmakeDerek Lamberti
Change-Id: I3c317e835aba5feafda240393ca26b6aebe8d655 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2020-08-17Fix Windows buildRob Hughes
Change-Id: I145d220c73313e31c184b6a75ab7f4823df99919 Signed-off-by: Robert Hughes <robert.hughes@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-16IVGCVSW-5104 Fix OS-X GetCurrentThreadId build errorJim Flynn
Change-Id: Ic54b8d387d8507209e8777d25dcd2c4bc1641bf4 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2020-07-08IVGCVSW-4487 Remove boot/dll.hpp from dynamic backends test.Colm Donelan
* Replace the call to boost::dll::program_location() with a cmake variable set at runtime. PROJECT_BINARY_DIR appears to fit the bill. * Fall back to a boost custom CLI to allow it to be user specified. * Add a FAQ entry describing potential problems. * Adding flexibility to GetSharedObjectsTestImpl to cope with sym links in file systems. Signed-off-by: Colm Donelan <Colm.Donelan@arm.com> Change-Id: Iccf3f1b0f2911101e1f61bffd73cefba271bbfe2
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-24IVGCVSW-4487 Adds ghc::filesystem to third-partyJan Eilers
* as replacement for boost::filesystem * added to cmake * added to TPIP in readme.md Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: I0098e490e8597a9bae4781cacba8e19f8a50d1f0
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-03IVGCVSW-4915 Improving messages around SAMPLE_DYNAMIC_BACKEND_ENABLEDColm Donelan
* If SAMPLE_DYNAMIC_BACKEND_ENABLED is enabled but DYNAMIC_BACKEND_PATHS is not set then the user gets failing tests cases with no clear idea what has gone wrong. Explicitly failing when DYNAMIC_BACKEND_PATHS has not been set. * Adding an FAQ entry describing how the user can get confused by our documented usage of CMake. Signed-off-by: Colm Donelan <Colm.Donelan@arm.com> Change-Id: Ic11e14a971f53a6454962354ff728365ccc9de6d
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-22Find default build location for Compute Library binaries.Matthew Bentham
In common cases this reduces the cmake arguments needed for Compute Library from: "cmake -DARMCOMPUTENEON=1 -DARMCOMPUTECL=1 -DARMCOMPUTE_ROOT=../ComputeLibrary -DARMCOMPUTE_BUILD_DIR=ARMCOMPUTE_BUILD_DIR=../ComputeLibrary/build -DSHARED_BOOST=1 ../armnn/" to: "cmake -DARMCOMPUTENEON=1 -DARMCOMPUTECL=1 -DARMCOMPUTE_ROOT=../ComputeLibrary -DSHARED_BOOST=1 ../armnn/" Signed-off-by: Matthew Bentham <matthew.bentham@arm.com> Change-Id: I992f4ef428f10dc92ca9457fe8981ae3af93f538
2020-05-21Integration of PyArmNN into CMakePavel Macenauer
Change-Id: Ice37e693f4598a6b3c38bd38d89f1d35cdaa8a18 Signed-off-by: Pavel Macenauer <pavel.macenauer@nxp.com>