Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Develop #213

Merged
merged 165 commits into from
Nov 3, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
165 commits
Select commit Hold shift + click to select a range
21827a7
Fix CMakeLists error for windows
MicheleCancilla Oct 12, 2020
83c5b23
Add a CMake section for OpenMP for Clang in Windows
MicheleCancilla Oct 12, 2020
c3017bb
Minor fix on deprecated/legacy function
salvacarrion Oct 13, 2020
9433c0d
Fix bug related to ONNX padding (pool)
salvacarrion Oct 13, 2020
2459c8f
Fix _profile overflow
salvacarrion Oct 13, 2020
fdaa28f
Fix get_fmem overflow on ConvolDescriptor
salvacarrion Oct 13, 2020
8278f68
Fix overflow on ConvolDescriptor
salvacarrion Oct 13, 2020
d7b3bdb
Add comment
salvacarrion Oct 13, 2020
3892c35
Fix delete
salvacarrion Oct 13, 2020
8a6351a
Add comment
salvacarrion Oct 13, 2020
2558c47
Add check path for ONNX import
salvacarrion Oct 13, 2020
3a45cb4
Add savepath checking (ONNX export)
salvacarrion Oct 13, 2020
005a956
Distr. fixes + docs
salvacarrion Oct 13, 2020
e009437
Add sameSize and sameDevice + Comments
salvacarrion Oct 14, 2020
afe897f
Improve reallocate tensor function
salvacarrion Oct 14, 2020
ca4d825
Improve documentation: Tensor/create
salvacarrion Oct 14, 2020
419d4c0
Replace sameShape() with sameSize() on Tensor::copy
salvacarrion Oct 14, 2020
588af34
Minor changes (docs)
salvacarrion Oct 14, 2020
0b9a95a
Remove warnings docs: normalization
salvacarrion Oct 14, 2020
7cc6343
Remove warnings docs: operators
salvacarrion Oct 14, 2020
f969a61
Remove threads dependency
salvacarrion Oct 14, 2020
ae99259
Add searchbox template
salvacarrion Oct 14, 2020
692fcab
Fix description rand_binary
salvacarrion Oct 14, 2020
57a05f8
Add image section to tensor (docs)
salvacarrion Oct 14, 2020
a1e76f2
Minor doc fixes (create)
salvacarrion Oct 14, 2020
bf9ca27
Re-write manipulation section (docs)
salvacarrion Oct 14, 2020
a1b3026
Delete empty sections (docs)
salvacarrion Oct 14, 2020
5086e70
solve docs warnings
silviasdfg Oct 15, 2020
0d3a275
Update gitignore sphinx/source/_static
salvacarrion Oct 15, 2020
f5fd5af
Add lena images
salvacarrion Oct 15, 2020
f73cdd7
Add tensor image section + examples
salvacarrion Oct 15, 2020
59a4feb
Merge remote-tracking branch 'origin/develop' into develop
salvacarrion Oct 15, 2020
8bd521c
Add abs tensor example (docs)
salvacarrion Oct 15, 2020
7fe6755
Update tests
salvacarrion Oct 15, 2020
2cc034b
cpu conv
RParedesPalacios Oct 15, 2020
61543db
Fix unit testing for Windows
MicheleCancilla Oct 12, 2020
98e1be4
Merge branch 'develop' of github.com:deephealthproject/eddl into develop
MicheleCancilla Oct 15, 2020
084a7e3
Fix image name
salvacarrion Oct 15, 2020
af5ad75
Merge branch 'develop' of github.com:deephealthproject/eddl into develop
MicheleCancilla Oct 15, 2020
06fd0d9
Fix docs reshape example
salvacarrion Oct 15, 2020
71e1dc2
Change example order
salvacarrion Oct 15, 2020
a766edf
Minor fix
salvacarrion Oct 15, 2020
898ca87
Merge pull request #207 from MicheleCancilla/develop
salvacarrion Oct 15, 2020
e3fecad
Silent net_delete_drive_seg_sum github
salvacarrion Oct 15, 2020
e5db6e6
Add benchmarks to docs
salvacarrion Oct 16, 2020
1995ea0
Re-write indexing section
salvacarrion Oct 16, 2020
0835887
Re-write input/output tensor section (docs)
salvacarrion Oct 16, 2020
549afc6
Minor changes for docs
salvacarrion Oct 16, 2020
8461d5a
Updated tensor documentation
sanromra Oct 16, 2020
9341521
Merge branch 'develop' of https://github.com/deephealthproject/eddl i…
sanromra Oct 16, 2020
3cdbefb
Re-write linear algebra section
salvacarrion Oct 16, 2020
63559d9
Merge remote-tracking branch 'origin/develop' into develop
salvacarrion Oct 16, 2020
6d8b6c6
Re-writing mathematical functions section of tensor (docs)
salvacarrion Oct 16, 2020
9876963
Minor changes in comments
salvacarrion Oct 16, 2020
3ffd21d
Minor change
salvacarrion Oct 16, 2020
6ba149a
Minor fixes
salvacarrion Oct 16, 2020
d681eea
Add load example to tensor (docs)
salvacarrion Oct 16, 2020
accc28f
modify docs examples
silviasdfg Oct 16, 2020
5e6be26
Remove previous examples (docs)
salvacarrion Oct 19, 2020
addc3cf
examples
RParedesPalacios Oct 19, 2020
ef2bc9c
examples
RParedesPalacios Oct 19, 2020
2712751
pretrained models
RParedesPalacios Oct 20, 2020
ebc677c
onnx file
RParedesPalacios Oct 20, 2020
717e36f
pretrained
RParedesPalacios Oct 20, 2020
efc918a
text generation example
RParedesPalacios Oct 20, 2020
76eacd8
Add apple fix for OpenMP
salvacarrion Oct 20, 2020
a1e8fb3
Add warning gcc>=9 for nvcc (cuda 10)
salvacarrion Oct 20, 2020
7e97b86
Merge remote-tracking branch 'origin/develop' into develop
salvacarrion Oct 20, 2020
1d7b1ae
Revert apple fix
salvacarrion Oct 20, 2020
8a8650a
added docs tensor examples
silviasdfg Oct 20, 2020
610c44d
Added tensor documentation
sanromra Oct 20, 2020
da23f71
Merge branch 'develop' of https://github.com/deephealthproject/eddl i…
sanromra Oct 20, 2020
39cc975
Signatures fixes for documentation
salvacarrion Oct 20, 2020
926931f
added tensor examples in docs
silviasdfg Oct 21, 2020
4e46dbd
remove duplicates in tensor docs
silviasdfg Oct 21, 2020
497fe7d
Added tensor documentation
sanromra Oct 21, 2020
61837bf
Added tensor documentation
sanromra Oct 21, 2020
6e2e3d9
Added tensor documentation
sanromra Oct 21, 2020
574c03e
Add reductions to tensor documentation
salvacarrion Oct 21, 2020
596a6e3
Add reductions to tensor documentation
salvacarrion Oct 21, 2020
c8c88bb
Fix documentation typos
salvacarrion Oct 21, 2020
7113737
Fix check for CUDA and GNU
salvacarrion Oct 21, 2020
2dfc604
decoder text
RParedesPalacios Oct 21, 2020
3344614
pretrained text generation
RParedesPalacios Oct 21, 2020
48df1d1
:Merge branch 'develop' of https://github.com/deephealthproject/eddl …
RParedesPalacios Oct 21, 2020
7e92b09
Ignore annoying onnx.pb.*
salvacarrion Oct 21, 2020
0091344
Add image wrappers to tensor documentation
salvacarrion Oct 21, 2020
c7f2355
Change wrapping modes for CPU/GPU
salvacarrion Oct 21, 2020
9254622
Add image wrappers for tensor
salvacarrion Oct 21, 2020
803f4d4
Update params in data augmentation layers (Scale and CropScale)
salvacarrion Oct 21, 2020
df78367
Image test
salvacarrion Oct 21, 2020
5e18b6e
Minor changes
salvacarrion Oct 21, 2020
8765ebc
Minor fix documentation
salvacarrion Oct 21, 2020
d9c264f
Add set_select function for floats
salvacarrion Oct 21, 2020
7ed17b9
Add set_select documentation
salvacarrion Oct 21, 2020
5e276a3
Minor changes
salvacarrion Oct 21, 2020
50cbb3e
Add FAQ for CUDA/GCC problem
salvacarrion Oct 21, 2020
e682237
evaluate batch size and recurrent
RParedesPalacios Oct 21, 2020
3598554
Merge branch 'develop' of https://github.com/deephealthproject/eddl i…
RParedesPalacios Oct 21, 2020
5ef5f2a
Improve troubleshoot for protobuf problems
salvacarrion Oct 21, 2020
6eb9c0d
Move troubleshoot from faq to troubleshoot
salvacarrion Oct 21, 2020
9e5e03e
Delete misc
salvacarrion Oct 21, 2020
2df733b
Silent error (temp)
salvacarrion Oct 21, 2020
9440000
Add redundant library: libprotobuf (less headaches...)
salvacarrion Oct 21, 2020
dc3792a
Merge remote-tracking branch 'origin/develop' into develop
salvacarrion Oct 21, 2020
ceeac7f
Docs + CUDA setup
salvacarrion Oct 21, 2020
60ad53e
check rnet gpu delete
RParedesPalacios Oct 22, 2020
b51ac21
Merge branch 'develop' of https://github.com/deephealthproject/eddl i…
RParedesPalacios Oct 22, 2020
90d40d5
check if unrolled is necessary
RParedesPalacios Oct 22, 2020
9704e9d
fit
RParedesPalacios Oct 22, 2020
672bed3
soft_cross_entropy loss value
RParedesPalacios Oct 22, 2020
ff01d12
Improve build options section (docs): cuda + compilers
salvacarrion Oct 22, 2020
151535d
Re-write FAQ sections in docs + refactor + add more questions
salvacarrion Oct 22, 2020
876dee1
Re-write troubleshoot section in docs + refactor + add more fixes
salvacarrion Oct 22, 2020
ffc7e3a
Improve protobuf troubleshoot
salvacarrion Oct 22, 2020
9d401e8
Add wrappers for data augmentation random functions
salvacarrion Oct 22, 2020
d56f72b
Update documentation for data augmentation random functions
salvacarrion Oct 22, 2020
b7355ce
Minor doxygenfunction fix
salvacarrion Oct 22, 2020
9b18f84
New Conv1D implementation and ONNX export support for it
chavicoski Oct 22, 2020
3833eea
mem available
RParedesPalacios Oct 22, 2020
38fae93
Merge branch 'develop' of https://github.com/deephealthproject/eddl i…
RParedesPalacios Oct 22, 2020
756615e
Add onnx import support for Conv1D
Seraphid Oct 23, 2020
4973bc6
Merge branch 'develop' of https://github.com/deephealthproject/eddl i…
Seraphid Oct 23, 2020
be7b99f
Added onnx export and import support for LSTM
chavicoski Oct 23, 2020
cbcc053
Add ToDo
salvacarrion Oct 23, 2020
1d7a3e5
Add wrappers for reshape, flatten, permute, moveaxis, swapaxis, squee…
salvacarrion Oct 23, 2020
3a33638
Merge branch 'develop' of https://github.com/deephealthproject/eddl i…
salvacarrion Oct 23, 2020
4700a05
Enforce name convention for tensor fill-like functions
salvacarrion Oct 23, 2020
0e2babb
Update docs rel. "Enforce name convention for tensor fill-like functi…
salvacarrion Oct 23, 2020
8c2aff0
Add tensor wrappers for fill_rand_uniform, fill_rand_signed_uniform, …
salvacarrion Oct 23, 2020
e21d58a
Fixed Dense weights transpose in ONNX import
chavicoski Oct 26, 2020
f84053c
Added tensor documentation
sanromra Oct 26, 2020
c3bcc14
Merge branch 'develop' of https://github.com/deephealthproject/eddl i…
sanromra Oct 26, 2020
3ef7b1a
Added tensor documentation
sanromra Oct 27, 2020
6796e88
Add guideline titles, examples and comments
salvacarrion Oct 27, 2020
1f738e8
Added Tensor documentation
sanromra Oct 28, 2020
40cf4f9
add docs examples
silviasdfg Oct 28, 2020
11b111c
modify layers examples
silviasdfg Oct 28, 2020
c6d278b
Added tensor documentation
sanromra Nov 2, 2020
ff676ba
Improved memory management in tensor tests
sanromra Nov 2, 2020
5dc0afc
Add full softmax (CPU)
salvacarrion Nov 2, 2020
fc95145
Add full softmax (CPU) - Test
salvacarrion Nov 2, 2020
448fce0
Fix bug + set stable=true as default
salvacarrion Nov 2, 2020
a3a0b31
Merge if/else
salvacarrion Nov 2, 2020
0144b89
Minor changes
salvacarrion Nov 2, 2020
8d9d90c
minor changes in docs
silviasdfg Nov 3, 2020
f5df50b
Softmax fixes
salvacarrion Nov 3, 2020
6d30bb7
Softmax GPU
salvacarrion Nov 3, 2020
427bb62
Add tests for Softmax GPU
salvacarrion Nov 3, 2020
80a9700
Softmax batch fix
salvacarrion Nov 3, 2020
b31aac0
Minor changes
salvacarrion Nov 3, 2020
fabdfa5
Add Softmax tests: CPU and GPU; Forward and Backward
salvacarrion Nov 3, 2020
5bf1247
Merge remote-tracking branch 'origin/develop' into develop
salvacarrion Nov 3, 2020
f3017fe
Add OpenMP to softmax
salvacarrion Nov 3, 2020
b51a1e3
Add axis parameter to squeeze / unsqueeze
salvacarrion Nov 3, 2020
e20fd2f
Add squeeze / unsqueeze tests
salvacarrion Nov 3, 2020
fb82789
Improve documentation for squeeze / unsqueeze
salvacarrion Nov 3, 2020
30df117
Add get / set parameters (Net)
salvacarrion Nov 3, 2020
217cad2
Add get / set parameters (API)
salvacarrion Nov 3, 2020
201d454
Debug stuff
salvacarrion Nov 3, 2020
431b9f3
api
RParedesPalacios Nov 3, 2020
7354085
Merge branch 'develop' of https://github.com/deephealthproject/eddl i…
RParedesPalacios Nov 3, 2020
8cc2b3b
Fix "delete cpu_ptr"
salvacarrion Nov 3, 2020
bd43d7b
minor delete bug
RParedesPalacios Nov 3, 2020
ae6c65f
ok
RParedesPalacios Nov 3, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/build-cpu-windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,13 @@ jobs:
run: |
mkdir build
cd build
cmake -DBUILD_SUPERBUILD=ON -DBUILD_SHARED_LIBS=OFF ..
cmake -G "Visual Studio 16 2019" -A x64 -T ClangCL -DBUILD_SUPERBUILD=ON -DBUILD_SHARED_LIBS=OFF -DBUILD_TARGET=CPU ..
shell: cmd
- name: Build
run: cmake --build build --config Release
shell: cmd
- name: Test
run: |
cd build
"bin/Release/unit_tests.exe"
cd build
"bin/Release/unit_tests.exe"
shell: cmd
5 changes: 2 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ temp/
docs/doxygen/*
!docs/doxygen/Doxyfile
docs/sphinx/source/_build
docs/sphinx/source/_static

# Other files
*.dot
Expand All @@ -32,8 +31,8 @@ old_build/example_*
old_build/test_*

# ONNX
#onnx.pb.h
#onnx.pb.cc
onnx.pb.h
onnx.pb.cc

# Files generated by CLion
cmake-build-*
Expand Down
2 changes: 1 addition & 1 deletion cmake/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@ else()

set(Protobuf_ROOT "${EP_BASE_DIR}/protobuf" PARENT_SCOPE)
set(Protobuf_INCLUDE_DIRS "${EP_BASE_DIR}/protobuf/include" PARENT_SCOPE)
set(Protobuf_LIBRARIES_DIRS "${EP_BASE_DIR}/protobuf/lib")
set(Protobuf_LIBRARIES_DIRS "${EP_BASE_DIR}/protobuf/lib") # TODO: Fix. Sometimes is /lib, and others /lib64
set(Protobuf_LIBRARIES_DIRS ${Protobuf_LIBRARIES_DIRS} PARENT_SCOPE)
# set(Protobuf_LIBRARIES "protobuf" PARENT_SCOPE)
set(Protobuf_PROTOC_EXECUTABLE "${EP_BASE_DIR}/protobuf/bin/protoc" PARENT_SCOPE)
Expand Down
17 changes: 17 additions & 0 deletions docs/markdown/development.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,23 @@ Drop the `formulas/brew/eddl.rb` file at `/usr/local/Homebrew/Library/Taps/homeb
Then you can also execute; `brew`


## Create conda env

```
# [YAML] Create environment
conda env create -f environment.yml

# [RAW] Create environment
conda create --name myenv

# Update environment
conda env update -f environment.yml

# Remove environment
conda remove --name eddl --all
```


## Build conda package

```
Expand Down
166 changes: 85 additions & 81 deletions docs/markdown/eddl_progress_documentation.md

Large diffs are not rendered by default.

16 changes: 12 additions & 4 deletions docs/markdown/eddl_progress_tensor.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,10 +58,7 @@ Numpy-like operations over a raw-tensor object
| ------------- | ---- | ---- | -------- |
| randu | ✔️ | ✔️ | Return a uniform random matrix with given shape. |
| randn | ✔️ | ✔️ | Return a normal random matrix with data from the "standard normal" distribution. |
| rand_uniform | ✔️ | ✔️ | |
| rand_signed_uniform | ✔️ | ✔️ | |
| rand_normal | ✔️ | ✔️ | |
| rand_binary | ✔️ | ✔️ | |



### Building matrices
Expand Down Expand Up @@ -99,6 +96,17 @@ Numpy-like operations over a raw-tensor object
| unsqueeze | ✔️ | ✔️ | Expand the shape of an array. `[3, 4, 7] => [1, 3, 4, 7]` |


### Value operations

| Functionality | CPU | GPU | Comments |
| ------------- | ---- | ---- | -------- |
| fill | ✔️ | ✔️ | Fills a tensor in-place, with a constant value |
| fill_rand_uniform | ✔️ | ✔️ | Fills a tensor in-place, with values randomly sampled from a uniform distribution |
| fill_rand_signed_uniform | ✔️ | ✔️ | Fills a tensor in-place, with values randomly sampled from a signed uniform distribution |
| fill_rand_normal | ✔️ | ✔️ | Fills a tensor in-place, with values randomly sampled from a normal distribution |
| fill_rand_binary | ✔️ | ✔️ | Fills a tensor in-place, with values randomly sampled from a binary distribution |


### Joining arrays

| Functionality | CPU | GPU | Comments |
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
14 changes: 14 additions & 0 deletions docs/sphinx/source/_templates/searchbox.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<!--<div>-->
<!-- <h3>{{ _('Quick search') }}</h3>-->
<!-- <script>-->
<!-- (function() {-->
<!-- var cx = 'aaa06ecc8743366d5';-->
<!-- var gcse = document.createElement('script');-->
<!-- gcse.async = true;-->
<!-- gcse.src = 'https://cse.google.com/cse.js?cx=' + cx;-->
<!-- var s = document.getElementsByTagName('script')[0];-->
<!-- s.parentNode.insertBefore(gcse, s);-->
<!-- })();-->
<!-- </script>-->
<!-- <gcse:search></gcse:search>-->
<!--</div>-->
10 changes: 8 additions & 2 deletions docs/sphinx/source/bundle/computing_service.rst
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,14 @@ Example:
GPU
====

.. doxygenfunction:: eddl::CS_GPU(const vector<int>, int, string)
.. doxygenfunction:: eddl::CS_GPU(const vector<int>, string)
.. doxygenfunction:: eddl::CS_GPU(const vector<int> g)

.. doxygenfunction:: eddl::CS_GPU(const vector<int> g, int lsb)

.. doxygenfunction:: eddl::CS_GPU(const vector<int> g, int lsb, string mem)

.. doxygenfunction:: eddl::CS_GPU(const vector<int> g, string mem)


Example:

Expand Down
12 changes: 0 additions & 12 deletions docs/sphinx/source/bundle/initializers.rst
Original file line number Diff line number Diff line change
Expand Up @@ -58,18 +58,6 @@ Example:

layer RandomUniform(layer l, float min=0.0,float max=0.1, float seed=1234);

HeUniform
-------------

.. doxygenfunction:: HeUniform

Example:

.. code-block:: c++
:linenos:

layer HeUniform(layer l,int seed=1234);


Constant
-------------
Expand Down
12 changes: 9 additions & 3 deletions docs/sphinx/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@
# -- Project information -----------------------------------------------------

project = 'EDDL'
copyright = '2020, eddl'
author = 'Pattern Recognition and Human Language Translation Research Center.'
copyright = '2020, EDDL'
author = 'Pattern Recognition and Human Language Technology research center'


# -- General configuration ---------------------------------------------------
Expand All @@ -31,6 +31,8 @@
extensions = [
'breathe',
'sphinx_tabs.tabs',
# 'sphinxprettysearchresults',
# 'sphinxcontrib.lunrsearch',

'sphinx.ext.autodoc',
'sphinx.ext.doctest',
Expand All @@ -45,7 +47,7 @@
breathe_default_project = "eddl"

# Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates']
# templates_path = ['_templates']

# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
Expand All @@ -68,3 +70,7 @@
html_static_path = ['_static']

pygments_style = 'sphinx'

# html_sidebars = {
# '**': ['searchbox.html'],
# }
11 changes: 1 addition & 10 deletions docs/sphinx/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -105,27 +105,18 @@ The code is open source, and `available on github`_.
datasets/segmentation.rst


.. toctree::
:maxdepth: 1
:caption: Miscellaneous

misc/misc.rst


.. toctree::
:maxdepth: 1
:caption: Tensor

tensor/create.rst
tensor/manipulation.rst
tensor/binary.rst
tensor/image.rst
tensor/indexing.rst
tensor/input_output.rst
tensor/linear_algebra.rst
tensor/logic_functions.rst
tensor/mask_ops.rst
tensor/math.rst
tensor/misc.rst


Indices and tables
Expand Down
43 changes: 32 additions & 11 deletions docs/sphinx/source/installation/build-options.rst
Original file line number Diff line number Diff line change
Expand Up @@ -22,27 +22,33 @@ environment by running the following commands **from the source directory**:
conda env create -f environment.yml
conda activate eddl

You can also update your environment with:

.. code:: bash

conda env update -f environment.yml

If you decide to manually install these dependencies in your system (make sure they are at standard paths):

.. code::

- cmake>=3.9.2
- eigen>=3.3.7
- zlib=1.2.*
- protobuf=3.11.*
- protobuf
- libprotobuf # We need to avoid problems with paths (idk why)
- zlib
- cudatoolkit
- gtest
- graphviz # Build & Run
- wget
- doxygen # Docs
- python
- pip

- pip:
- sphinx==3.0.3
- sphinx_rtd_theme==0.4.3
- sphinx-tabs==1.1.13
- breathe==4.16.0
- sphinx==3.2.1
- sphinx_rtd_theme==0.5.0
- sphinx-tabs==1.3.0
- breathe==4.22.1


.. note::
Expand Down Expand Up @@ -125,6 +131,10 @@ troubleshoot the compilation process (see: :doc:``troubleshoot``).

-DCMAKE_PREFIX_PATH=/path/to/dir

.. note::

If using conda, get the path by activating the environment, and typing ``echo $CONDA_PREFIX``


- **Installation paths:** To change the installation paths, use the following cmake option:

Expand All @@ -135,13 +145,14 @@ troubleshoot the compilation process (see: :doc:``troubleshoot``).
.. note::

Defaults to ``/usr/local`` on UNIX and ``c:/Program Files`` on Windows.
If using conda, get the path by activating the environment, and typing ``echo $CONDA_PREFIX``


- **C++ compiler:** If you have problems with the default g++ compiler, try setting ``EIGEN3_INCLUDE_DIR``, such as:

.. code:: bash

-DCMAKE_CXX_COMPILER=/path/to/c++compiler
-DCMAKE_CXX_COMPILER=/path/to/c++compiler # /usr/bin/g++-8

.. note::

Expand All @@ -152,25 +163,35 @@ troubleshoot the compilation process (see: :doc:``troubleshoot``).

.. code:: bash

-DCMAKE_CUDA_COMPILER=/path/to/cuda compiler
-DCMAKE_CUDA_COMPILER=/path/to/cuda compiler #/usr/bin/nvcc

.. note::

You can also create a symbolic link: (unix) ``sudo ln -s usr/local/cuda-{VERSION} /usr/local/cuda``


- **CUDA host compiler:** If cmake have problems finding your cuda host compiler, try setting ``CMAKE_CUDA_COMPILER``, such as:

.. code:: bash

-DCMAKE_CUDA_HOST_COMPILER=/path/to/cuda compiler # /usr/bin/g++-8

.. note::

You can also create a symbolic link: (unix) ``sudo ln -s usr/local/cuda-{VERSION} /usr/local/cuda``

- **CUDA Toolkit:** If CMake is unable to find CUDA automatically, try setting ``CUDA_TOOLKIT_ROOT_DIR``, such as:

.. code:: bash

-DCUDA_TOOLKIT_ROOT_DIR=/path/to/cuda
-DCUDA_TOOLKIT_ROOT_DIR=/path/to/cuda # /usr/local/cuda-11.1


- **Eigen3:** At the core of many numerical operations, we use Eigen3_. If CMake is unable to find Eigen3 automatically, try setting ``Eigen3_DIR``, such as:

.. code:: bash

-DEigen3_DIR=/path/to/eigen
-DEigen3_DIR=/path/to/eigen # /usr/lib/cmake/eigen3


- **Use OpenMP:** To enable/disabled OpenMP, use the setting ``BUILD_OPENMP``, such as:
Expand Down
43 changes: 24 additions & 19 deletions docs/sphinx/source/installation/faq.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,42 +2,47 @@ FAQ
===


Python library
---------------

Is there a Python version?
--------------------------
^^^^^^^^^^^^^^^^^^^^^^^^^^^

Yes, the PyEDDL_ is the EDDL version for the Python lovers


Can I contribute?
------------------
Is the PyEDDL develop by the same team
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Yes, but first open a new issue to explain and discuss your contribution.
Sort of. We all are part of the DeepHealth project, and although each team is specialized
in developing and supporting different libraries, we all contribute to the other projects so that all the DeepHealth
ecosystem can work smoothly.


Can I control the memory consumption?
-------------------------------------
Contributions
---------------

Yes, we offer several memory levels to control the memory-speed trade-off. These levels are:

Can I contribute?
^^^^^^^^^^^^^^^^^^

Yes, but first open a new issue to explain and discuss your contribution.

- ``full_mem`` (default): No memory bound (highest speed at the expense of the memory requirements)
- ``mid_mem``: Slight memory optimization (good trade-off memory-speed)
- ``low_mem``: Optimized for hardware with restricted memory capabilities.

Performance
---------------

Is it faster than PyTorch/TensorFlow/etc
----------------------------------------
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Depends... Generally, there are many nuances so that a high-performance can be achieved (see benchmark section) and many of
those nuances are strongly tied to the classical memory-speed trade-off. To sum up, matrix multiplications on the CPU
are a 300% faster than their TensorFlow counterpart. Convolution times on GPU (no cuDNN) are slightly faster than on the
EDDL than PyTorch (210ms vs. 246ms), and using cuDNN will get the cuDNN performance.
Check our benchmakrs: `EDDL benchmarks`_


Is it more memory-efficient than PyTorch/TensorFlow/etc
-------------------------------------------------------

Depends on your memory setting (see the "Can I control the memory consumption?" answer).
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Depends on your memory setting, see the "Can I control the memory consumption?" answer.
Also, you can take a look at our benchmakrs: `EDDL benchmarks`_

.. _PyEDDL: https://github.com/deephealthproject/pyeddl
.. _PyEDDL: https://github.com/deephealthproject/pyeddl
.. _`EDDL benchmarks`: https://github.com/jofuelo/eddl_benchmark
Loading