aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arm_compute/core/Dimensions.h2
-rw-r--r--arm_compute/core/NEON/kernels/convolution/winograd/gemm.hpp4
-rw-r--r--docs/00_introduction.dox19
-rw-r--r--src/core/NEON/kernels/convolution/winograd/transforms/output_4x4_3x3_fp32.cpp3
4 files changed, 14 insertions, 14 deletions
diff --git a/arm_compute/core/Dimensions.h b/arm_compute/core/Dimensions.h
index 58ffd7ff3c..5319346866 100644
--- a/arm_compute/core/Dimensions.h
+++ b/arm_compute/core/Dimensions.h
@@ -50,7 +50,7 @@ public:
*/
template <typename... Ts>
explicit Dimensions(Ts... dims)
- : _id{ { dims... } }, _num_dimensions{ sizeof...(dims) }
+ : _id{ { static_cast<T>(dims)... } }, _num_dimensions{ sizeof...(dims) }
{
}
diff --git a/arm_compute/core/NEON/kernels/convolution/winograd/gemm.hpp b/arm_compute/core/NEON/kernels/convolution/winograd/gemm.hpp
index 62a20c9eea..6e06db324c 100644
--- a/arm_compute/core/NEON/kernels/convolution/winograd/gemm.hpp
+++ b/arm_compute/core/NEON/kernels/convolution/winograd/gemm.hpp
@@ -65,11 +65,11 @@ inline void BlockedGemm(
const int c_row_stride
) {
// Array access methods
- const auto A = [a, M, K, a_row_stride] (const int i, const int j) -> TIn {
+ const auto A = [a, a_row_stride] (const int i, const int j) -> TIn {
return a[i*a_row_stride + j];
};
- const auto B = [b, K, N, b_row_stride] (const int i, const int j) -> TIn {
+ const auto B = [b, b_row_stride] (const int i, const int j) -> TIn {
return b[i*b_row_stride + j];
};
diff --git a/docs/00_introduction.dox b/docs/00_introduction.dox
index 6de2d0f0e3..50efb518af 100644
--- a/docs/00_introduction.dox
+++ b/docs/00_introduction.dox
@@ -26,8 +26,8 @@ For each release we provide some pre-built binaries of the library [here](https:
These binaries have been built using the following toolchains:
- Linux armv7a: gcc-linaro-arm-linux-gnueabihf-4.9-2014.07_linux
- Linux arm64-v8a: gcc-linaro-4.9-2016.02-x86_64_aarch64-linux-gnu
- - Android armv7a: clang++ / gnustl NDK r14
- - Android am64-v8a: clang++ / gnustl NDK r14
+ - Android armv7a: clang++ / gnustl NDK r16b
+ - Android am64-v8a: clang++ / gnustl NDK r16b
@warning Make sure to use a compatible toolchain to build your application or you will get some std::bad_alloc errors at runtime.
@@ -108,6 +108,8 @@ You should have the following file organisation:
│   │   └── OMPScheduler.h --> OpenMP scheduler (Alternative to the CPPScheduler)
│ ├── Memory manager files (LifetimeManager, PoolManager, etc.)
│   └── Basic implementations of the generic object interfaces (Array, Image, Tensor, etc.)
+ ├── data -> Contains test images and reference data dumps used by validation tests
+ ├── docs -> Contains Doxyfile and Doxygen sources used to generate the HTML pages in the documentation folder.
├── documentation
│   ├── index.xhtml
│   └── ...
@@ -155,6 +157,8 @@ You should have the following file organisation:
│ │ ├── Benchmark specific files
│ │ ├── CL --> OpenCL benchmarking tests
│ │ ├── GLES_COMPUTE --> GLES benchmarking tests
+ │   │ ├── fixtures
+ │ │ │ └── Fixtures to initialise and run the runtime Functions.
│ │ └── NEON --> NEON benchmarking tests
│   ├── datasets
│ │ └── Datasets for all the validation / benchmark tests, layer configurations for various networks, etc.
@@ -744,18 +748,17 @@ or
@subsection S3_3_android Building for Android
For Android, the library was successfully built and tested using Google's standalone toolchains:
- - NDK r14 arm-linux-androideabi-4.9 for armv7a (clang++)
- - NDK r14 aarch64-linux-android-4.9 for arm64-v8a (clang++)
+ - clang++ from NDK r16b for armv7a
+ - clang++ from NDK r16b for arm64-v8a
Here is a guide to <a href="https://developer.android.com/ndk/guides/standalone_toolchain.html">create your Android standalone toolchains from the NDK</a>
-- Download the NDK r14 from here: https://developer.android.com/ndk/downloads/index.html
+- Download the NDK r16b from here: https://developer.android.com/ndk/downloads/index.html
- Make sure you have Python 2 installed on your machine.
- Generate the 32 and/or 64 toolchains by running the following commands:
-
- $NDK/build/tools/make_standalone_toolchain.py --arch arm64 --install-dir $MY_TOOLCHAINS/aarch64-linux-android-4.9 --stl gnustl --api 21
- $NDK/build/tools/make_standalone_toolchain.py --arch arm --install-dir $MY_TOOLCHAINS/arm-linux-androideabi-4.9 --stl gnustl --api 21
+ $NDK/build/tools/make_standalone_toolchain.py --arch arm64 --install-dir $MY_TOOLCHAINS/aarch64-linux-android-ndk-r16b --stl gnustl --api 21
+ $NDK/build/tools/make_standalone_toolchain.py --arch arm --install-dir $MY_TOOLCHAINS/arm-linux-android-ndk-r16b --stl gnustl --api 21
@attention Due to some NDK issues make sure you use clang++ & gnustl
diff --git a/src/core/NEON/kernels/convolution/winograd/transforms/output_4x4_3x3_fp32.cpp b/src/core/NEON/kernels/convolution/winograd/transforms/output_4x4_3x3_fp32.cpp
index 8f47736f0c..609823b9e1 100644
--- a/src/core/NEON/kernels/convolution/winograd/transforms/output_4x4_3x3_fp32.cpp
+++ b/src/core/NEON/kernels/convolution/winograd/transforms/output_4x4_3x3_fp32.cpp
@@ -41,9 +41,6 @@ int Transform::ops_performed(const Tensor4DShape &shape)
return 170 * tile_M * tile_N * shape.n_channels;
}
-// Instantiate cost methods
-template int Transform::ops_performed(const Tensor4DShape&);
-
/* F(4x4, 3x3) constructs 4x4 output tiles from a 3x3 convolution. Since we use
* enough tiles to cover the output space each output tile may contain up to 3
* padded values to the right and bottom columns or rows of the tile, e.g.: