Skip to content

Commit 88d0b3e

Browse files
committed
Initial commit
0 parents  commit 88d0b3e

File tree

608 files changed

+132446
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

608 files changed

+132446
-0
lines changed

.Doxyfile

Lines changed: 2335 additions & 0 deletions
Large diffs are not rendered by default.

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
*.[oa]
2+
*~

CHANGELOG.md

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
## Apr 27, 2016
2+
3+
Features:
4+
5+
- Supported cuDNN v5
6+
- Use the cuDNN's BatchNormalization implementation as the default engine for BN layer
7+
- BN layer will now store running variance in its fourth blob.
8+
- the script `python/bn_convert_style.py` is added to help converting the bn style forth and back.
9+
10+
## Dec 23, 2015
11+
12+
Features:
13+
14+
- Implemented a planning algorithm to globally optimize the cudnn workspace consumption and speed trade-off.
15+
- Now `richness` parameter specifies the total memory in MBs available to cudnn for convolution workspaces.
16+
- Now the framework will try to find the best convolution algorithm combinations under memory limit.
17+
18+
## Dec 17, 2015
19+
20+
Features:
21+
22+
- cuDNN v4 support
23+
- 20% overall speed gain with faster convolution and batch normalization
24+
- the native batch normalization is changed to comply with cuDNN. Use the script `python/bn_var_to_inv_std.py` to upgrade your models.
25+
26+
## Nov 22, 2015
27+
28+
Features:
29+
- python layer can expose a prefetch() method, which will be run in parallel with network processing.
30+
31+
## Oct 13, 2015
32+
33+
Features:
34+
- Improved cuDNN wrapper to use less GPU memory.
35+
- Now there is a new parameter `richness` which controls the limit of workspace for cuDNN.
36+
37+
## Sep 30, 2015
38+
39+
Features:
40+
- Support for cuDNN v3.
41+
42+
## Sep. 7, 2015
43+
44+
Features:
45+
- New mechanism for parallel comminucation reduced parallel overhead.
46+
- Batch normalization, courtesy of @Cysu.
47+
48+
## Jul, 2015
49+
50+
Features:
51+
- Action recognition tools, scripts, and examples.
52+
- Basic parallel training support
53+
- Various extra data augmentations

CMakeLists.txt

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
cmake_minimum_required(VERSION 2.8.7)
2+
3+
# ---[ Caffe project
4+
project(Caffe C CXX)
5+
6+
# ---[ Using cmake scripts and modules
7+
list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake/Modules)
8+
9+
include(ExternalProject)
10+
11+
include(cmake/Utils.cmake)
12+
include(cmake/Targets.cmake)
13+
include(cmake/Misc.cmake)
14+
include(cmake/Summary.cmake)
15+
include(cmake/ConfigGen.cmake)
16+
17+
# ---[ Options
18+
caffe_option(CPU_ONLY "Build Caffe without CUDA support" OFF) # TODO: rename to USE_CUDA
19+
caffe_option(USE_CUDNN "Build Caffe with cuDNN libary support" ON IF NOT CPU_ONLY)
20+
caffe_option(BUILD_SHARED_LIBS "Build shared libraries" ON)
21+
caffe_option(BUILD_python "Build Python wrapper" ON)
22+
set(python_version "2" CACHE STRING "Specify which python version to use")
23+
caffe_option(BUILD_matlab "Build Matlab wrapper" OFF IF UNIX OR APPLE)
24+
caffe_option(BUILD_docs "Build documentation" ON IF UNIX OR APPLE)
25+
caffe_option(BUILD_python_layer "Build the Caffe python layer" ON)
26+
27+
caffe_option(USE_MPI "whether to include MPI parallelization" OFF) #Used to switch on and off MPI
28+
29+
# ---[ Dependencies
30+
include(cmake/Dependencies.cmake)
31+
32+
# ---[ Flags
33+
if(UNIX OR APPLE)
34+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -Wall")
35+
endif()
36+
37+
if(USE_libstdcpp)
38+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libstdc++")
39+
message("-- Warning: forcing libstdc++ (controlled by USE_libstdcpp option in cmake)")
40+
endif()
41+
42+
add_definitions(-DGTEST_USE_OWN_TR1_TUPLE)
43+
44+
# ---[ Warnings
45+
caffe_warnings_disable(CMAKE_CXX_FLAGS -Wno-sign-compare -Wno-uninitialized)
46+
47+
# ---[ Config generation
48+
configure_file(cmake/Templates/caffe_config.h.in "${PROJECT_BINARY_DIR}/caffe_config.h")
49+
50+
# ---[ Includes
51+
set(Caffe_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/include)
52+
include_directories(${Caffe_INCLUDE_DIR} ${PROJECT_BINARY_DIR})
53+
include_directories(BEFORE src) # This is needed for gtest.
54+
55+
# ---[ Subdirectories
56+
add_subdirectory(src/gtest)
57+
add_subdirectory(src/caffe)
58+
add_subdirectory(tools)
59+
add_subdirectory(examples)
60+
add_subdirectory(python)
61+
add_subdirectory(matlab)
62+
add_subdirectory(docs)
63+
64+
# ---[ Linter target
65+
add_custom_target(lint COMMAND ${CMAKE_COMMAND} -P ${PROJECT_SOURCE_DIR}/cmake/lint.cmake)
66+
67+
# ---[ Configuration summary
68+
caffe_print_configuration_summary()
69+
70+
# ---[ Export configs generation
71+
caffe_generate_export_configs()

