You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mxnet.apache.org by GitBox <gi...@apache.org> on 2017/11/25 04:11:15 UTC

[GitHub] weixingzhang closed pull request #8810: Fix a typo

weixingzhang closed pull request #8810: Fix a typo
URL: https://github.com/apache/incubator-mxnet/pull/8810
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git a/config.mk.tmp b/config.mk.tmp
new file mode 100644
index 0000000000..d9ce6f2df8
--- /dev/null
+++ b/config.mk.tmp
@@ -0,0 +1,113 @@
+#-------------------------------------------------------------------------------
+#  Template configuration for compiling mxnet
+#
+#  If you want to change the configuration, please use the following
+#  steps. Assume you are on the root directory of mxnet. First copy the this
+#  file so that any local changes will be ignored by git
+#
+#  $ cp make/config.mk .
+#
+#  Next modify the according entries, and then compile by
+#
+#  $ make
+#
+#  or build in parallel with 8 threads
+#
+#  $ make -j8
+#-------------------------------------------------------------------------------
+
+#---------------------
+# choice of compiler
+#--------------------
+
+export CC = gcc
+export CXX = g++
+export NVCC = nvcc
+
+# whether compile with options for MXNet developer
+DEV = 0
+
+# whether compile with debug
+DEBUG = 0
+
+# the additional link flags you want to add
+ADD_LDFLAGS =
+
+# the additional compile flags you want to add
+ADD_CFLAGS =
+
+#---------------------------------------------
+# matrix computation libraries for CPU/GPU
+#---------------------------------------------
+
+# whether use CUDA during compile
+USE_CUDA = 0
+
+# add the path to CUDA library to link and compile flag
+# if you have already add them to environment variable, leave it as NONE
+# USE_CUDA_PATH = /usr/local/cuda
+USE_CUDA_PATH = NONE
+
+# whether use CUDNN R3 library
+USE_CUDNN = 0
+
+# whether use opencv during compilation
+# you can disable it, however, you will not able to use
+# imbin iterator
+USE_OPENCV = 1
+
+# use openmp for parallelization
+USE_OPENMP = 0
+
+# choose the version of blas you want to use
+# can be: mkl, blas, atlas, openblas
+USE_BLAS = apple
+
+# whether use lapack during compilation
+# only effective when compiled with blas versions openblas/apple/atlas/mkl
+USE_LAPACK = 1
+
+# add path to intel library, you may need it for MKL, if you did not add the path
+# to environment variable
+USE_INTEL_PATH = NONE
+
+#----------------------------
+# distributed computing
+#----------------------------
+
+# whether or not to enable multi-machine supporting
+USE_DIST_KVSTORE = 0
+
+# whether or not allow to read and write HDFS directly. If yes, then hadoop is
+# required
+USE_HDFS = 0
+
+# path to libjvm.so. required if USE_HDFS=1
+LIBJVM=$(JAVA_HOME)/jre/lib/amd64/server
+
+# whether or not allow to read and write AWS S3 directly. If yes, then
+# libcurl4-openssl-dev is required, it can be installed on Ubuntu by
+# sudo apt-get install -y libcurl4-openssl-dev
+USE_S3 = 0
+
+#----------------------------
+# additional operators
+#----------------------------
+
+# path to folders containing projects specific operators that you don't want to put in src/operators
+EXTRA_OPERATORS =
+
+#----------------------------
+# other features
+#----------------------------
+
+# Create C++ interface package
+USE_CPP_PACKAGE = 0
+
+#----------------------------
+# plugins
+#----------------------------
+
+# whether to use torch integration. This requires installing torch.
+# TORCH_PATH = $(HOME)/torch
+# MXNET_PLUGINS += plugin/torch/torch.mk
diff --git a/docs/faq/model_parallel_lstm.md b/docs/faq/model_parallel_lstm.md
index c4de7799c0..3aab7d3e0c 100644
--- a/docs/faq/model_parallel_lstm.md
+++ b/docs/faq/model_parallel_lstm.md
@@ -12,7 +12,7 @@ powerful heterogeneous hardware environments to achieve significant speedups.
 
 There are two primary ways that we can spread a workload across multiple devices.
 In a previous document, [we addressed data parallelism](./multi_devices.md),
