035ce1eb75b767fa68e1ed5697f460a721ca4ee1 |
|
06-Oct-2017 |
Yang Ni <yangni@google.com> |
Fix unit tests for ops with states Bug: 67427635 These tests got broken during the transition from the stateful API to a stateless API. This CL fixes them (LSTMTest, RNNTest, and SVDFTest) to correctly use double buffering to manage states in the client, i.e., swapping the two buffers for states before and after the ops across inferences. Test: LSTMTest: adb shell /data/nativetest64/lstm_test/lstm_test Test: RNNTest: adb shell /data/nativetest64/rnn_test/rnn_test Test: SVDFTest: adb shell /data/nativetest64/svdf_test/svdf_test Test: NeuralNetworksTest (not affected) Change-Id: I77e34e42613174ac793410c154f9ecad86e03165
/frameworks/ml/nn/common/operations/LSTMTest.cpp
|
66d5cb6e3a90aefc8d545f6369080ab88de9d667 |
|
05-Oct-2017 |
Jean-Luc Brouillet <jeanluc@google.com> |
Rename setInputsAndOutputs To avoid confusion with other set* functions, rename setInputsAndOutputs to identifyInputsAndOutputs. Also added a few new generated tests when I reran generate_test.sh. Bug: 63905942 Test: local & VTS tests Change-Id: Ie947044bee1a97426c847b9d66e60f0c25395bbc
/frameworks/ml/nn/common/operations/LSTMTest.cpp
|
eefb1e60444afd08a4350e11f281ac7064ebba63 |
|
04-Oct-2017 |
Yang Ni <yangni@google.com> |
Change stateful Ops to stateless ones Bug: 63905942 Updated Ops RNN, LSTM, and SVDF. Split outputs used for states into inputs and outputs. Test: NeuralNetworksTest Change-Id: Ia3d11f640cba4cab1b94d0b9746c46d347c024a4
/frameworks/ml/nn/common/operations/LSTMTest.cpp
|
8c689bdfc391e47854ec27bad0f9d685135af253 |
|
27-Sep-2017 |
Yang Ni <yangni@google.com> |
Add preparation code missed in some OPs Bug: 63905942 This updates speech model related OPs: Embedding Lookup, Hashtable Lookup, LSH Projection, LSTM, RNN, and SVDF. Deduce the shape of an output or intermediate tensor. Allocate memory if needed (i.e., not set by user). Validate inputs (dimensions, etc.) Minor cleanups related to the utility functions shared by these ops. Also made necessary fixes and implementations as discovered while doing this. Test: NeuralNetworksTest Change-Id: I7c0b789edb4d3565526d58905609d2023c1a5351
/frameworks/ml/nn/common/operations/LSTMTest.cpp
|
65aa556323f4a054f80a75b6c4c721b2a7ed3298 |
|
14-Sep-2017 |
David Gross <dgross@google.com> |
Make Compilation API synchronous. Per advice from the API council, the Compilation API no longer exposes asynchronous behavior to the user -- rather than start() and wait() APIs, we now have a finish() API. Also: - Track whether or not Compilation::finish() has been invoked, for the sake of API usage checking. - Changed Model::finish() to return Result not int, for consistency. - Made Model and Compilation documentation more similar to one another. - Fixed typos in documentation. NOTE: It's possible to implement compilation asynchronously behind the synchronous API -- e.g., Compilation_finish() starts compilation asynchronously, and we implicitly wait for it to complete at the point of Request_startCompute(). However, this would defeat one of the purposes of an explicit Compilation API -- giving the application control over when to spend the time compiling, to keep it off a critical timing path, such as repeatedly applying a model to a sequence of frames in real time. Bug: 63905942 Test: nn/runtime/tests Change-Id: I7194e277aa6211af66794d917dcc5254c7d81af4
/frameworks/ml/nn/common/operations/LSTMTest.cpp
|
3ced3cfd5b8f22b632c35f24e585c4847383b195 |
|
13-Sep-2017 |
David Gross <dgross@google.com> |
Rename Request to Execution at the API level. There's a separate notion of Request at the HIDL level; this is not renamed. Bug: 63905942 Test: nn/runtime/tests Change-Id: I671e3b387d735a9091dc5a2d14afbea6b45f444c
/frameworks/ml/nn/common/operations/LSTMTest.cpp
|
544739620cd7f37d40524d2407c92042e485c73f |
|
11-Sep-2017 |
David Gross <dgross@google.com> |
More discipline for models and requests. - Must explicitly call new finish() API on model before compiling or freeing. - Must not modify a request once start() has been called on it. Bug: 63905942 Test: nn/runtime/tests, nn/common/operations tests Change-Id: Ifc6e614bda647d729e8702023a02613e629ca6a0
/frameworks/ml/nn/common/operations/LSTMTest.cpp
|
83e24dc4706a5b7089881a55daf05b3924fab3b7 |
|
10-Sep-2017 |
David Gross <dgross@google.com> |
Add compilation APIs. For now, compilation is implemented as a synchronous no-op. Bug: 63905942 Test: nn/runtime/tests, nn/common/operations tests Change-Id: I1cb96a7e800671d0c70c9cc1b7eab6f8244232cb
/frameworks/ml/nn/common/operations/LSTMTest.cpp
|
0831219b2763e7906d0f42bd15351a8e05c6f0ab |
|
01-Sep-2017 |
Yang Ni <yangni@google.com> |
Move operation files into subdirectory Bug: 63905942 The convention seems to have all CPU implmentation of OPs in the subdirectory nn/common/operations. This CL moves recently added speech/text related OPs to that directory. Test: unit tests of all moved ops on marlin Change-Id: I026aa94c58f6ee4e57e519781ee92d5792106de6
/frameworks/ml/nn/common/operations/LSTMTest.cpp
|