Build with Multiverso and ASGD

This commit is contained in:
Fei Gao 2016-09-19 03:07:15 -07:00
Родитель 9c3c876cb2
Коммит f5671d86c1
2 изменённых файлов: 30 добавлений и 6 удалений

Просмотреть файл

@ -432,6 +432,8 @@ $(CNTKLIBRARY_TESTS): $(CNTKLIBRARY_TESTS_OBJ) | $(CNTKLIBRARY_LIB)
@echo building output for $(ARCH) with build type $(BUILDTYPE)
$(CXX) $(LDFLAGS) $(patsubst %,-L%, $(LIBDIR) $(LIBPATH) $(GDK_NVML_LIB_PATH)) $(patsubst %,$(RPATH)%, $(ORIGINLIBDIR) $(LIBPATH)) -o $@ $^ $(LIBS) -l$(CNTKLIBRARY) -l$(CNTKMATH)
########################################
# LibEval
########################################
@ -464,11 +466,11 @@ EVAL_LIB:=$(LIBDIR)/lib$(EVAL).so
ALL+=$(EVAL_LIB)
SRC+=$(EVAL_SRC)
$(EVAL_LIB): $(EVAL_OBJ) | $(CNTKMATH_LIB)
$(EVAL_LIB): $(EVAL_OBJ) | $(CNTKMATH_LIB) $(MULTIVERSO_LIB)
@echo $(SEPARATOR)
@mkdir -p $(dir $@)
@echo Building $(EVAL_LIB) for $(ARCH) with build type $(BUILDTYPE)
$(CXX) $(LDFLAGS) -shared $(patsubst %,-L%, $(LIBDIR) $(LIBPATH) $(GDK_NVML_LIB_PATH)) $(patsubst %,$(RPATH)%, $(ORIGINDIR) $(LIBPATH)) -o $@ $^ $(LIBS) -l$(CNTKMATH)
$(CXX) $(LDFLAGS) -shared $(patsubst %,-L%, $(LIBDIR) $(LIBPATH) $(GDK_NVML_LIB_PATH)) $(patsubst %,$(RPATH)%, $(ORIGINDIR) $(LIBPATH)) -o $@ $^ $(LIBS) -l$(CNTKMATH) -lmultiverso
########################################
# Eval Sample client
@ -770,6 +772,7 @@ endif
# temporarily adding to 1bit, need to work with others to fix it
endif
########################################
# ASGD(multiverso) setup
########################################
@ -781,10 +784,27 @@ ifeq (,$(wildcard Source/Multiverso/include/multiverso/*.h))
endif
INCLUDEPATH += $(SOURCEDIR)/Multiverso/include
LIBPATH += $(SOURCEDIR)/Multiverso/x64/$(BUILDTYPE)
LIBPATH += $(LIBDIR)
LIBS += -lmultiverso -ldl
COMMON_FLAGS += -DMULTIVERSO_SUPPORT
MULTIVERSO_LIB:=$(LIBDIR)/libmultiverso.so
MULTIVERSO_TEST:=$(BINDIR)/multiversotests
ALL+=$(MULTIVERSO_LIB)
ALL+=$(MULTIVERSO_TEST)
MULTIVERSO:
@echo "Build Multiverso lib and unit tests"
@mkdir -p $(SOURCEDIR)/Multiverso/build
@sh $(SOURCEDIR)/../Tools/setup_mv.sh
$(MULTIVERSO_LIB): MULTIVERSO
@cp $(SOURCEDIR)/Multiverso/build/src/libmultiverso.so $(MULTIVERSO_LIB)
$(MULTIVERSO_TEST): MULTIVERSO
@cp $(SOURCEDIR)/Multiverso/build/Test/unittests/multiverso.ut $(MULTIVERSO_TEST)
endif
########################################

4
Tools/setup_mv.sh Normal file
Просмотреть файл

@ -0,0 +1,4 @@
cd Source/Multiverso/build
cmake ..
make -j multiverso
make -j multiverso.ut