History log of /hardware/interfaces/neuralnetworks/1.0/IPreparedModel.hal
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
cf22a57c1a05272d055b0deaa10094852dece797 22-Sep-2017 Michael Butler <butlermichael@google.com> NNAPI HAL: Change IEvent to explicit callbacks

IEvent was a synchronization primitive which caused some confusion
in the interface. Originally the event object was paired with an
asynchronous task, and the asynchronous task would signal this event
when the corresponding output was ready to be used.

In the case of IDevice::prepareModel, the function call would return an
IPreparedModel object that was not guaranteed to be prepared until the
runtime had returned from waiting on the corresponding event object.
The event object has been changed to two explicit callbacks--
IPreparedModelCallback and IExecutionCallback. Now,
IDevice::prepareModel no longer returns an unfinished IPreparedModel;
instead, it will pass the IPreparedModel object to the runtime through
IPreparedModelCallback::notify. When the runtime retreives the
IPreparedModel object, the asynchronous task has already finished
preparing the model.

The two callbacks are used for different purposes. Each has its own
version of notify to pass the data back to the runtime:
* IPreparedModelCallback::notify(ErrorStatus, IPreparedModel)
* IExecutionCallback::notify(ErrorStatus)

Bug: 63905942
Test: mm, vts, ml/nn/runtime/tests
Change-Id: I0c88cd262ba762e0af15e9da31ebe813a5d150b2
/hardware/interfaces/neuralnetworks/1.0/IPreparedModel.hal
926df1e1823e633090a2248be0f1ac66933750ed 20-Sep-2017 Michael Butler <butlermichael@google.com> Removed WIP tag from Neuralnetworks HAL

Additionally cleaned up some comments and formatting.

Bug: 63905942
Test: not needed
Change-Id: I0306f6d37f3c9ce9b365b5f838c27e81fa001ccd
/hardware/interfaces/neuralnetworks/1.0/IPreparedModel.hal
c7821107652db4724b6c60d483824d72b8a6b663 12-Sep-2017 Michael Butler <butlermichael@google.com> Add documentation to the Neuralnetworks HIDL HAL.

Bug: 63905942
Test: not needed
Change-Id: I1582d20e66ef939581d82f21088f0db0bc0f5eb7
/hardware/interfaces/neuralnetworks/1.0/IPreparedModel.hal
61ae6edbe635759cece1102749ec4cb6e6b7e485 12-Sep-2017 Michael Butler <butlermichael@google.com> Neuralnetworks HAL cleanup -- hardware/interfaces

Does three primary cleanups:
1) Removes unused OperandTypes, creates OEM types
2) Creates explicit ErrorStatus; functions return status
3) IDevice::initialize renamed to getCapabilities,
IDevice::getSupportedSubgraph renamed to getSupportedOperations

Additionally fixes the corresponding VTS tests.

Bug: 63905942
Test: mm, vts
Change-Id: Ib4c61b9b13963ac2367f21dc3c20e5946eb955a9
/hardware/interfaces/neuralnetworks/1.0/IPreparedModel.hal
0e2ac1bb885d7ba77e80a082526fd1b510190a72 01-Sep-2017 Michael Butler <butlermichael@google.com> NNAPI Concurrent Query Management -- HAL and VTS update

The NNAPI requires requests on a model to be asynchronously
processed. This CL implements a basic Event that can later
be used to block the runtime thread until the asynchronous
request has completed.

Bug: 63905942
Test: VtsHalNeuralnetworksV1_0TargetTest (32-bit, 64-bit) with sample driver enabled by cherry-pick
frameworks/ml/nn/runtime/test with and without sample driver enabled
Change-Id: Ie27a574aaaac312e7cbb731750f9c06278357a1c
/hardware/interfaces/neuralnetworks/1.0/IPreparedModel.hal
376ec0c0fd4a3f6b661599f37a03d66cbde9caa7 28-Jul-2017 Michael Butler <butlermichael@google.com> Move neuralnetworks HAL to hardware/interfaces

The neuralnetworks hal was placed in
frameworks/ml/nn/hardware/interfaces while VTS tests were being
developed.

This CL moves it to hardware/interfaces and another CL removes
it from frameworks/ml/nn/hardware/interfaces.

VTS tests included in a sibling CL in this topic.

Bug: 63905942
Test: mm -j40
Change-Id: I0e6c84de72a763edbaef3e9b3063c3ecca216337
/hardware/interfaces/neuralnetworks/1.0/IPreparedModel.hal