SINGA-136 Support cuDNN v4
Merge for SINGA-136.
Conflicts:
Makefile.am
src/proto/job.proto
Project: http://git-wip-us.apache.org/repos/asf/incubator-singa/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-singa/commit/efdf6d71
Tree: http://git-wip-us.apache.org/repos/asf/incubator-singa/tree/efdf6d71
Diff: http://git-wip-us.apache.org/repos/asf/incubator-singa/diff/efdf6d71
Branch: refs/heads/master
Commit: efdf6d711bc1d9da748ed708a71728f8ebfced4a
Parents: 040cbb2 9c2c297
Author: Wei Wang <[email protected]>
Authored: Wed Apr 6 23:55:12 2016 +0800
Committer: Wei Wang <[email protected]>
Committed: Wed Apr 6 23:55:12 2016 +0800
----------------------------------------------------------------------
Makefile.am | 20 +-
examples/cifar10/cudnn_bm.conf | 334 +++++++++++++++++++
include/singa/neuralnet/neuron_layer.h | 30 ++
src/driver.cc | 2 +
src/neuralnet/neuron_layer/bm.cc | 68 ++++
src/neuralnet/neuron_layer/cudnn_bm.cc | 150 +++++++++
src/neuralnet/neuron_layer/cudnn_convolution.cc | 11 +
src/proto/job.proto | 8 +-
8 files changed, 613 insertions(+), 10 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-singa/blob/efdf6d71/Makefile.am
----------------------------------------------------------------------
diff --cc Makefile.am
index f16d35a,56af6d4..2513d36
--- a/Makefile.am
+++ b/Makefile.am
@@@ -32,22 -32,20 +32,23 @@@ CUDA_OBJS := src/utils/math_kernel.
CUDA_HDRS := include/singa/utils/math_kernel.h
CUDNN_SRCS := src/neuralnet/loss_layer/cudnn_softmaxloss.cc \
- src/neuralnet/neuron_layer/cudnn_softmax.cc \
- src/neuralnet/neuron_layer/cudnn_pooling.cc \
- src/neuralnet/neuron_layer/cudnn_activation.cc \
- src/neuralnet/neuron_layer/cudnn_lrn.cc \
- src/neuralnet/neuron_layer/cudnn_convolution.cc
+ src/neuralnet/neuron_layer/cudnn_softmax.cc \
+ src/neuralnet/neuron_layer/cudnn_pooling.cc \
+ src/neuralnet/neuron_layer/cudnn_activation.cc \
+ src/neuralnet/neuron_layer/cudnn_lrn.cc \
+ src/neuralnet/neuron_layer/cudnn_convolution.cc \
+ src/neuralnet/neuron_layer/cudnn_bm.cc
PY_SRCS := tool/python/singa/driver_wrap.cxx \
- src/driver.cc
+ src/driver.cc
+
+ZOOKEEPER_SRCS := src/utils/zk_service.cc
+ZOOKEEPER_HDRS := include/singa/utils/zk_service.h
HDFS_SRCS := src/io/hdfsfile.cc \
- src/io/hdfsfile_store.cc
+ src/io/hdfsfile_store.cc
HDFS_HDRS := include/singa/io/hdfsfile.h \
- include/singa/io/hdfsfile_store.h
+ include/singa/io/hdfsfile_store.h
SINGA_SRCS := src/driver.cc \
src/server.cc \
@@@ -103,14 -102,12 +105,14 @@@
src/utils/param.cc \
src/utils/updater.cc \
src/utils/blob.cc \
- src/utils/image_transform.cc
+ src/utils/image_transform.cc \
- src/utils/job_manager.cc
++ src/utils/job_manager.cc
+
SINGA_HDRS := include/singa.h \
- include/singa/utils/math_blob.h \
- include/singa/utils/math_addr.h \
- include/singa/utils/cluster.h \
+ include/singa/utils/math_blob.h \
+ include/singa/utils/math_addr.h \
+ include/singa/utils/cluster.h \
include/utils/cluster_rt.h \
include/utils/param.h \
include/utils/common.h \
@@@ -214,7 -205,9 +216,7 @@@ singa_LDFLAGS = -lsinga
-lglog \
-lprotobuf \
-lopenblas \
- -lczmq
- -lzmq \
- -lczmq \
- -lzookeeper_mt
++ -lczmq
if LMDB
singa_LDFLAGS += -llmdb
endif
@@@ -245,17 -232,17 +247,17 @@@ endi
#bin_PROGRAMS += singatool
singatool_SOURCES = src/utils/tool.cc #$(CUDA_SRCS) $(CUDA_HDRS) $(CUDNN_SRCS)
singatool_CXXFLAGS = -Wall -pthread -fPIC -std=c++11 -MMD
-Wno-unknown-pragmas \
- -funroll-loops -DTHREADED
-I$(top_srcdir)/include $(DEFAULT_FLAGS)
+ -funroll-loops -DTHREADED -I$(top_srcdir)/include
$(DEFAULT_FLAGS)
singatool_LDFLAGS = -lsinga \
-lglog \
- -lprotobuf
- -lprotobuf \
- -lzookeeper_mt
++ -lprotobuf
-if DHDFS
-singatool_SOURCES += $(HDFS_SRCS)
-singatool_CXXFLAGS += $(HDFS_CFLAGS)
-singatool_LDFLAGS += $(HDFS_LDFLAGS) $(HDFS_LIBS)
+if DDIST
+singatool_SOURCES += $(ZOOKEEPER_SRCS)
+singatool_CXXFLAGS += $(DIST_CFLAGS)
+singatool_LDFLAGS += $(DIST_LDFLAGS) $(DIST_LIBS)
endif
+
#lib_LTLIBRARIES += libgtest.la
libgtest_la_SOURCES = $(GTEST_HDRS) $(GTEST_SRCS)
libgtest_la_CXXFLAGS = $(DEFAULT_FLAGS) -msse3 -fpermissive
-I$(top_srcdir)/include
http://git-wip-us.apache.org/repos/asf/incubator-singa/blob/efdf6d71/include/singa/neuralnet/neuron_layer.h
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-singa/blob/efdf6d71/src/driver.cc
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-singa/blob/efdf6d71/src/proto/job.proto
----------------------------------------------------------------------
diff --cc src/proto/job.proto
index 1a6ab42,622248c..7157a84
--- a/src/proto/job.proto
+++ b/src/proto/job.proto
@@@ -676,9 -681,9 +681,9 @@@ enum LayerType
kSoftmax = 214;
kGRU = 215;
kEmbedding = 216;
- kBM = 217;
+ kActivation = 217;
++ kBM = 218;
-- // cudnn v3
kCudnnConv = 250;
kCudnnPool = 251;
kCudnnLRN = 252;