Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Monolithic layer includes trigger grossly unnecessary recompilation whenever a change is made to even a single layer definition. Dismantling the agglomerated
vision_layer.hpp
,common_layers.hpp
, and so forth makes the dependencies and build more modular. This should likewise reduce conflicts in layer development and PRs.Regarding dependencies, I do not promise that this PR is free of recursive includes. Occasionally a
make clean
might be needed (if this is in fact a problem at all; I need to review dependency generation...) but this is no different than the current arrangement.I admit there is essentially never a good time for this PR since it will impact any layers in progress but at some point the headers need breaking for mending.
To reconcile your own branches with this you should rebase and transplant changes to the monolithic headers to the relevant layer header (which you need to create for your own layers).
Now the only obstacle to decoupled layer development is the common caffe.proto.