From e6951eb35739630f7e44a57d4eaec8ac51520637 Mon Sep 17 00:00:00 2001 From: sjsujinkim Date: Wed, 28 Mar 2018 15:47:19 +0900 Subject: [PATCH] Implement Execution_create This commit implements Execution_create. Signed-off-by: sjsujinkim --- src/runtime/ref/nn/runtime/CompilationBuilder.cpp | 5 +---- src/runtime/ref/nn/runtime/ExecutionBuilder.h | 10 ++++------ src/runtime/ref/nn/runtime/NeuralNetworks.cpp | 3 --- 3 files changed, 5 insertions(+), 13 deletions(-) diff --git a/src/runtime/ref/nn/runtime/CompilationBuilder.cpp b/src/runtime/ref/nn/runtime/CompilationBuilder.cpp index e83f866..e82d00b 100644 --- a/src/runtime/ref/nn/runtime/CompilationBuilder.cpp +++ b/src/runtime/ref/nn/runtime/CompilationBuilder.cpp @@ -16,12 +16,12 @@ #define LOG_TAG "CompilationBuilder" +#include "ExecutionBuilder.h" #include "CompilationBuilder.h" #include "Utils.h" // TODO Include these files once availible #if 0 -#include "ExecutionBuilder.h" #include "ExecutionPlan.h" #include "Manager.h" #include "ModelBuilder.h" @@ -82,8 +82,6 @@ int CompilationBuilder::createExecution(ExecutionBuilder **execution) { // Dummy Implementation return ANEURALNETWORKS_NO_ERROR; - // Original code for reference -#if 0 if (!mFinished) { LOG(ERROR) << "ANeuralNetworksExecution_create passed an unfinished compilation"; *execution = nullptr; @@ -91,7 +89,6 @@ int CompilationBuilder::createExecution(ExecutionBuilder **execution) { } *execution = new ExecutionBuilder(this); return (*execution ? ANEURALNETWORKS_NO_ERROR : ANEURALNETWORKS_OUT_OF_MEMORY); -#endif } } // namespace nn diff --git a/src/runtime/ref/nn/runtime/ExecutionBuilder.h b/src/runtime/ref/nn/runtime/ExecutionBuilder.h index 8287582..f3fa138 100644 --- a/src/runtime/ref/nn/runtime/ExecutionBuilder.h +++ b/src/runtime/ref/nn/runtime/ExecutionBuilder.h @@ -21,9 +21,7 @@ #include "Callbacks.h" #endif #include "HalInterfaces.h" -#if 0 // REF-ANN #include "Memory.h" -#endif #include "ModelBuilder.h" #include "NeuralNetworks.h" @@ -83,7 +81,6 @@ struct ModelArgumentInfo { class ExecutionBuilder { friend class StepExecutor; public: -#if 0 // REF-ANN ExecutionBuilder(const CompilationBuilder* compilation); int setInput(uint32_t index, const ANeuralNetworksOperandType* type, const void* buffer, @@ -94,14 +91,16 @@ public: size_t length); int setOutputFromMemory(uint32_t index, const ANeuralNetworksOperandType* type, const Memory* memory, size_t offset, size_t length); +#if 0 // TODO-NNRT : sp and ExecutionCallback are needed. int startCompute(sp* synchronizationCallback); - +#endif // TODO-NNRT const ModelBuilder* getModel() const { return mModel; } private: const ModelBuilder* mModel; +#if 0 // REF-ANN : ExecutionPlan is not yet considered. const ExecutionPlan* mPlan; - +#endif // REF-ANN // The information we'll send to the driver about the inputs and outputs. // Note that we build this in two steps: // 1. As the arguments are specified, set the corresponding mInputs or mOutputs element. @@ -115,7 +114,6 @@ private: std::vector mInputs; std::vector mOutputs; MemoryTracker mMemories; -#endif }; // class StepExecutor is used to execute a single "step" in a diff --git a/src/runtime/ref/nn/runtime/NeuralNetworks.cpp b/src/runtime/ref/nn/runtime/NeuralNetworks.cpp index ab373e5..7543568 100644 --- a/src/runtime/ref/nn/runtime/NeuralNetworks.cpp +++ b/src/runtime/ref/nn/runtime/NeuralNetworks.cpp @@ -377,8 +377,6 @@ int ANeuralNetworksExecution_create(ANeuralNetworksCompilation* compilation, // Dummy Implementation return ANEURALNETWORKS_NO_ERROR; - // Original code for reference -#if 0 if (!compilation || !execution) { LOG(ERROR) << "ANeuralNetworksExecution_create passed a nullptr"; return ANEURALNETWORKS_UNEXPECTED_NULL; @@ -389,7 +387,6 @@ int ANeuralNetworksExecution_create(ANeuralNetworksCompilation* compilation, int result = c->createExecution(&r); *execution = reinterpret_cast(r); return result; -#endif } void ANeuralNetworksExecution_free(ANeuralNetworksExecution* execution) { -- 2.7.4