facebookresearch / HVVR
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 6% duplication:
    • 9,194 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 591 duplicated lines
  • 96 duplicates
system6% (591 lines)
Duplication per Extension
cu11% (307 lines)
vcxproj51% (156 lines)
cpp2% (84 lines)
h<1% (32 lines)
props12% (12 lines)
Duplication per Component (primary)
libraries/hvvr/raycaster6% (402 lines)
libraries/hvvr/shared3% (64 lines)
libraries/hvvr/samples_shared6% (49 lines)
projects/hvvr_samples/modelviewer12% (38 lines)
projects/hvvr_samples/modelconvert50% (38 lines)
libraries/hvvr0% (0 lines)

Duplication Between Components (50+ lines)

G projects/hvvr_samples/modelconvert projects/hvvr_samples/modelconvert projects/hvvr_samples/modelviewer projects/hvvr_samples/modelviewer projects/hvvr_samples/modelconvert--projects/hvvr_samples/modelviewer 76 libraries/hvvr/samples_shared libraries/hvvr/samples_shared libraries/hvvr/shared libraries/hvvr/shared libraries/hvvr/samples_shared--libraries/hvvr/shared 64 libraries/hvvr/raycaster libraries/hvvr/raycaster libraries/hvvr/raycaster--libraries/hvvr/samples_shared 52 libraries/hvvr/raycaster--libraries/hvvr/shared 50

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 20 longest duplicates.
See data for all 96 duplicates...
Size#FoldersFilesLinesCode
18 x 2 projects/hvvr_samples/modelconvert
projects/hvvr_samples/modelviewer
vcxproj
modelconvert.vcxproj
modelviewer.vcxproj
50:71 (34%)
35:56 (41%)
view
17 x 2 libraries/hvvr/raycaster
libraries/hvvr/raycaster
cu
resolve.cu
resolve.cu
41:57 (3%)
163:179 (3%)
view
16 x 2 libraries/hvvr/shared
libraries/hvvr/shared
array_view.h
dynamic_array.h
45:67 (38%)
68:90 (28%)
view
14 x 2 libraries/hvvr/samples_shared
libraries/hvvr/shared
vcxproj
samples_shared.vcxproj
shared.vcxproj
35:51 (31%)
41:57 (28%)
view
14 x 2 libraries/hvvr/raycaster
libraries/hvvr/raycaster
cu
resolve.cu
resolve.cu
60:75 (2%)
181:196 (2%)
view
13 x 2 libraries/hvvr/raycaster
libraries/hvvr/raycaster
traverse_avx.cpp
traverse_ref_frustum.cpp
35:52 (10%)
28:44 (10%)
view
13 x 2 libraries/hvvr/raycaster
libraries/hvvr/raycaster
cu
intersect.cu
resolve.cu
364:376 (3%)
477:489 (2%)
view
13 x 2 libraries/hvvr/raycaster
projects/hvvr_samples/modelviewer
vcxproj
raycaster.vcxproj
modelviewer.vcxproj
1:17 (11%)
1:17 (30%)
view
13 x 2 libraries/hvvr/raycaster
libraries/hvvr/samples_shared
vcxproj
raycaster.vcxproj
samples_shared.vcxproj
1:17 (11%)
1:17 (29%)
view
13 x 2 libraries/hvvr/samples_shared
projects/hvvr_samples/modelviewer
vcxproj
samples_shared.vcxproj
modelviewer.vcxproj
1:17 (29%)
1:17 (30%)
view
12 x 2 libraries/hvvr/raycaster
projects/hvvr_samples/modelconvert
vcxproj
raycaster.vcxproj
modelconvert.vcxproj
1:14 (10%)
1:14 (23%)
view
12 x 2 libraries/hvvr/samples_shared
libraries/hvvr/shared
vcxproj
samples_shared.vcxproj
shared.vcxproj
2:17 (27%)
2:17 (24%)
view
12 x 2 projects/hvvr_samples/modelconvert
projects/hvvr_samples/modelviewer
vcxproj
modelconvert.vcxproj
modelviewer.vcxproj
1:14 (23%)
1:14 (27%)
view
12 x 2 libraries/hvvr/raycaster
libraries/hvvr/raycaster
cu
intersect.cu
resolve.cu
1:13 (3%)
1:13 (2%)
view
12 x 2 libraries/hvvr/raycaster
libraries/hvvr/raycaster
render.cpp
render.cpp
294:306 (3%)
313:325 (3%)
view
12 x 2 libraries/hvvr/samples_shared
projects/hvvr_samples/modelconvert
vcxproj
samples_shared.vcxproj
modelconvert.vcxproj
1:14 (27%)
1:14 (23%)
view
12 x 2 libraries/hvvr/shared
projects/hvvr_samples/modelviewer
vcxproj
shared.vcxproj
modelviewer.vcxproj
2:17 (24%)
2:17 (27%)
view
12 x 2 libraries/hvvr/raycaster
libraries/hvvr/raycaster
cu
gpu_scene_state.cu
gpu_scene_state.cu
148:161 (2%)
253:266 (2%)
view
12 x 2 libraries/hvvr/raycaster
libraries/hvvr/shared
vcxproj
raycaster.vcxproj
shared.vcxproj
2:17 (10%)
2:17 (24%)
view
11 x 2 libraries/hvvr/shared
projects/hvvr_samples/modelconvert
vcxproj
shared.vcxproj
modelconvert.vcxproj
2:14 (22%)
2:14 (21%)
view
Duplicated Units
The list of top 1 duplicated units.
See data for all 1 unit duplicate
Size#FoldersFilesLinesCode
6 x 2 libraries/hvvr/shared
libraries/hvvr/shared
vector_math.h
vector_math.h
128:134 
276:282 
view