| commit | fc0be229b6b296ccf7e08b515f49f439f8eddee9 | [log] [tgz] |
|---|---|---|
| author | Aapo Kyrola <akyrola@fb.com> | Wed Feb 15 01:28:20 2017 -0800 |
| committer | Facebook Github Bot <facebook-github-bot@users.noreply.github.com> | Wed Feb 15 16:00:44 2017 -0800 |
| tree | a6c349767a48586dfc5b40e68441a28fed2b3ba0 | |
| parent | a8d70f3552110b907c2a8e221ac5d34708938b94 [diff] |
add mutex locks for pinnedcpuallocator to avoid nccl-deadlocks Summary: D4438796 (https://github.com/caffe2/caffe2/pull/95) introduced locks to avoid concurrent cudaFrees and NCCLs. Unfortunately, the locks were not put into PinnedCPUAlllocator, causing deadlocks in certain cases (like using Hive reader). Reviewed By: Yangqing Differential Revision: D4563752 fbshipit-source-id: 0f95051621282e742f03feb76ebc30662285fb8e
Caffe2 is a deep learning framework made with expression, speed, and modularity in mind. It is an experimental refactoring of Caffe, and allows a more flexible way to organize computation.
Caffe2 is released under the BSD 2-Clause license.
git clone --recursive https://github.com/caffe2/caffe2.git cd caffe2
brew install automake protobuf mkdir build && cd build cmake .. make
sudo apt-get install libprotobuf-dev protobuf-compiler libatlas-base-dev libgoogle-glog-dev libgtest-dev liblmdb-dev libleveldb-dev libsnappy-dev python-dev python-pip libiomp-dev libopencv-dev libpthread-stubs0-dev cmake
sudo pip install numpy
wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_8.0.44-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu1404_8.0.44-1_amd64.deb
sudo apt-get update
sudo apt-get install cuda
sudo apt-get install git
CUDNN_URL="http://developer.download.nvidia.com/compute/redist/cudnn/v5.1/cudnn-8.0-linux-x64-v5.1.tgz" &&
curl -fsSL ${CUDNN_URL} -O &&
sudo tar -xzf cudnn-8.0-linux-x64-v5.1.tgz -C /usr/local &&
rm cudnn-8.0-linux-x64-v5.1.tgz &&
sudo ldconfig
mkdir build && cd build
cmake ..
make
We use CMake's Android and iOS ports to build native binaries that you can then integrate into your Android or XCode projects. See scripts/build_android.sh and scripts/build_ios.sh for more details.
For Android, one can also use gradle to build Caffe2 directly with Android Studio. An example project can be found here. Note that you may need to configure Android Studio so that it has the right SDK and NDK versions to build the code.
For Raspbian, run scripts/build_raspbian.sh on the Raspberry Pi.
To install Caffe2 on NVidia's Tegra X1 platform, simply install the latest system with the NVidia JetPack installer, and then run scripts/build_tegra_x1.sh on the Tegra device.
To run the tutorials you'll need ipython-notebooks and matplotlib, which can be installed on OS X with:
brew install matplotlib --with-python3 pip install ipython notebook
Ubuntu 14.04 (GCC)
OS X (Clang)
Options (both Clang and GCC)
BLAS
Other