-an approach in which examples within a batch are divvied among the available devices.
+an approach in which samples within a batch are divided among the available devices.
 With data parallelism, each device stores a complete copy of the model.
 Here, we explore _model parallelism_, a different approach.
 Instead of splitting the batch among the devices, we partition the model itself.
diff --git a/install-mxnet-osx-python.sh b/install-mxnet-osx-python.sh
new file mode 100755
index 0000000000..2177d723b6
--- /dev/null
+++ b/install-mxnet-osx-python.sh
@@ -0,0 +1,498 @@
+#!/bin/bash
+
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+#
+# This scripts installs the dependencies and compiles
+# MXNet source.
+#
+# The script also installs the MXNet package for Python.
+#
+
+#set -ex
+
+export MXNET_GITPATH="https://github.com/dmlc/mxnet.git"
+if [ -z ${MXNET_TAG} ];
+then
+	#
+	# TODO: Change this to latest tag
+	#       to avoid updating this value for every release
+	#
+	export MXNET_TAG="0.12.0"
+fi
+
+export TARIKH=`/bin/date +%Y-%m-%d-%H:%M:%S`
+export MXNET_HOME="$HOME/work/repo/mxnet"
+if [ -z ${MXNET_HOME} ];
+then
+	export MXNET_HOME="$HOME/mxnet"
+fi
+export MXNET_HOME_OLD="$HOME/mxnet_${TARIKH}"
+export MXNET_LOG=${MXNET_HOME}/buildMXNet_mac.log
+
+# Insert the Homebrew directory at the top of your PATH environment variable
+export PATH="$PATH:/usr/local/bin:/usr/local/sbin" # for brew
+export PATH="$PATH:/usr/bin:/opt/local/bin"        # for macports
+
+export MACPORTS_WEB="https://guide.macports.org/chunked/installing.macports.html"
+
+export BREW_PKGS="pkg-config python   opencv graphviz homebrew/science/openblas"
+export PORT_PKGS="pkgconfig  python36 opencv graphviz openblas-devel"
+
+# graphviz, opencv-python skipped since already installed via brew/port
+export PIP_PKGS_ALL="cython numpy"
+export PIP_PKGS_USER="requests jupyter"
+
+export SLEEP_TIME=2
+LINE="########################################################################"
+
+print_intro_msg() {
+	#
+	# NOTE: Please test and ensure that the message does NOT scroll
+	#       beyond the standard 80x25 format of a terminal shell.
+	#
+	echo $LINE
+	echo " "
+	echo "MXNet is a flexible, efficient and scalable library for Deep Learning."
+	echo " "
+	echo "This script installs MXNet on MacOS in \${MXNET_HOME}"
+	echo "If not set, the default value of \${MXNET_HOME} = ~/mxnet"
+	echo "The current value of \${MXNET_HOME} = ${MXNET_HOME}"
+	echo " "
+	echo "If this directory is already present, it is renamed to retain earlier contents."
+	echo "You may want to check and delete this directory if not required."
+	echo " "
+	echo "This script has been tested on: MacOS El Capitan (10.11) and Sierra (10.12)"
+	echo " "
+	echo "If you face any problems with this script, please let us know at:"
+	echo "    https://stackoverflow.com/questions/tagged/mxnet"
+	echo " "
+	echo "Typical run-time for this script is around 10 minutes."
+	echo "If your environment has never been setup for development (e.g. gcc), "
+	echo "it could take up to 30 minutes or longer."
+	echo " "
+	MACOS_VERSION=`/usr/bin/uname -r`
+	echo "Your macOS version is: $MACOS_VERSION"
+	echo " "
+	echo $LINE
+	echo " "
+	sleep ${SLEEP_TIME}
+} # print_intro_msg()
+
+# wrapper routine to stop the script if the command invoked returns error
+chkret() {
+	cmd=$*
+	echo "$cmd"
+	$cmd
+	ret=$?
+	if [[ ${ret} != 0 ]]; then
+		echo " "
+		echo "ERROR: Return value non-zero for: $cmd"
+		echo " "
+		exit 1
+	fi
+} # chkret()
+
+chk_mac_vers() {
+	export mac_vers=`sw_vers -productVersion | cut -d '.' -f 1,2`
+	if [[ $mac_vers != "10.11" && $mac_vers != "10.12" ]];
+	then
+		echo " "
+		echo "ERROR: macOS version $mac_vers NOT supported."
+		echo " "
+		echo "Your macOS version is:"
+		sw_vers
+		echo " "
+		exit 1
+	fi
+} # chk_mac_vers()
+
+install_brew() {
+	echo " "
+	while true; do
+		echo "This script will install/update brew and "
+		echo "following dependent packages required for MXNet."
+		echo "      Dependent brew packages: ${BREW_PKGS}"
+		echo "      Dependent pip  packages: ${PIP_PKGS_ALL} ${PIP_PKGS_USER}"
+		read -p "Do you want to continue? (y/n): " response
+		echo " "
+		case $response in
+			[Yy]* ) break;;
+			[Nn]* ) exit;;
+			* ) echo "Please answer yes or no.";;
+		esac
+	done
+
+	echo " "
+	echo "BEGIN: Check/Install/Update Homebrew"
+	BREW_PATH=`which brew`
+	if [[ (-z ${BREW_PATH})  ||  (! -f ${BREW_PATH}) ]];
+	then
+		yes '' | /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
+		ret=$?
+		if [[ ${ret} != 0 ]]; then
+			echo " "
+			echo "ERROR: Return value non-zero for: homebrew installation using ruby"
+			echo " "
+			exit 1
+		fi
+	else
+		chkret brew update
+	fi
+	echo "END: Check/Install/Update Homebrew"
+	echo $LINE
+	echo " "
+
+	echo "BEGIN: Install dependent brew packages for MXNet: ${BREW_PKGS}"
+
+	chkret brew tap homebrew/science
+
+	# install each individually to see progress for each
+	for pkg in ${BREW_PKGS}
+	do
+		chkret brew_pkg_install ${pkg}
+	done
+
+	echo "END: Install dependent brew packages for MXNet: ${BREW_PKGS}"
+	echo $LINE
+	echo " "
+} # install_brew()
+
+brew_pkg_install () {
+	pkg=$1
+	brew ls --versions $pkg > /dev/null
+	ret=$?
+	if [[ ${ret} != 0 ]]; then
+		echo "brew install $pkg"
+		brew install $pkg
+	else
+		echo "$pkg already installed"
+	fi
+} # brew_pkg_install
+
+install_port () {
+	echo " "
+	while true; do
+		echo "This script will install/update port and "
+		echo "following dependent packages required for MXNet."
+		echo "      Dependent port packages: ${PORT_PKGS}"
+		echo "      Dependent pip  packages: ${PIP_PKGS_ALL} ${PIP_PKGS_USER}"
+		read -p "Do you want to continue? (y/n): " response
+		echo " "
+		case $response in
+			[Yy]* ) break;;
+			[Nn]* ) exit;;
+			* ) echo "Please answer yes or no.";;
+		esac
+	done
+
+	echo " "
+	echo "BEGIN: Check/Install/Update port"
+	MACPORTS_PATH=`which port`
+	if [[ (-z ${MACPORTS_PATH})  ||  (! -f ${MACPORTS_PATH}) ]];
+	then
+		echo " "
+		echo "ERROR: Please install port for your macOS version from:"
+		echo " "
+		echo $MACPORTS_WEB
+		echo " "
+		exit 1
+	else
+		echo "NOTE: Updating port if required"
+		export SLEEP_TIME=2
+		sudo port upgrade outdated
+		echo " "
+		echo "port version is:"
+		port version
+		echo " "
+	fi
+	echo "END: Check/Install/Update port"
+	echo $LINE
+	echo " "
+
+	echo "BEGIN: Install dependent port packages for MXNet: ${PORT_PKGS}"
+	echo " "
+	#sudo port install python36-readline
+	# install each individually to see progress for each
+	for pkg in ${PORT_PKGS}
+	do
+		chkret sudo port install ${pkg}
+	done
+	if [[ ! -f /opt/local/include/cblas.h ]];
+	then
+		sudo ln -s /opt/local/include/cblas_openblas.h /opt/local/include/cblas.h
+	fi
+	#if [[ ! -f /usr/local/opt/openblas/lib/libopenblas.a ]];
+	#then
+	#	sudo mkdir -p /usr/local/opt/openblas/lib
+	#	sudo ln -s /opt/local/lib/libopenblas.a /usr/local/opt/openblas/lib/libopenblas.a
+	#fi
+
+	echo " "
+	echo "END: Install dependent port packages for MXNet: ${PORT_PKGS}"
+	echo $LINE
+	echo " "
+} # install_port
+
+install_mac_pkg_manager() {
+	BREW_PATH=`which brew`
+	if [[ (-z ${BREW_PATH})  ||  (! -f ${BREW_PATH}) ]];
+	then
+		echo "NOTE: brew NOT installed"
+		export MAC_BREW=0
+	else
+		echo "NOTE: brew installed"
+		export MAC_BREW=1
+		export PKG_MGR="brew"
+	fi
+
+	MACPORTS_PATH=`which port`
+	if [[ (-z ${MACPORTS_PATH})  ||  (! -f ${MACPORTS_PATH}) ]];
+	then
+		echo "NOTE: port NOT installed"
+		export MAC_PORT=0
+	else
+		echo "NOTE: port installed"
+		export MAC_PORT=1
+		export PKG_MGR="port"
+	fi
+
+	if [[ $MAC_PORT -eq 1 && $MAC_BREW -eq 1 ]];
+	then
+		echo "NOTE: Both port and brew installed"
+		export MAC_PKG_ASK=1
+		export PKG_MGR=""
+	elif [[ $MAC_PORT -eq 0 && $MAC_BREW -eq 0 ]];
+	then
+		echo "NOTE: Neither port and brew installed"
+		export MAC_PKG_ASK=1
+		export PKG_MGR=""
+	else
+		export MAC_PKG_ASK=0
+
+		while true; do
+			echo "NOTE: Using the already installed package manager: $PKG_MGR"
+			read -p "Do you want to continue? (y/n): " response
+			echo " "
+			case $response in
+				[Yy]* ) break;;
+				[Nn]* ) exit;;
+				* ) echo "Please answer yes or no.";;
+			esac
+		done
+	fi
+
+	if [[ $MAC_PKG_ASK -eq 1 ]];
+	then
+		export MAC_BREW=0
+		export MAC_PORT=0
+		while true; do
+			echo " "
+			echo "NOTE: This script supports Homebrew OR Port package manager."
+			echo " "
+			read -p "Which package manager do you want to use? (b/p): " pkg_mgr
+			echo " "
+			case $pkg_mgr in
+				[Bb]* ) export MAC_BREW=1; break;;
+				[Pp]* ) export MAC_PORT=1; break;;
+				* ) echo "Please answer: b or p";;
+			esac
+		done
+	fi
+
+	if [[ $MAC_PORT -eq 1 ]];
+	then
+		install_port
+	else
+		install_brew
+	fi
+} # install_mac_pkg_manager
+
+install_dep_pip_for_mxnet() {
+	echo " "
+	echo "BEGIN: Install dependent pip packages for MXNet: "
+	echo "${PIP_PKGS_ALL} ${PIP_PKGS_USER}"
+	echo " "
+
+	# NOTE: sudo used here
+	chkret sudo easy_install pip
+	chkret sudo pip install --upgrade pip
+	for pkg in ${PIP_PKGS_ALL}
+	do
+		chkret sudo pip install ${pkg}
+	done
+	#chkret sudo pip install --upgrade numpy
+
+	# NOTE: no sudo used here
+	for pkg in ${PIP_PKGS_USER}
+	do
+		chkret pip install --user ${pkg}
+	done
+
+	echo "END: Install dependent pip packages for MXNet: ${PIP_PKGS_ALL} ${PIP_PKGS_USER}"
+	echo $LINE
+	echo " "
+} # install_dep_pip_for_mxnet()
+
+download_mxnet() {
+	echo " "
+	echo "BEGIN: Download MXNet"
+	if [ -d ${MXNET_HOME} ]; then
+		mv ${MXNET_HOME} ${MXNET_HOME_OLD}
+		echo " "
+		echo "Renamed directory ${MXNET_HOME} to ${MXNET_HOME_OLD}"
+		echo "You may want to check and delete this directory if not required."
+		echo " "
+		sleep ${SLEEP_TIME}
+	fi
+
+	echo " "
+	echo "MXNET GIT Path = ${MXNET_GITPATH}"
+	#echo "MXNET Tag = ${MXNET_TAG}"
+	#echo "You can set \$MXNET_TAG to the appropriate github repo tag"
+	#echo "If not set, the default value used is the latest release"
+	echo " "
+	sleep ${SLEEP_TIME}
+
+	chkret git clone ${MXNET_GITPATH} ${MXNET_HOME} --recursive
+	sleep ${SLEEP_TIME}
+	cd ${MXNET_HOME}
+	echo " "
+	#echo "Checkout tag = ${MXNET_TAG}"
+	#chkret git checkout ${MXNET_TAG}
+	#echo " "
+	sleep ${SLEEP_TIME}
+	echo "END: Download MXNet"
+	echo $LINE
+	echo " "
+} # download_mxnet
+
+compile_mxnet() {
+	# Compile MXNet: It assumes MXNet source is in ${MXNET_HOME}
+	echo "BEGIN: Compile MXNet"
+	cd ${MXNET_HOME}
+	chkret cp make/osx.mk ./config.mk.tmp
+
+	touch ./config.mk
+	# rm any old setting of USE_BLAS, if present in config file
+	egrep -v "^USE_BLAS" ./config.mk.tmp                   >> ./config.mk
+	# add the new setting of USE_BLAS to the config file
+	echo "USE_BLAS = openblas"                             >> ./config.mk
+
+	if [[ $MAC_PORT -eq 1 ]];
+	then
+		echo "ADD_CFLAGS  += -I/opt/local/lib"            >> ./config.mk
+		echo "ADD_LDFLAGS += -L/opt/local/lib"            >> ./config.mk
+		echo "ADD_LDFLAGS += -L/opt/local/lib/graphviz/"  >> ./config.mk
+	else
+		echo "ADD_CFLAGS  += -I/usr/local/opt/openblas/include" >> ./config.mk
+		echo "ADD_LDFLAGS += -L/usr/local/opt/openblas/lib"     >> ./config.mk
+		echo "ADD_LDFLAGS += -L/usr/local/lib/graphviz/"        >> ./config.mk
+	fi
+	echo " "
+
+	echo "NOTE: The following compile-time configurations will be used."
+	echo "      If you want to change any of them, edit the following file"
+	echo "      in another terminal window and then press enter to continue."
+	echo " "
+	echo "      ${MXNET_HOME}/config.mk"
+	echo " "
+	echo $LINE
+	# remove commented and blank lines
+	egrep -v "^#" ${MXNET_HOME}/config.mk   | egrep -v "^$"
+	echo $LINE
+	echo " "
+	read -p "Press enter to continue ..."
+	echo " "
+	echo "Running Make"
+	echo " "
+	chkret make -j$(sysctl -n hw.ncpu)
+	echo "END: Compile MXNet"
+	sleep ${SLEEP_TIME}
+	echo $LINE
+	echo " "
+} # compile_mxnet
+
+install_mxnet_python() {
+	echo " "
+	echo "BEGIN: Install MXNet package for Python"
+	chkret cd ${MXNET_HOME}/python
+	chkret sudo python setup.py install
+	echo "END: Install MXNet package for Python"
+	sleep ${SLEEP_TIME}
+	echo $LINE
+	echo " "
+} # install_mxnet_python
+
+
+test_mxnet_python() {
+	echo "BEGIN: Test MXNet"
+	rm -f mxnet_test.log
+	python  << END > mxnet_test.log
+import mxnet as mx
+a = mx.nd.ones((2, 3));
+print ((a*2).asnumpy());
+END
+	rm -f mxnet_test.expected
+	cat << END > mxnet_test.expected
+[[ 2.  2.  2.]
+ [ 2.  2.  2.]]
+END
+	diff mxnet_test.log mxnet_test.expected
+	if [[ $? = 0 ]]; then
+		echo " "
+		echo "SUCCESS: MXNet test passed"
+		echo "SUCCESS: MXNet is successfully installed and works fine!"
+		export MXNET_VERSION=`echo "import mxnet as mx; print(mx.__version__)" | python`
+		echo "SUCCESS: MXNet Version is: $MXNET_VERSION"
+		echo "END: Test MXNet"
+		echo ":-)"
+		echo " "
+		echo "FYI : You can fine-tune MXNet run-time behavior using environment variables described at:"
+		echo "      http://mxnet.io/how_to/env_var.html"
+		echo " "
+		echo "NEXT: Try the MNIST tutorial at: http://mxnet.io/tutorials/python/mnist.html"
+		echo "      Try other tutorials at   : http://mxnet.io/tutorials"
+		echo " "
+		echo $LINE
+		echo " "
+		rm -f mxnet_test.log mxnet_test.expected
+		exit 0
+	else
+		echo " "
+		echo "ERROR: Following files differ: mxnet_test.log mxnet_test.expected"
+		echo "ERROR: MXNet test failed"
+		echo "END: Test MXNet"
+		echo " "
+		echo ":-("
+		exit 1
+	fi
+} # test_mxnet_python()
+
+main() {
+	print_intro_msg
+	chk_mac_vers
+	#install_mac_pkg_manager
+	#install_dep_pip_for_mxnet
+	#download_mxnet
+	compile_mxnet
+	#install_mxnet_python
+	#test_mxnet_python
+} # main
+
+main
diff --git a/mxnet/mxnet.xcodeproj/project.pbxproj b/mxnet/mxnet.xcodeproj/project.pbxproj
new file mode 100644
index 0000000000..10c606beae
--- /dev/null
+++ b/mxnet/mxnet.xcodeproj/project.pbxproj
@@ -0,0 +1,67 @@
+// !$*UTF8*$!
+{
+	archiveVersion = 1;
+	classes = {
+	};
+	objectVersion = 48;
+	objects = {
+
+/* Begin PBXGroup section */
+		DED3A7381F9B2BD8006C3D8E = {
+			isa = PBXGroup;
+			children = (
+			);
+			sourceTree = "<group>";
+		};
+/* End PBXGroup section */
+
+/* Begin PBXProject section */
+		DED3A7391F9B2BD8006C3D8E /* Project object */ = {
+			isa = PBXProject;
+			attributes = {
+				LastUpgradeCheck = 0900;
+			};
+			buildConfigurationList = DED3A73C1F9B2BD8006C3D8E /* Build configuration list for PBXProject "mxnet" */;
+			compatibilityVersion = "Xcode 8.0";
+			developmentRegion = en;
+			hasScannedForEncodings = 0;
+			knownRegions = (
+				en,
+			);
+			mainGroup = DED3A7381F9B2BD8006C3D8E;
+			projectDirPath = "";
+			projectRoot = "";
+			targets = (
+			);
+		};
+/* End PBXProject section */
+
+/* Begin XCBuildConfiguration section */
+		DED3A73D1F9B2BD8006C3D8E /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+			};
+			name = Debug;
+		};
+		DED3A73E1F9B2BD8006C3D8E /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+			};
+			name = Release;
+		};
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+		DED3A73C1F9B2BD8006C3D8E /* Build configuration list for PBXProject "mxnet" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				DED3A73D1F9B2BD8006C3D8E /* Debug */,
+				DED3A73E1F9B2BD8006C3D8E /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+/* End XCConfigurationList section */
+	};
+	rootObject = DED3A7391F9B2BD8006C3D8E /* Project object */;
+}
diff --git a/mxnet/mxnet.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/mxnet/mxnet.xcodeproj/project.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 0000000000..e69a843561
--- /dev/null
+++ b/mxnet/mxnet.xcodeproj/project.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+   version = "1.0">
+   <FileRef
+      location = "self:mxnet.xcodeproj">
+   </FileRef>
+</Workspace>
diff --git a/mxnet/mxnet.xcodeproj/project.xcworkspace/xcuserdata/weixingzhang.xcuserdatad/UserInterfaceState.xcuserstate b/mxnet/mxnet.xcodeproj/project.xcworkspace/xcuserdata/weixingzhang.xcuserdatad/UserInterfaceState.xcuserstate
new file mode 100644
index 0000000000..c9c58f57c0
Binary files /dev/null and b/mxnet/mxnet.xcodeproj/project.xcworkspace/xcuserdata/weixingzhang.xcuserdatad/UserInterfaceState.xcuserstate differ


 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services