Loading current.txt +1 −1 Original line number Diff line number Diff line Loading @@ -854,7 +854,7 @@ d06226cd3e916bb866b016b22f35c89c1d9286f62a4aa82a549daf8d52805183 android.hardwar f22813615be1445ddd817655c054fc69dc9efea56c9035cd0757f3cbed190641 android.hardware.radio.config@1.3::IRadioConfig c9ad18729268593d14681d88ffad1c97e707444a45e1b4ed804dab949edbd84f android.hardware.radio.config@1.3::IRadioConfigResponse fd43298c43f70130c747a642ee43b0c242ac0cebffb377faa24f2725f0aa6caf android.hardware.tetheroffload.control@1.1::IOffloadControl fe18c9032e4063efca3fff3c377dd69780de1f96e8e2bc3f7d100a5d8bd467b4 android.hardware.tetheroffload.control@1.1::ITetheringOffloadCallback ead4ec8713a2cb40906fe31ba793d21a6b1190143c446690d16a6ea686aa2fea android.hardware.tetheroffload.control@1.1::ITetheringOffloadCallback e34b4c7bec5e032c14804707ca924dd6b99ed5ba139da7505fe7d698d0fe178f android.hardware.tetheroffload.control@1.1::types 63dfdb433ac73fb2bf4a44d2ade7b7e289e155835206d1939640d6c88d208994 android.hardware.tv.cec@1.1::IHdmiCec b9682587677ce9c872e04f0e9fd6c9c78a56ae795c07cbf8c50100e0351d4c44 android.hardware.tv.cec@1.1::IHdmiCecCallback Loading neuralnetworks/1.0/utils/include/nnapi/hal/1.0/Burst.h +4 −0 Original line number Diff line number Diff line Loading @@ -48,6 +48,10 @@ class Burst final : public nn::IBurst { const nn::OptionalTimePoint& deadline, const nn::OptionalDuration& loopTimeoutDuration) const override; nn::GeneralResult<nn::SharedExecution> createReusableExecution( const nn::Request& request, nn::MeasureTiming measure, const nn::OptionalDuration& loopTimeoutDuration) const override; private: const nn::SharedPreparedModel kPreparedModel; }; Loading neuralnetworks/1.0/utils/include/nnapi/hal/1.0/Execution.h 0 → 100644 +64 −0 Original line number Diff line number Diff line /* * Copyright (C) 2021 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #ifndef ANDROID_HARDWARE_INTERFACES_NEURALNETWORKS_1_0_UTILS_EXECUTION_H #define ANDROID_HARDWARE_INTERFACES_NEURALNETWORKS_1_0_UTILS_EXECUTION_H #include <android/hardware/neuralnetworks/1.0/IPreparedModel.h> #include <nnapi/IExecution.h> #include <nnapi/Result.h> #include <nnapi/Types.h> #include <nnapi/hal/CommonUtils.h> #include <nnapi/hal/ProtectCallback.h> #include "PreparedModel.h" #include <memory> #include <utility> #include <vector> // See hardware/interfaces/neuralnetworks/utils/README.md for more information on HIDL interface // lifetimes across processes and for protecting asynchronous calls across HIDL. namespace android::hardware::neuralnetworks::V1_0::utils { class Execution final : public nn::IExecution, public std::enable_shared_from_this<Execution> { struct PrivateConstructorTag {}; public: static nn::GeneralResult<std::shared_ptr<const Execution>> create( std::shared_ptr<const PreparedModel> preparedModel, Request request, hal::utils::RequestRelocation relocation); Execution(PrivateConstructorTag tag, std::shared_ptr<const PreparedModel> preparedModel, Request request, hal::utils::RequestRelocation relocation); nn::ExecutionResult<std::pair<std::vector<nn::OutputShape>, nn::Timing>> compute( const nn::OptionalTimePoint& deadline) const override; nn::GeneralResult<std::pair<nn::SyncFence, nn::ExecuteFencedInfoCallback>> computeFenced( const std::vector<nn::SyncFence>& waitFor, const nn::OptionalTimePoint& deadline, const nn::OptionalDuration& timeoutDurationAfterFence) const override; private: const std::shared_ptr<const PreparedModel> kPreparedModel; const Request kRequest; const hal::utils::RequestRelocation kRelocation; }; } // namespace android::hardware::neuralnetworks::V1_0::utils #endif // ANDROID_HARDWARE_INTERFACES_NEURALNETWORKS_1_0_UTILS_EXECUTION_H neuralnetworks/1.0/utils/include/nnapi/hal/1.0/PreparedModel.h +7 −0 Original line number Diff line number Diff line Loading @@ -57,10 +57,17 @@ class PreparedModel final : public nn::IPreparedModel, const nn::OptionalDuration& loopTimeoutDuration, const nn::OptionalDuration& timeoutDurationAfterFence) const override; nn::GeneralResult<nn::SharedExecution> createReusableExecution( const nn::Request& request, nn::MeasureTiming measure, const nn::OptionalDuration& loopTimeoutDuration) const override; nn::GeneralResult<nn::SharedBurst> configureExecutionBurst() const override; std::any getUnderlyingResource() const override; nn::ExecutionResult<std::pair<std::vector<nn::OutputShape>, nn::Timing>> executeInternal( const V1_0::Request& request, const hal::utils::RequestRelocation& relocation) const; private: const sp<V1_0::IPreparedModel> kPreparedModel; const hal::utils::DeathHandler kDeathHandler; Loading neuralnetworks/1.0/utils/src/Burst.cpp +6 −0 Original line number Diff line number Diff line Loading @@ -55,4 +55,10 @@ nn::ExecutionResult<std::pair<std::vector<nn::OutputShape>, nn::Timing>> Burst:: return kPreparedModel->execute(request, measure, deadline, loopTimeoutDuration); } nn::GeneralResult<nn::SharedExecution> Burst::createReusableExecution( const nn::Request& request, nn::MeasureTiming measure, const nn::OptionalDuration& loopTimeoutDuration) const { return kPreparedModel->createReusableExecution(request, measure, loopTimeoutDuration); } } // namespace android::hardware::neuralnetworks::V1_0::utils Loading
current.txt +1 −1 Original line number Diff line number Diff line Loading @@ -854,7 +854,7 @@ d06226cd3e916bb866b016b22f35c89c1d9286f62a4aa82a549daf8d52805183 android.hardwar f22813615be1445ddd817655c054fc69dc9efea56c9035cd0757f3cbed190641 android.hardware.radio.config@1.3::IRadioConfig c9ad18729268593d14681d88ffad1c97e707444a45e1b4ed804dab949edbd84f android.hardware.radio.config@1.3::IRadioConfigResponse fd43298c43f70130c747a642ee43b0c242ac0cebffb377faa24f2725f0aa6caf android.hardware.tetheroffload.control@1.1::IOffloadControl fe18c9032e4063efca3fff3c377dd69780de1f96e8e2bc3f7d100a5d8bd467b4 android.hardware.tetheroffload.control@1.1::ITetheringOffloadCallback ead4ec8713a2cb40906fe31ba793d21a6b1190143c446690d16a6ea686aa2fea android.hardware.tetheroffload.control@1.1::ITetheringOffloadCallback e34b4c7bec5e032c14804707ca924dd6b99ed5ba139da7505fe7d698d0fe178f android.hardware.tetheroffload.control@1.1::types 63dfdb433ac73fb2bf4a44d2ade7b7e289e155835206d1939640d6c88d208994 android.hardware.tv.cec@1.1::IHdmiCec b9682587677ce9c872e04f0e9fd6c9c78a56ae795c07cbf8c50100e0351d4c44 android.hardware.tv.cec@1.1::IHdmiCecCallback Loading
neuralnetworks/1.0/utils/include/nnapi/hal/1.0/Burst.h +4 −0 Original line number Diff line number Diff line Loading @@ -48,6 +48,10 @@ class Burst final : public nn::IBurst { const nn::OptionalTimePoint& deadline, const nn::OptionalDuration& loopTimeoutDuration) const override; nn::GeneralResult<nn::SharedExecution> createReusableExecution( const nn::Request& request, nn::MeasureTiming measure, const nn::OptionalDuration& loopTimeoutDuration) const override; private: const nn::SharedPreparedModel kPreparedModel; }; Loading
neuralnetworks/1.0/utils/include/nnapi/hal/1.0/Execution.h 0 → 100644 +64 −0 Original line number Diff line number Diff line /* * Copyright (C) 2021 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #ifndef ANDROID_HARDWARE_INTERFACES_NEURALNETWORKS_1_0_UTILS_EXECUTION_H #define ANDROID_HARDWARE_INTERFACES_NEURALNETWORKS_1_0_UTILS_EXECUTION_H #include <android/hardware/neuralnetworks/1.0/IPreparedModel.h> #include <nnapi/IExecution.h> #include <nnapi/Result.h> #include <nnapi/Types.h> #include <nnapi/hal/CommonUtils.h> #include <nnapi/hal/ProtectCallback.h> #include "PreparedModel.h" #include <memory> #include <utility> #include <vector> // See hardware/interfaces/neuralnetworks/utils/README.md for more information on HIDL interface // lifetimes across processes and for protecting asynchronous calls across HIDL. namespace android::hardware::neuralnetworks::V1_0::utils { class Execution final : public nn::IExecution, public std::enable_shared_from_this<Execution> { struct PrivateConstructorTag {}; public: static nn::GeneralResult<std::shared_ptr<const Execution>> create( std::shared_ptr<const PreparedModel> preparedModel, Request request, hal::utils::RequestRelocation relocation); Execution(PrivateConstructorTag tag, std::shared_ptr<const PreparedModel> preparedModel, Request request, hal::utils::RequestRelocation relocation); nn::ExecutionResult<std::pair<std::vector<nn::OutputShape>, nn::Timing>> compute( const nn::OptionalTimePoint& deadline) const override; nn::GeneralResult<std::pair<nn::SyncFence, nn::ExecuteFencedInfoCallback>> computeFenced( const std::vector<nn::SyncFence>& waitFor, const nn::OptionalTimePoint& deadline, const nn::OptionalDuration& timeoutDurationAfterFence) const override; private: const std::shared_ptr<const PreparedModel> kPreparedModel; const Request kRequest; const hal::utils::RequestRelocation kRelocation; }; } // namespace android::hardware::neuralnetworks::V1_0::utils #endif // ANDROID_HARDWARE_INTERFACES_NEURALNETWORKS_1_0_UTILS_EXECUTION_H
neuralnetworks/1.0/utils/include/nnapi/hal/1.0/PreparedModel.h +7 −0 Original line number Diff line number Diff line Loading @@ -57,10 +57,17 @@ class PreparedModel final : public nn::IPreparedModel, const nn::OptionalDuration& loopTimeoutDuration, const nn::OptionalDuration& timeoutDurationAfterFence) const override; nn::GeneralResult<nn::SharedExecution> createReusableExecution( const nn::Request& request, nn::MeasureTiming measure, const nn::OptionalDuration& loopTimeoutDuration) const override; nn::GeneralResult<nn::SharedBurst> configureExecutionBurst() const override; std::any getUnderlyingResource() const override; nn::ExecutionResult<std::pair<std::vector<nn::OutputShape>, nn::Timing>> executeInternal( const V1_0::Request& request, const hal::utils::RequestRelocation& relocation) const; private: const sp<V1_0::IPreparedModel> kPreparedModel; const hal::utils::DeathHandler kDeathHandler; Loading
neuralnetworks/1.0/utils/src/Burst.cpp +6 −0 Original line number Diff line number Diff line Loading @@ -55,4 +55,10 @@ nn::ExecutionResult<std::pair<std::vector<nn::OutputShape>, nn::Timing>> Burst:: return kPreparedModel->execute(request, measure, deadline, loopTimeoutDuration); } nn::GeneralResult<nn::SharedExecution> Burst::createReusableExecution( const nn::Request& request, nn::MeasureTiming measure, const nn::OptionalDuration& loopTimeoutDuration) const { return kPreparedModel->createReusableExecution(request, measure, loopTimeoutDuration); } } // namespace android::hardware::neuralnetworks::V1_0::utils