CONTRIBUTORS.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Contributors
2+
3+
Caffe is developed by a core set of BVLC members and the open-source community.
4+
5+
We thank all of our [contributors](https://github.com/BVLC/caffe/graphs/contributors)!
6+
7+
**For the detailed history of contributions** of a given file, try
8+
9+
git blame file
10+
11+
to see line-by-line credits and
12+
13+
git log --follow file
14+
15+
to see the change log even across renames and rewrites.
16+
17+
Please refer to the [acknowledgements](http://caffe.berkeleyvision.org/#acknowledgements) on the Caffe site for further details.
18+
19+
**Copyright** is held by the original contributor according to the versioning history; see LICENSE.

INSTALL.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Installation
2+
3+
See http://caffe.berkeleyvision.org/installation.html for the latest
4+
installation instructions.
5+
6+
Check the issue tracker in case you need help:
7+
https://github.com/BVLC/caffe/issues

LICENSE

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
COPYRIGHT
2+
3+
All contributions by the University of California:
4+
Copyright (c) 2014, 2015, The Regents of the University of California (Regents)
5+
All rights reserved.
6+
7+
All other contributions:
8+
Copyright (c) 2014, 2015, the respective contributors
9+
All rights reserved.
10+
11+
Caffe uses a shared copyright model: each contributor holds copyright over
12+
their contributions to Caffe. The project versioning records all such
13+
contribution and copyright details. If a contributor wants to further mark
14+
their specific copyright on a particular contribution, they should indicate
15+
their copyright solely in the commit message of the change when it is
16+
committed.
17+
18+
LICENSE
19+
20+
Redistribution and use in source and binary forms, with or without
21+
modification, are permitted provided that the following conditions are met:
22+
23+
1. Redistributions of source code must retain the above copyright notice, this
24+
list of conditions and the following disclaimer.
25+
2. Redistributions in binary form must reproduce the above copyright notice,
26+
this list of conditions and the following disclaimer in the documentation
27+
and/or other materials provided with the distribution.
28+
29+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
30+
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
31+
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
32+
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
33+
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
34+
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
35+
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
36+
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
37+
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
38+
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
39+
40+
CONTRIBUTION AGREEMENT
41+
42+
By contributing to the BVLC/caffe repository through pull-request, comment,
43+
or otherwise, the contributor releases their content to the
44+
license and copyright terms herein.

0 commit comments

Comments
 (0)