change readme.md
[platform/upstream/caffeonacl.git] / acl_openailab / README.md
index e7383c1..526b2f8 100644 (file)
@@ -1,83 +1,64 @@
-![OPEN AI LAB](https://oaid.github.io/pics/openailab.png)
-
-# 1. Release Notes
-[![License](https://img.shields.io/badge/license-BSD-blue.svg)](LICENSE)
-
-Please refer to [CaffeOnACL Release NOTE](https://github.com/OAID/caffeOnACL/blob/master/acl_openailab/Reversion.md) for details
-
-# 2. Preparation
-## 2.1 General dependencies installation
-       sudo apt-get -y update
-       sodo apt-get -y upgrade
-       sudo apt-get install -y build-essential pkg-config automake autoconf protobuf-compiler cmake cmake-gui
-       sudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libhdf5-serial-dev
-       sudo apt-get install -y libatlas-base-dev libgflags-dev libgoogle-glog-dev liblmdb-dev libopenblas-dev
-       sudo apt-get install -y libopencv-dev python-dev
-       sudo apt-get install -y python-numpy python-scipy python-yaml python-six python-pip
-       sudo apt-get install -y scons git
-       sudo apt-get install -y --no-install-recommends libboost-all-dev
-       pip install --upgrade pip
-
-## 2.2 Download source code
-Recommend creating a new directory in your work directory to execute the following steps. For example, you can create a direcotry named "oaid" in your home directory by the following commands.<br>
-
-       cd ~
-       mkdir oaid
-       cd oaid
-
-#### Download "ACL" (arm_compute : v17.05):
-       git clone https://github.com/ARM-software/ComputeLibrary.git
-#### Download "CaffeOnACL" :
-       git clone https://github.com/OAID/caffeOnACL.git
-#### Download "Googletest" :
-       git clone https://github.com/google/googletest.git
-
-# 3. Build CaffeOnACL
-## 3.1 Build ACL :
-       cd ~/oaid/ComputeLibrary
-       scons Werror=1 -j8 debug=0 asserts=1 neon=1 opencl=1 embed_kernels=1 os=linux arch=arm64-v8a
-
-## 3.2 Build Caffe :
-       export ACL_ROOT=~/oaid/ComputeLibrary
-       cd ~/oaid/caffeOnACL
-       cp acl_openailab/Makefile.config.acl Makefile.config
-       make all distribute
-
-## 3.3 Build Unit tests
-##### Build the gtest libraries
-       cd ~/oaid/googletest
-       cmake CMakeLists.txt
-       make
-       sudo make install
-
-##### Build Caffe Unit tests
-       export CAFFE_ROOT=~/oaid/caffeOnACL
-       cd ~/oaid/caffeOnACL/unit_tests
-       make clean
-       make
-
-## 3.3 Run tests
-If the output message of the following two tests is same as the examples, it means the porting is success.
-
-       export LD_LIBRARY_PATH=~/oaid/caffeOnACL/distribute/lib:~/oaid/ComputeLibrary/build
-
-#### Reference Caffenet
-       cd  ~/oaid/caffeOnACL/data/ilsvrc12
-       sudo chmod +x get_ilsvrc_aux.sh
-       ./get_ilsvrc_aux.sh
-       cd ../..
-       ./scripts/download_model_binary.py ./models/bvlc_reference_caffenet
-       ./distribute/bin/classification.bin models/bvlc_reference_caffenet/deploy.prototxt models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel data/ilsvrc12/imagenet_mean.binaryproto data/ilsvrc12/synset_words.txt examples/images/cat.jpg
-       output message --
-         ---------- Prediction for examples/images/cat.jpg ----------
-         0.3094 - "n02124075 Egyptian cat"
-         0.1761 - "n02123159 tiger cat"
-         0.1221 - "n02123045 tabby, tabby cat"
-         0.1132 - "n02119022 red fox, Vulpes vulpes"
-         0.0421 - "n02085620 Chihuahua"
-
-#### Unit test
-         cd ~/oaid/caffeOnACL/unit_tests
-         ./test_caffe_main
-         output message:
-           [==========] 29 tests from 6 test cases ran. (1236 ms total) [ PASSED ] 29 tests.
+# CaffeOnACL\r
+[![License](https://img.shields.io/badge/license-BSD-blue.svg)](LICENSE)\r
+\r
+CaffeOnACL is a project that is maintained by **OPEN** AI LAB, it uses Arm Compute Library (NEON+GPU) to speed up [Caffe](http://caffe.berkeleyvision.org/) and provide utilities to debug, profile and tune application performance. \r
+\r
+The release version is 0.3.0, is based on [Rockchip RK3399](http://www.rock-chips.com/plus/3399.html) Platform, target OS is Ubuntu 16.04. Can download the source code from [OAID/CaffeOnACL](https://github.com/OAID/CaffeOnACL)\r
+\r
+* The ARM Computer Vision and Machine Learning library is a set of functions optimised for both ARM CPUs and GPUs using SIMD technologies. See also [Arm Compute Library](https://github.com/ARM-software/ComputeLibrary).\r
+* Caffe is a fast open framework for deep learning. See also [Caffe](https://github.com/BVLC/caffe).\r
+\r
+### Documents\r
+* [Installation instructions](https://github.com/OAID/CaffeOnACL/blob/master/acl_openailab/installation.md)\r
+* [User Manuals PDF](https://github.com/OAID/CaffeOnACL/blob/master/acl_openailab/user_manual.pdf)\r
+* [Performance Report PDF](https://github.com/OAID/CaffeOnACL/blob/master/acl_openailab/performance_report.pdf)\r
+\r
+### Arm Compute Library Compatibility Issues :\r
+There are some compatibility issues between ACL and Caffe Layers, we bypass it to Caffe's original layer class as the workaround solution for the below issues\r
+\r
+* Normalization in-channel issue\r
+* Tanh issue\r
+* Softmax supporting multi-dimension issue\r
+* Group issue\r
+\r
+Performance need be fine turned in the future\r
+\r
+# Release History\r
+The Caffe based version is [793bd96351749cb8df16f1581baf3e7d8036ac37](https://github.com/BVLC/caffe/tree/793bd96351749cb8df16f1581baf3e7d8036ac37).\r
+\r
+### Version 0.3.0 - Aug 26, 2017\r
+Support Arm Compute Library version 17.06 with 4 new layers added\r
+\r
+* Batch Normalization Layer\r
+* Direct convolution Layer\r
+* Locally Connect Layer\r
+* Concatenate layer\r
+\r
+\r
+### Version 0.2.0 - Jul 2, 2017\r
+\r
+Fix the issues:\r
+\r
+* Compatible with Arm Compute Library version 17.06\r
+* When OpenCL initialization fails, even if Caffe uses CPU-mode,it doesn't work properly.\r
+\r
+### Version 0.1.0 - Jun 2, 2017 \r
+   \r
+  Initial version supports 10 Layers accelerated by Arm Compute Library version 17.05 : \r
+\r
+* Convolution Layer\r
+* Pooling Layer\r
+* LRN Layer\r
+* ReLU Layer\r
+* Sigmoid Layer\r
+* Softmax Layer\r
+* TanH Layer\r
+* AbsVal Layer\r
+* BNLL Layer\r
+* InnerProduct Layer\r
+\r
+# 3 Issue Report\r
+Encounter any issue, please report on [issue report](https://github.com/OAID/CaffeOnACL/issues). Issue report should contain the following information :\r
+\r
+*  The exact description of the steps that are needed to reproduce the issue \r
+* The exact description of what happens and what you think is wrong \r