Dismantle Layer Headers #3315

Merged
merged 1 commit into from Dec 2, 2015

Conversation

Projects
None yet
3 participants
Owner

shelhamer commented Nov 11, 2015

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.

Contributor

ducha-aiki commented Nov 11, 2015

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.

Even with this, it is greatly welcomed PR :)

Owner

shelhamer commented Nov 11, 2015

@ronghanghu can I ask for your help to check if this is compatible with matcaffe?

Member

ronghanghu commented Nov 11, 2015

@shelhamer Of course! I am checking.

Member

ronghanghu commented Nov 11, 2015

All matcaffe tests passed with this PR on a BVLC machine.

@shelhamer shelhamer dismantle layer headers
No more monolithic includes: split layers into their own headers for modular inclusion and build.
300f43f

@shelhamer shelhamer added a commit that referenced this pull request Dec 2, 2015

@shelhamer shelhamer Merge pull request #3315 from shelhamer/layer-headers
Dismantle Layer Headers
196b995

@shelhamer shelhamer merged commit 196b995 into BVLC:master Dec 2, 2015

1 check passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details

shelhamer deleted the shelhamer:layer-headers branch Dec 2, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment