Use CPU kernel as a default kernel (#614)
author최형규/동작제어Lab(SR)/Senior Engineer/삼성전자 <hk0110.choi@samsung.com>
Thu, 12 Apr 2018 04:52:26 +0000 (13:52 +0900)
committer김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 <jh0822.kim@samsung.com>
Thu, 12 Apr 2018 04:52:26 +0000 (13:52 +0900)
* Use CPU kernel as a default kernel

- Use CPU kernel as a default kernel

Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
* Apply review feedback

- restrict scope of it variable

Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
src/runtime/ref/nn/common/CpuExecutor.cpp
src/runtime/ref/nn/common/NNFWKernels.cpp

index a49164c..bcfeb78 100644 (file)
@@ -551,17 +551,18 @@ int CpuExecutor::executeOperation(const Operation& operation) {
                                       &outShape) &&
                           setInfoAndAllocateIfNeeded(&output, outShape);
 
-                auto it = nnfw_kernels_convFloat32.end();
+                auto func = convFloat32;
                 auto target = std::getenv("NNFW_KERNEL_convFloat32");
-                if (target)
-                { 
-                    it = nnfw_kernels_convFloat32.find(target);
-                }
-                if (it == nnfw_kernels_convFloat32.end())
+
+                if (target != nullptr)
                 { 
-                    it = nnfw_kernels_convFloat32.find("fallback");
+                    auto it = nnfw_kernels_convFloat32.find(target);
+
+                    if (it != nnfw_kernels_convFloat32.end())
+                    {
+                        func = it->second;
+                    }
                 }
-                auto func = it->second; 
 
                 success = success && func(reinterpret_cast<const float*>(input.buffer), input.shape(),
                                       reinterpret_cast<const float*>(filter.buffer), filter.shape(),
index 8439a7c..44b7287 100644 (file)
@@ -23,7 +23,6 @@ void init_nnfw_kernels()
 
   nnfw_kernels_convFloat32["acl"] = nnfw::kernel::acl::convFloat32;
 #endif // USE_NNFW_ACL_KERNELS
-  nnfw_kernels_convFloat32["fallback"] = convFloat32;
   return;
 }