summaryrefslogtreecommitdiff
path: root/nn/runtime/test/TestExecution.cpp
diff options
context:
space:
mode:
authorMichael Butler <butlermichael@google.com>2019-01-17 17:54:51 -0800
committerMichael Butler <butlermichael@google.com>2019-01-25 14:34:29 -0800
commit6029632e71825b017f1cf875f7bb74a3a409cb7e (patch)
tree557cfcff2f93b807a2783f64c58e09a1b74491a4 /nn/runtime/test/TestExecution.cpp
parent7ba572d546ec2ebe6fd30d8ce0b4318219f6b93b (diff)
downloadml-6029632e71825b017f1cf875f7bb74a3a409cb7e.tar.gz
NNAPI Burst -- runtime utility
The NNAPI is introducing the notion of an "Execution Burst" object (or more simply a "Burst" object), which is similar to an ANeuralNetworksExecution, but is intended to be reused across multiple executions and has lower IPC overheads. It achieves this low IPC overhead by replacing HIDL HwBinder calls with FMQ messages. The Burst utility objects are exposed in two flavors: 1) A Controller object which is able to launch an execution and later get the result. This will be used by the NN runtime, and is currently used in the native tests in a sibling CL. 2) An automated Server object which--when created with a reference to an IPreparedModel--will automatically receive a request to execute, call the model's synchronous execution method, and forward the result to an output channel. To incorporate these changes, the service must implement IPreparedModel::configureExecutionBurst. SampleDriver.cpp contains a functional reference implementation. Bug: 119570067 Test: mma Test: VtsHalNeuralNetworksV1_2TargetTest Change-Id: Ic7082f94c9a20f674c863af68ef106ba60f27d7f
Diffstat (limited to 'nn/runtime/test/TestExecution.cpp')
-rw-r--r--nn/runtime/test/TestExecution.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/nn/runtime/test/TestExecution.cpp b/nn/runtime/test/TestExecution.cpp
index 3ee7e3371..8d93efd3b 100644
--- a/nn/runtime/test/TestExecution.cpp
+++ b/nn/runtime/test/TestExecution.cpp
@@ -111,7 +111,7 @@ class TestPreparedModel12 : public V1_2::IPreparedModel {
return mPreparedModelV1_2->configureExecutionBurst(callback, requestChannel,
resultChannel, cb);
} else {
- cb(ErrorStatus::DEVICE_UNAVAILABLE, nullptr);
+ cb(mErrorStatus, nullptr);
return Void();
}
}