You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@singa.apache.org by wa...@apache.org on 2015/09/27 16:34:26 UTC
[03/13] incubator-singa git commit: SINGA-72 Minor updates to be
consisten with documentation
SINGA-72 Minor updates to be consisten with documentation
* Update driver.cc to remove the dependency on OpenBLAS's cblas.h file due to the use of openblas_set_num_threads().
* Update README.md file to add comments and instructions for users to
install and try one example.
Project: http://git-wip-us.apache.org/repos/asf/incubator-singa/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-singa/commit/6bb1a8a4
Tree: http://git-wip-us.apache.org/repos/asf/incubator-singa/tree/6bb1a8a4
Diff: http://git-wip-us.apache.org/repos/asf/incubator-singa/diff/6bb1a8a4
Branch: refs/heads/master
Commit: 6bb1a8a4ad713c157bf0617f9c5651094f9cf9f5
Parents: 3d1b0dc
Author: Wei Wang <wa...@comp.nus.edu.sg>
Authored: Wed Sep 23 21:24:05 2015 +0800
Committer: Wei Wang <wa...@comp.nus.edu.sg>
Committed: Sat Sep 26 23:23:41 2015 +0800
----------------------------------------------------------------------
README.md | 107 +++++++++++++++++++++++++++++++++++++++++++++++------
RELEASE_NOTES | 6 +--
src/driver.cc | 3 +-
3 files changed, 100 insertions(+), 16 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-singa/blob/6bb1a8a4/README.md
----------------------------------------------------------------------
diff --git a/README.md b/README.md
index b7d4528..080f4f5 100644
--- a/README.md
+++ b/README.md
@@ -14,13 +14,13 @@ All the details can be found in [Project Website](http://singa.incubator.apache.
##Dependencies
The current code depends on the following external libraries:
+
* glog (New BSD)
* google-protobuf (New BSD)
* openblas (New BSD)
* zeromq (LGPLv3 + static link exception)
* czmq (Mozilla Public License Version 2.0)
* zookeeper (Apache 2.0)
- * lmdb (OpenLDAP)
##Documentation
@@ -28,10 +28,11 @@ Full documentation is available online at [Official Documentation](https://singa
##Building SINGA
-
- $ ./autogen.sh
- $ ./configure
- $ make
+
+ $ ./autogen.sh (optional)
+ # pls refer to FAQ for solutions of errors
+ $ ./configure
+ $ make
##Running Examples
@@ -43,19 +44,101 @@ at [CNN example](http://singa.incubator.apache.org/docs/cnn).
First, download the dataset and create data shards:
- $ cd examples/cifar10/
- $ make download
- $ make create
+ $ cd examples/cifar10/
+ $ cp Makefile.example Makefile
+ $ make download
+ $ make create
+
+If it reports errors due to libopenblas.so missing, then include the
+lib folder of OpenBLAS in LD_LIBRARY_PATH
-Next, start the training:
+ $ export LD_LIBRARY_PATH= OPENBLAS_FOLDER/lib:$LD_LIBRARY_PATH
+ # delete the newly created folders
+ $ rm -rf cifar10_t*
+ $ make create
- $ cd ../../
- $ ./bin/singa-run.sh -conf examples/cifar10/job.conf
+Next, start the training:
-Now we just need to wait until it is done!
+ $ cd ../../
+ $ ./bin/zk-service.sh start
+ $ ./bin/singa-run.sh -conf examples/cifar10/job.conf
+
+Now we just need to wait until it is done!
##LICENSE
Apache Singa is licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0).
For additional information, see the LICENSE and NOTICE files.
+
+## FAQ
+
+* Q1:I get error `./configure --> cannot find blas_segmm() function` even I
+run `install.sh OpenBLAS`.
+
+ A1: `OpenBLAS` library is installed in `/opt` folder by default or
+ other folders if you use `sudo apt-get install`.
+ You need to include the OpenBLAS library folder in the LDFLAGS.
+
+ $ export LDFLAGS=-L/opt/OpenBLAS/lib
+
+ Alternatively, you can include the path in LIBRARY_PATH.
+
+
+* Q2: I get error `cblas.h not such file or directory exists`.
+
+ Q2: You need to include the folder of the cblas.h (e.g., /opt/OpenBLAS/include)
+ into CPLUS_INCLUDE_PATH
+
+ $ export CPLUS_INCLUDE_PATH=/opt/OpenBLAS/include:$CPLUS_INCLUDE_PATH
+ # reconfigure and make
+ $ ./configure
+ $ make
+
+
+* Q3:While compiling SINGA, I get error `SSE2 instruction set not enabled`
+
+ A3:You can try following command:
+
+ $ make CFLAGS='-msse2' CXXFLAGS='-msse2'
+
+
+* Q4:I get `ImportError: cannot import name enum_type_wrapper` from
+google.protobuf.internal when I try to import .py files.
+
+ A4:After install google protobuf by `make install`, we should install python
+ runtime libraries. Go to protobuf source directory, run:
+
+ $ cd /PROTOBUF/SOURCE/FOLDER
+ $ cd python
+ $ python setup.py build
+ $ python setup.py install
+
+ You may need `sudo` when you try to install python runtime libraries in
+ the system folder.
+
+
+* Q5: I get a linking error caused by gflags.
+
+ A5: SINGA does not depend on gflags. But you may have installed the glog with
+ gflags. In that case you can reinstall glog using *thirdparty/install.sh* into
+ a another folder and export the LDFLAGS and CPPFLAGS to include that folder.
+
+
+* Q6: While compiling SINGA and installing `glog` on mac OS X, I get fatal error
+`'ext/slist' file not found`
+
+ A6:Please install `glog` individually and try :
+
+ $ make CFLAGS='-stdlib=libstdc++' CXXFLAGS='stdlib=libstdc++'
+
+* Q7: When I start a training job, it reports error related with "ZOO_ERROR...zk retcode=-4...".
+
+ A7: This is because the zookeeper is not started. Please start the zookeeper service
+
+ $ ./bin/zk-service start
+
+ If the error still exists, probably that you do not have java. You can simple
+ check it by
+
+ $ java --version
http://git-wip-us.apache.org/repos/asf/incubator-singa/blob/6bb1a8a4/RELEASE_NOTES
----------------------------------------------------------------------
diff --git a/RELEASE_NOTES b/RELEASE_NOTES
index 2425cd0..8c5eae0 100644
--- a/RELEASE_NOTES
+++ b/RELEASE_NOTES
@@ -1,9 +1,9 @@
-Release Notes - SINGA - Version singa-incubating-0.1-rc0
+Release Notes - SINGA - Version singa-incubating-0.1-rc1
-----------------------------------------
SINGA is a general distributed deep learning platform for training big deep learning models over large datasets. It is
designed with an intuitive programming model based on the layer abstraction. SINGA supports a wide variety of popular
-deep learning models.
+deep learning models.
This release includes following features:
@@ -75,7 +75,7 @@ Some bugs are fixed during the development of this release
* [SINGA-49] Fix a bug in HandlePutMsg func that sets param fields to invalid values
* [SINGA-66] Fix bugs in Worker::RunOneBatch function and ClusterProto
-Features planned for the next release
+Features planned for the next release
* [SINGA-11] Start SINGA using Mesos
* [SINGA-31] Extend Blob to support xpu (cpu or gpu)
* [SINGA-35] Add random number generators
http://git-wip-us.apache.org/repos/asf/incubator-singa/blob/6bb1a8a4/src/driver.cc
----------------------------------------------------------------------
diff --git a/src/driver.cc b/src/driver.cc
index 41b2342..6fa70ee 100644
--- a/src/driver.cc
+++ b/src/driver.cc
@@ -21,7 +21,6 @@
#include "driver.h"
-#include <cblas.h>
#include <glog/logging.h>
#include <string>
#include "neuralnet/layer.h"
@@ -29,6 +28,8 @@
#include "utils/common.h"
#include "utils/tinydir.h"
+extern "C" void openblas_set_num_threads(int);
+
namespace singa {
void Driver::Init(int argc, char **argv) {