aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2019-10-07IVGCVSW-3937 Initial ServiceProfiling refactoringMatteo Martincigh
* Made the ServiceProfiling class a singleton * Registered basic category and counters * Code refactoring * Updated unit tests accordingly Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com> Change-Id: I648a6202eead2a3016aac14d905511bd945a90cb
2019-10-04IVGCVSW-3935 Add Quantizer support for INSTANCE_NORMALIZATIONAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I175008c81da028fb5bdc71e0abff06bc6e58734c
2019-10-04IVGCVSW-3949 Fix signed/unsigned comparison bugJim Flynn
Change-Id: I6a7a809e2d30f137f8221a7d30091d3d6821c213 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2019-10-04IVGCVSW-3925 Add Backward compatibility for ITensorHandle CreateTensorHandle ↵David Monahan
functions Change-Id: I940b7ca706c9a8bc38743176eb7959aa629a6876 Signed-off-by: David Monahan <david.monahan@arm.com>
2019-10-04IVGCVSW-3904 Add more unit tests for send thread with BufferManagerNarumol Prangnawarat
* Add timeout parameter to wait for readable data * Write all readable data to the profiling connection when ready to read * Set ready to read when buffer exhaust * Ensure that readable data get written to profiling connection before the send thread is stopped * Add MockWriteProfilingConnection to be able to test WritePacket * Refactor BufferManager and the unit tests Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I80ae01bd8d0119a3a3a957069ae8ac521c005a12
2019-10-03IVGCVSW-3927 Create the Timeline Label Binary PacketMatteo Martincigh
* Added a new utility function to create a Timeline Label Binary Packet and write it to a given buffer * Added new enumeration to be reused for subsequent utility functions * Added unit tests Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com> Change-Id: Icbabefb9050f3f3b1a30082eabf875593378001f
2019-10-03IVGCVSW-3934 Add serialization support for INSTANCE_NORMALIZATIONAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: If9b4d30cbd625206ec1c7d37dd8b449983442147
2019-10-03IVGCVSW-3932 Add frontend for INSTANCE_NORMALIZATIONKevin May
Signed-off-by: Kevin May <kevin.may@arm.com> Change-Id: Ib152148ccd8d2733c617d0cf9402661fc6b71316
2019-10-03IVGCVSW-3696 Add NEON ArgMinMax workload and testsJames Conroy
* Added layer tests and fixed WorkloadData validate. * Also enabled copy to/from NEON for Signed32. Signed-off-by: James Conroy <james.conroy@arm.com> Change-Id: I5e961f88434e18d5a8ebff956d20a1c2cf1b50bb
2019-10-03IVGCVSW-3440 Fix intermittently failing send thread testMatteo Martincigh
* Simplified the implementation of the MockStreamCounterBuffer * Minor refactoring Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com> Change-Id: I3aed97daee0ac32d384e1f830e8cc57aae84950b
2019-10-03Throw by value, catch by const reference. Even anonymously.Matthew Bentham
This avoids compiler warnings about catching polymorphic types by value. Change-Id: I672bcffe3471fcc0c446bab1e554937ba09208b2 Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com>
2019-10-03IVGCVSW-3941 Fix bug around file opening in RecordByRecordCaffeParserAron Virginas-Tar
* Added error check after attempting to create input file stream and throw FileNotFoundException in case of failure Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I46b77e21c5330bb60e1190ddbefa6473e43085d9
2019-10-02IVGCVSW-3738 Add end-to-end layer test for DepthToSpaceAron Virginas-Tar
* Added end-to-end layer test implementation for DepthToSpace * Added test to reference, CL and NEON backends for all supported data types and data layouts * Extracted common data permutation code into new utility file and refactored some existing tests to reduce code duplication * Fixed EndToEndLayerTestImpl template to work with Float16 data Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: Iaf7a0012c520451052b20c37e36dc05fa8314ff6
2019-10-01IVGCVSW-3882 Update ACL pinNarumol Prangnawarat
* Update ACL pin to include change of ArgMinMax NEON/CL output type to Signed32 !android-nn-driver:2013 Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I2a0c80e0557f619a213790027efca8b84bf6e58a
2019-10-01Update field name of serialized format not to make problem with jsTee Jung
Signed-off-by: Jung Tae-young <naey05@gmail.com> Change-Id: I69ee32b5e201198610e7ba6ec22b0c0025a7e57c
2019-10-01IVGCVSW-3922 Fix Arm NN build issue - memory access violationKevin May
* Only run breaking test if Ref backend is available Signed-off-by: Kevin May <kevin.may@arm.com> Change-Id: I64850c902f7b900fe9f50d357c283c9a2bf73c19
2019-10-01IVGCVSW-3734 Enable FLoat16 unit tests for DepthToSpace on NEONAron Virginas-Tar
* Added Float16 support to NeonTensorHandle::CopyInFrom() and NeonTensorHandle::CopyOutTo() * Added Float16 unit tests for DepthToSpace to NeonLayerTests.cpp Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: Iffbcea699194ea56d5bd43d5e10b0303f07b0933
2019-09-30IVGCVSW-3732 Add CL workload for DepthToSpaceAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I577c45099eda1d04214e7a1f75fa10d1352efc80
2019-09-30IVGCVSW-3734 Add NEON workload for DepthToSpaceAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I4fa8cba57f3a2277112c02062f4d2790089d1eb5
2019-09-30IVGCVSW-3903 Create Counter Stream BufferNarumol Prangnawarat
* Add implementation of PacketBuffer * Add implementation of BufferManager * Unit tests Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Icca3807149ff5a8ed31cc87de73c50b95bca39d4
2019-09-30IVGCVSW-3920 Fix build regression due to implicit conversion in ↵Aron Virginas-Tar
ProfilingConnectionDumpToFileDecorator * Explicitly cast uint32_t to std::streamsize when using in sdt::ofstream::write() Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I0f2989d2f8d077ae53b559c4029074a323d62f21
2019-09-27IVGCVSW-3909 Fix Transpose perm vector not parsed by Tflite parserKevin May
* Add permute vector to descriptor if present * Refactor test to check with and without permute vector Signed-off-by: Kevin May <kevin.may@arm.com> Change-Id: Ic8d882bb0f982fd00bb2854c18ea316b1b2cde2b
2019-09-27IVGCVSW-3442 Add ProfilingConnectionDumpToFileDecoratorAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I3a8313287c69268ae02b6a65103363e9fbba6b4a
2019-09-27NNXSW-1826 Add an optimization step which combines Permute and BatchToSpace ↵Rob Hughes
into DepthToSpace This is only possible in some limited cases, but removes an extra layer from the graph and so should improve performance in all cases. Change-Id: I7b3e6ba5dacb4fdb816ad270edaecda1436ab4cf Signed-off-by: Rob Hughes <robert.hughes@arm.com>
2019-09-27IVGCVSW-3689 Support Import of Output Tensors for the Neon BackendFerran Balaguer
Change-Id: I6323c5f68248b54b3ed3b4cb92f1e8bf9c279b8d Signed-off-by: Ferran Balaguer <ferran.balaguer@arm.com>
2019-09-27IVGCVSW-3557 Return IProfilingConnection from ProfilingConnectionFactorySadik Armagan
* Remove WaitingForAck test, test std::cerr instead Signed-off-by: Kevin May <kevin.may@arm.com> Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I968c53dc005ff078ed08faf8818c83cb2a41528a
2019-09-26IVGCVSW-3902 Create IReadOnlyPacketBuffer, IPacketBuffer and IBufferManager ↵Narumol Prangnawarat
interfaces * Create IReadOnlyPacketBuffer, IPacketBuffer and IBufferManager interfaces * Add Read and Write util functions that use IPacketBuffer * Add MockBufferManager using IBufferManager for testing * Modify SendCounterPacket to use IBufferManager * Modify MockStreamCounterBuffer to use IBufferManager * Remove IBufferWrapper and MockBuffer * Add MockPacketBuffer for testing * Modify unit tests to use the new interfaces Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Ib86768187e032f07169aa39367a418b7665c9f03
2019-09-25Add Input and Output to list of serializable layersAron Virginas-Tar
* Added Input and Output to armnnSerializer/SerializerSupport.md and armnnDeserializer/DeserializerSupport.md Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I875f822019609763d110a86271d37dd31eb964b1
2019-09-25IVGCVSW-3908 Fix DepthToSpace reference unit test failures on Android QAron Virginas-Tar
* Use different way of constructing the PermutationVector objects needed by the DepthToSpace workload Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: Ieb32c21b7cb4c2e9af22e9e1a0ac2c534be5559d
2019-09-25IVGCVSW-3905 Create a first implementation of the send threadMatteo Martincigh
* Added the send thread directly to the SendCounterPacket class * Updated the SendCounterPacket class constructor to also take a reference of a IProfilingConnection object, used to send packets out * Added Start and Stop methods to SendCounterPacket to start and stop the send thread * Added mutex and wait condition to make the send thread waiting for something to send * This implementation used the old IBufferWrapper interface * Added defult (empty) constructor for the Packet class * Refactoring of IPeriodicCounterCapture and SocketProfilingConnection * Modified WritePacket to make it match IBufferWrapper::GetReadBuffer * Added unit test for regular and stress testing of the send thread Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com> Change-Id: I8175619ff4e65c0d5be99bcd8bd9d8dd87f717c6
2019-09-25IVGCVSW-3411 Add the Counter Values array and accessor methodsFinnWilliamsArm
Signed-off-by: FinnWilliamsArm <Finn.Williams@arm.com> Change-Id: I4fa2428a83b93cbe58b821344206e2f7ce9e37e7
2019-09-25NNXSW-1826 Move tests for Optimization classes to separate filesRob Hughes
This splits up the >1000 line OptimizerTests.cpp file. Each Optimization class now has its own test file, all of which are in a subfolder of tests called "optimizations". The original OptimizerTests.cpp now contains mostly (completely?) tests for validating output shapes, which perhaps should be moved to test files specific to the layer types they are testing. Change-Id: Icd1196cad8b720abcb156921aab1adbd4026756b Signed-off-by: Rob Hughes <robert.hughes@arm.com>
2019-09-24IVGCVSW-3439 Create the Command ThreadFinnWilliamsArm
Signed-off-by: FinnWilliamsArm <Finn.Williams@arm.com> Change-Id: I9548c5937967f4c25841bb851273168379687bcd
2019-09-24IVGCVSW-3900 Add deserialization test for DepthToSpaceAron Virginas-Tar
* Fixed bug in DepthToSpaceLayer::InferOutputShapes by removing leftover throw UnimplementedException * Added Deserializer/DepthToSpaceFloat32 deserialization test Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I8fc31d0270b4de1dac45ee12c2b798df81f312a7
2019-09-24IVGCVSW-3885 Add reference workload for DepthToSpaceAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: Id937dc4425884ad1985dcdfaae8bf3fb64f0c766
2019-09-24NNXSW-1826 OptimizeConsecutiveReshapes: remove unnecessary call to ↵Rob Hughes
MoveAllConnections This is called at a time when newReshape has nothing connected to its output slot (as it has just been created) and so is a no-op. The code comment indicated that the intention was to connect the newReshape to its *input*, but that has already been done in the InsertNewLayer() call above, so the comment was incorrect. There is a unit test covering this case ("OptimizeConsecutiveReshapesTest") Change-Id: I933d5d1c6eb32f5a8269fb5d7c809cd7c89680d1 Signed-off-by: Rob Hughes <robert.hughes@arm.com>
2019-09-24IVGCVSW-3691 Fix the Counter Directory Packet data lengthMatteo Martincigh
* The data_length field in the header represents only the size of the data included in the packet after the header, so the header size is not included * Removed a number of conversion macros in SendCounterPacket by using numeric casts where possible * Updated the unit tests accordingly Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com> Change-Id: Ifb23c341c442ff3d33b234d4213b739a77ceb658
2019-09-24IVGCVSW-3623 Implement NeonTensorHandle::ImportDavid Monahan
Signed-off-by: David Monahan <david.monahan@arm.com> Change-Id: I7213788725fd4e4cf1176998604e999d0b7ed6cc
2019-09-23Replace uses of non-standard C++:Rob Hughes
* Variable-length array replaced with std::vector * "and" replaced with "&&" (OK, this one is standard but MSVC doesn't like it and it's inconsistent with the rest of the codebase) * Replace u_int8_t with uint8_t Change-Id: I7b968a2cfa85a5492a2a547364464c594efb067b Signed-off-by: Rob Hughes <robert.hughes@arm.com>
2019-09-23IVGCVSW-3413 Add the Counters MetadataFinnWilliamsArm
Signed-off-by: FinnWilliamsArm <Finn.Williams@arm.com> Change-Id: I1313320a28b2d17d1adbc80248882ef458c34a14
2019-09-23IVGCVSW-3437 Add Request Counter Directory Command HandlerNarumol Prangnawarat
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I56ef68d6fe993d271a0fc43467f2a63cdcaee496
2019-09-23IVGCVSW-3887 Add Quantizer support for DepthToSpaceAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I144c04f920ba3329886367f5e73fe758505ab96e
2019-09-20IVGCVSW-3433 Create the Periodic Counter Capture ThreadFrancis Murtagh
* Add Periodic counter thread object * Add Unit test for thread * Move MockBuffer to header file to allow reuse Change-Id: Id2a8ea636723ab35e8a50efc200c8c76059bba02 Signed-off-by: Ferran Balaguer <ferran.balaguer@arm.com> Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
2019-09-20IVGCVSW-3886 Add serialization support for DepthToSpaceAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: Id80c1bcbf50715f07a92dad08d554518a283cc28
2019-09-20Fix some minor issues around SpaceToDepthAron Virginas-Tar
* Removed unnecessary code from SpaceToDepthLayer::InferOutputShapes() * Refactored SpaceToDepthQueueDescriptor::Validate() and added extra checks for block size and output depth Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: Ieeed3144e2589b2e8695ef65ce17752bc595332f
2019-09-20IVGCVSW-3883 Add frontend for DepthToSpace layerAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I18d957af6e988ffb6b9ee46ac836d1f38600e10b
2019-09-20IVGCVSW-3880 Add deserialization test for SLICEAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I513a6c02d77c1fd99c7d6571ee8333eae3e1e290
2019-09-19IVGCVSW-3430 Connection Acknowledged Command Handler ImplementationSadik Armagan
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I0ba97a93edb283b37bd1c089c668135a4bf9550c
2019-09-19IVGCVSW-3880 Add serialization support for SLICEAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I5eaf61cfd2c875805d2f37cd967d75ad1d20ad6d
2019-09-19Fix illegal use of anonymous stack veriable in DeserializerMatthew Bentham
Temporary lifetime extension certainly applies where the local variable is a const reference, but in this case (non-const refernece) address sanitizer was reporting a problem. In any case in other places that we use ToTensorInfo we store the value, so I think the original code here was a mistake. Change-Id: I55e185c46b1bf367a96d7d8c411ef86f07e8bd8d Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com>